渗透入门Day7

注:本文参考了day08-Linux自有服务&软件包管理_爪蛙毁一生的博客-优快云博客,文章可能会有重复部分

今日学习任务

1.了解systemctl命令用途
2.掌握使用systemctl开启,关闭,重启服务
3.了解常见自有服务ntpd,firewalld,crond的作用
4.掌握ntpdate时间同步原理与实现
5.掌握防火墙的相关操作(添加和删除简单规则,开启,关闭防火墙)
6.了解源码包和二进制包的区别
7.掌握rpm包的卸载、安装以及更新操作
8.了解计划任务的作用
9.掌握计划任务的编辑

一、自由服务概述

服务就是一些特定的进程,自由服务是系统开机后就自动运行的一些进程。

二、systemctl管理服务命令

首先,在CentOS7之前Linux通过service和chkconfig来进行管理服务。

service:用于管理系统服务,如启动、停止、重启、查看状态等

chkconfig:用于管理系统服务的自启动设置。

在CentOS7后我们用systemctl来管理服务,且兼具service和chkconfig的功能。

1.列出服务

用法1: systemctl list-units --type service --all

列出所有服务(包含启动和没启动的)

 

用法2:systemctl list-units --type service

列出所有启动的程序

 2.查看启动停止重启重载服务

用法4:systemctl stop sshd 停止运行服务

用法5:systemctl start sshd 启动服务

用法6:systemctl restart sshd 重启服务

用法7:重新加载服务配置文件 重载 systemctl reload sshd

3、服务持久化

用法8:systemctl disable sshd 取消服务的开机自启

 

用法9:systemctl enable sshd 指定服务开机

参数含义

list-units --type service --all

列出所有服务
list-units --type service列出所有已启动服务
status查看服务运行状态
stop停止运行服务
start启动服务
restart重启服务
reload重载
disable取消服务的开机自启
enable指定服务开机自启

 三、常见的自由服务

ntpd 用于同步计算机系统时间

firewalld 防火墙

crond 计划任务

1.ntp时间同步

NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。

服务器列表 - 全球可用的NTP服务器列表与解析服务 - ntp.org.cn & ntpdate.net

时间同步操作

手动同步操作:

ntpdate + ip

例如:ntpdate 120.25.115.20

从服务器 120.25.115.20 同步标准网络时间 到我们的计算机 服务器由阿里云提供 建立在我们的计算机能访问互联网的前提

自动同步操作

启动ntpd服务并配置为开机自启,启动后服务会帮助我们自动同步网络事件

systemctl start ntpd

systemctl enable ntpd

ntpd服务配置文件位置 /etc/ntp.conf

2、firewalld防火墙

防火墙:防范一些网络攻击。有软件防火墙、硬件防火墙之分。防火墙让正常请求通过,从而保证网络安全性

防火墙的概念

在CentOS6中防火墙叫做iptables

在CentOS7中默认使用的防火墙是firewalld

firewalld 增加了区域的概念,预先准备了几套策略 类似于策略模板 用户根据需求去选择区域

常见的区域以及相应的策略规则

区域默认策略
trusted允许所有数据包
home拒绝流入的流量,除非与流出的流量相关,允许ssh,mdns,ippclient,amba-client,dhcpv6-client服务通过
internal等同于home
work拒绝流入的流量,除非与流出的流量相关,允许ssh,ipp-client,dhcpv6-client服务通过
public拒绝流入的流量,除非与流出的流量相关,允许ssh,dhcpv6-client服务通过
external拒绝流入的流量,除非与流出的流量相关,允许ssh服务通过
dmz拒绝流入的流量,除非与流出的流量相关,允许ssh服务通过
block拒绝流入的流量,除非与流出的流量相关,非法流量采取拒绝操作
drop拒绝流入的流量,除非与流出的流量相关,非法流量采取丢弃操作

运行模式和永久模式 

运行模式:配置的策略立即生效,但是不写入配置文件(在关机前都有效)

永久模式:配置的策略写入配置文件,但是需要重载才能生效

firewall的默认采用运行模式

管理防火墙

firewall-cmd

作用:管理firewall的具体配置

①查看默认使用的区域

firewall-cmd --get-default-zone

②查看所有可用区域

firewall-cmd --get-zones

③列出当前使用区域配置

firewall-cmd --list-all

④列出所有区域的配置

firewall-cmd --list-all-zones

⑤添加允许通过的服务或端口

firewall-cmd --zone=public --add-port=1024/tcp

firewall-cmd --zone=public --add-service=ftp

⑥去掉允许通过的服务或端口

firewall-cmd --zone=public --remove-port=1024/tcp

firewall-cmd --zone=public --remove-service=ftp

⑦永久模式参数permanent

firewall-cmd --permanent --zone=public --add-port=1024/tcp

⑧重新加载配置reload

firewall-cmd --reload

四、计划任务

作用:可以定时的在某个时间让系统帮我们去完成某件事

查看计划任务

crontab [选项]

-l:list,列出指定用户的计划任务列表

