防火墙
firewalld 存放配置文件有两个目录 /usr/lib/firewalld 和 /etc/firewalld 前者存放了一些默认的文件,后者主要是存放用户自定义的数据,所以我们添加的service或者rule都在后者下面进行。
- server 文件夹存储服务数据,就是一组定义好的规则。
- zones 存储区域规则
- firewalld.conf 默认配置文件,可以设置默认使用的区域,默认区域为 public,对应 zones 目录下的 public.xml
大部分命令都支持 source address 设置为网段,即这个网段的ip都是适配这个规则,表示允许192.168.2.0/24网段的主机访问22端口 。
firewall-cmd --zone=drop --add-rich-rule='rule family="ipv4" source address="192.168.2.0/24" port protocol="tcp" port="22" accept'
将 accept 设置为 reject 表示拒绝,设置为 drop表示直接丢弃(会返回timeout连接超时),表示拒绝192.168.2.0/24网段的主机访问22端口 。
firewall-cmd --zone=drop --add-rich-rule='rule family="ipv4" source address="192.168.2.0/24" port protocol="tcp" port="22" reject'
如果不添加 --permanent 参数,防火墙规则将在重载后失效,如果添加了该参数,会在防火墙下一次重载后永久生效
基础命令部分
重载防火墙配置
firewall-cmd --reload
查看防火墙运行状态
firewall-cmd --state
查看默认区域的设置
firewall-cmd --list-all
应急命令
firewall-cmd --panic-on # 拒绝所有流量,远程连接会立即断开,只有本地能登陆
firewall-cmd --panic-off # 取消应急模式,但需要重启firewalld后才可以远程ssh
firewall-cmd --query-panic # 查看是否为应急模式
服务
firewall-cmd --add-service=<service name> #添加服务
firewall-cmd --remove-service=<service name> #移除服务
服务中添加端口
firewall-cmd --permanent --service=nfs --add-port=662/tcp
firewall-cmd --permanent --service=nfs --add-port=662/udp
打开端口
firewall-cmd --add-port=<port>/<protocol> --permanent #添加端口/协议(TCP/UDP)
firewall-cmd --remove-port=<port>/<protocol> --permanent #移除端口/协议(TCP/UDP)
firewall-cmd --list-ports --permanent #查看开放的端口
协议
firewall-cmd --add-protocol=<protocol> # 允许协议 (例:icmp,即允许ping)
firewall-cmd --remove-protocol=<protocol> # 取消协议
firewall-cmd --list-protocols # 查看允许的协议
命令实例
允许指定ip的所有流量
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.1" accept' --permanent
允许指定ip的指定协议
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.1" protocol value="ICMP" accept' --permanent
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.1" protocol value="tcp" accept' --permanent
允许指定ip访问指定服务
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.1" service name="nfs" accept' --permanent
允许指定ip访问指定端口
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="123" accept' --permanent
标签:运维,--,cmd,防火墙,rule,firewall,add,permanent,快速
From: https://www.cnblogs.com/F0rbbIden/p/17759613.html