服务信息和管理
目前主要使用systemd系统和服务管理器进行管理,主要通过systemctl
命令来运行,关闭,重启,显示,启用或禁用系统服务。
linux的服务启动项一般作为可执行程序保存在/usr/lib/systemd/system目录下,通过 ls | grep
的方式可以查看指定服务
systemctl start/stop/restart/reload/status network.service
命令分别表示启动,停止,重启,重新加载配置(不中断),查看状态systemctl list-units --type service
命令查看当前正在运行的服务systemctl list-units --type service --all
命令查看所有服务,但可能有些没有启动的服务不会显示systemctl list-unit-files
命令可以查出来所有的服务,我怀疑是查看的/usr/lib/systemd/system目录,因为显示出来的一摸一样。
网络信息和管理
安装net-tools和nmap-ncat软件包之后,就可以对系统的网络信息进行查看和管理了
- 通过
netstat-tunlp
命令可以查看所有的tcp和udp连接 - 通过
vim /etc/services
文件可以看到一系列用户程序可能用到的服务,包括服务名,端口号,协议,别名等信息。
防火墙信息和管理
很多服务都需要开启防火墙才能正常使用
防火墙有firewalld和iptables
iptables
iptables是linux下的包过滤防火墙,处理与规则匹配的数据包,配置防火墙主要就是配置这些规则。
一个包进入网卡时先进入PREROUTING链,然后是本机的INPUT。
本机上发出数据包会经过OUTPUT链,然后到POSTROUTING链输出。
iptables --list
命令查看规则链iptables --flush
清空规则链iptables -A INPUT -p tcp --dport 80 -j ACCEPT
命令表示追加INPUT,协议tcp,目的端口80,匹配时ACCEPT数据包。
firewalld
更加方便一点的防护墙通过firewall-cmd管理端口。
systemctl status/stop/start/restart firewalld
等命令可以打开,关闭,或查看防火墙状态等信息。firewall-cmd --zone=public --list-ports
命令查看打开的端口firewall-cmd --zone=public --add-port 8090/udp
命令开启8090udp的端口firewall-cmd --add-service=samba
命令开启samba服务firewall-cmd --list-all
命令查看防火墙信息
其实firewalld和iptables是关联的,当通过firewalld修改端口后,在iptables的规则链中可以看到,