-e:edit,编辑指定用户的计划任务列表,简单来说,计划任务就是一个文件

-u:user,指定的用户名,如果不指定,则表示当前用户

-r:remove,删除指定用户的计划任务列表

编辑计划任务

crontab -e

打开计划任务编辑文件,我们可以在文件中定义我们的计划任务

计划任务的规则语法格式,以行为单位,一行则为一个计划:

分 时 日 月 周 需要执行的命令

* * * * * command
- - - - -
| | | | |
| | | | ----- Day of the week (0 - 7) (Sunday is both 0 and 7)
| | | ------- Month (1 - 12)
| | --------- Day of the month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

在 crontab 中,共有4个字段来定义计划任务的时间和日期,其中前四个字段是由空格分隔的时间字段,每个时间字段都有一个特定的符号来表示时间的不同方面。这四个符号的含义如下:

  1. *(星号):匹配该时间字段的所有可能值,例如在分钟字段中使用 * 表示每分钟都执行。

  2. ,(逗号):用于分隔不连续的时间值,例如 2,4,6 表示 2、4 和 6。

  3. -(短横线):用于指定连续的时间范围,例如 1-5 表示从 1 到 5。

  4. /(正斜杠):用于指定时间的间隔值,例如在小时字段中使用 */2 表示每隔两小时执行一次。

特别补充:在Linux系统中,有些命令不能直接在计划任务中使用,使用后,其也不会生效。如useradd命令。如果想让其生效必须使用完整路径。

如何查看命令完整路径 : whereis

特殊字符含义
@reboot在每次启动时运行一次
@yearly每年运行一次,例如:“0 0 1 1 *”
@annually与@yearly用法一致
@monthly每月运行一次,例如:“0 0 1 * *”
@weekly每周运行一次,例如:“0 0 * * 0”
@daily每天运行一次,例如:“0 0 * * *”
@midnight与@daily用法一致
@hourly每小时运行一次,例如:“0 * * * *”

crontab权限问题

黑名单配置文件 vim /etc/cron.deny

 

 

白名单还有一个配置文件

/etc/cron.allow (本身不存在,自己创建)

注意:白名单优先级高于黑名单,如果一个用户同时存在两个名单文件中,则会被默认允许创建计划任务。

查看计划任务的保存路径

/var/spool/cron/用户名文件

计划任务的日志信息

/var/log/cron

五、软件包

1.源码包

一大堆源代码程序,由程序员按照特定的格式语法编写,机器只能识别二进制语言,所以使用源码包安装需要进行编译

2.二进制包

二进制包,是由源码包编译之后产生的,Linux下默认的安装包,目前主要有一下2大主流的二进制包管理系统:

  • RPM 包管理系统:功能强大,安装、升级、査询和卸载非常简单方便,因此很多 Linux 发行版都默认使用此机制作为软件安装的管理方式,例如 Fedora、CentOS、SuSE 等。
  • DPKG 包管理系统:由 Debian Linux 所开发的包管理机制,通过 DPKG 包,Debian Linux 就可以进行软件包管理,主要应用在 Debian 和 Ubuntu 中。

​ RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写

在光盘中获取软件包

1.在虚拟机加载光盘

2.使用lsblk

 

 查询某个软件安装情况

rpm-qa | grep 软件名称

-q:查询,query

-a:全部,all

 

代表firefox已经安装

没有任何回显表示没有安装

卸载软件

rpm -e 软件完整名称

rpm -qa |grep firefox 首先查询firefox软件的完整名称
firefox-45.7.0-2.el6.centos.x86_64

rpm -e firefox-45.7.0-2.el6.centos.x86_64#卸载

安装软件

rpm -ivh

-i install安装

-v 显示进度条

-h 表示以#形式显示进度条

cd /run/media/root/CentOS\ 7\ x86_64/Packages/ 进入到目录中

ll |grep firefox

rpm -ivh firefox-52.7.0-1.el7.centos.x86_64.rpm

更新软件

rpm -Uvh

-U upgrade 升级

rpm -Uvh firefox-102.13.0-2.el9_2.alma.x86_64.rpm

rpm依赖

一个软件包必须先有其他软件才能运行,这个关系称之为依赖。

WAMP(Windows + Apache + MySQL + PHP)安装前必须先安装VC++ 2014 x86_64,这种情况就称之为有依赖关系。

查看文件所属的包名

-f 查询文件所属包

rpm -qf /etc/ntp.conf 查询ntp.conf属于哪个软件包

查询软件安装完成后,生成了哪些文件

rpm -ql

 

软件安装后一般会生成:

配置文件:/etc

程序文件本身,二进制文件命令:/usr/sbin

文档手册 /usr/share/man

光盘的挂载与解挂

解挂:

umount 路径

umount /run/media/root/CentOS\ 7\ x86_64/

挂载:

mount

moubt 设备文件原始地址(/dev目录) 要挂载的位置路径(盘符)

mount /dev/sr0 /mnt/dvd

将光驱设备/dev/sr0 挂载到 /mnt/dvd这个挂载点

df -T可以看到已经成功挂载

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值