systemctl 是管制服务的主要工具, 它整合了chkconfig 与 service功能于一体。
systemctl is-enabled iptables.service
systemctl is-enabled servicename.service #查询服务是否开机启动
systemctl enable *.service #开机运行服务
systemctl disable *.service #取消开机运行
systemctl start *.service #启动服务
systemctl stop *.service #停止服务
systemctl restart *.service #重启服务
systemctl reload *.service #重新加载服务配置文件
systemctl status *.service #查询服务运行状态
systemctl --failed #显示启动失败的服务
注:*代表某个服务的名字,如http的服务名为httpd
- 常见使用场景
启动服务
systemctl start firewalld
开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
添加一个服务
firewall-cmd --add-service=http //http换成想要开放的service
这样添加的service当前立刻生效,但系统下次启动就失效,可以测试使用。要永久开发一个service,加上 --permanent
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --remove-service=ssh
检查新的防火墙规则
firewall-cmd --list-all
firewall-cmd --zone=public --list-ports
firewall-cmd --permanent --list-all
firewall-cmd --zone=public --list-service
添加完规则后,需要重新加载配置
firewall-cmd --reload
将接口添加到区域,默认接口都在public
firewall-cmd --zone=public --add-interface=eth0
永久生效再加上 --permanent 然后reload防火墙