firewalld、firewalld-cmd、systemctl、iptables 对比
- CentOS7采用新的firewalld,CentOS6及以前版本采用iptables,不过firewalld底层仍然调用的是iptables
- systemctl是CentOS7的服务管理工具中主要的工具
- firewalld-cmd是firewalld的命令行工具
firewalld
systemctl start firewalld //启动
systemctl status firewalld //查看状态
systemctl disable firewalld //停止
systemctl stop firewalld //禁用
firewalld-cmd
firewall-cmd --version //查看版本
firewall-cmd --state //显示状态
firewall-cmd --reload //更新防火墙规则
firewall-cmd --zone=public --list-ports //查看所有打开的端口
firewall-cmd --panic-on //拒绝所有包
firewall-cmd --panic-off //取消拒绝状态
firewall-cmd --query-panic //查看是否拒绝
防火墙端口启用禁用(–permanent永久生效,没有此参数重启后失效,记得更新防火墙规则)
firewall-cmd --zone=public --add-port=80/tcp --permanent //启用80端口
firewall-cmd --zone=public --query-port=80/tcp //查看80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent //删除80端口
//开放8056端口
firewall-cmd --add-port=8056/tcp
//二转发端口
firewall-cmd --permanent --zone=public --add-forward-port=port=8056:proto=tcp:toaddr=xxx.xx.xx.xxx:toport=3356
//重新启动服务,让规则生效
systemctl start firewalld.service //方法一,重新启动
firewall-cmd --reload //方法二,重新加载
//列出所有开放端口,包括转发规则
firewall-cmd --list-all
//列出所有类型public 的端口
firewall-cmd --zone=public --list-ports
//临时删除端口
firewall-cmd --remove-port=8056/tcp
//永久删除卡对外开放的端口
firewall-cmd --zone=public --remove-port=8005/tcp --permanent
//删除转发规则
firewall-cmd --permanent --zone=public --remove-forward-port=port=8056:proto=tcp:toaddr=xxx.xx.xx.xxx:toport=3356
systemctl
systemctl start firewalld.service //启动防火墙服务
systemctl stop firewalld.service //关闭服务
systemctl restart firewalld.service //重启服务
systemctl status firewalld.service //显示服务的状态
systemctl enable firewalld.service //在开机时启用服务
systemctl disable firewalld.service //在开机时禁用服务
systemctl is-enabled firewalld.service //查看服务是否开机启动
systemctl list-unit-files|grep enabled //查看已启动的服务列表
systemctl --failed //查看启动失败的服务列表
iptables
iptables -F //清空所有的防火墙规则
iptables -X //删除用户自定义的空链
iptables -Z //清空计数
iptables -V //V大写,查看版本信息
service iptables stop //关闭服务
service iptables start //开启服务
service iptables restart //重启服务
service iptables status //查看iptables规则,也可用iptables --list
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT //配置允许ssh端口连接,22为端口,-s指定允许的网段
iptables -A INPUT -p tcp --dport 80 -j ACCEPT //开启80端口
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT //允许被ping
-s 指定源地址
-d 指定目标地址
-p 指定协议
-i 指定数据报文流入接口
-o 指定数据报文流出接口
打开App,阅读手记