4-09 1,973 views
查看版本
$ firewall-cmd --version
0.4.3.3
help
$ firewall-cmd --help
状态
$ firewall-cmd --state
running
重载配置
$ firewall-cmd --reload
重新加载防火墙规则并保留状态信息。当前的永久配置将成为新的运行时配置,即,如果所有运行时仅更改也未进行永久配置,则直到重新加载后所有更改才完成。
完全重启
$ firewall-cmd --complete-reload
完全重新加载防火墙,甚至是netfilter内核模块。这很可能会终止活动连接,因为状态信息会丢失。仅在严重的防火墙问题时才应使用此选项。例如,如果存在状态信息问题,则使用正确的防火墙规则无法建立连接。
--permanent
永久选项--permanent可用于永久设置选项。仅当服务重新启动/重新加载或系统重新启动后,这些更改才立即生效。如果没有该--permanent选项,则更改将仅是运行时配置的一部分。
如果要在运行时和永久配置中进行更改,请使用带有和不带有该--permanent选项的相同调用。
--permanent可以选择 将该选项添加到受支持的所有选项中。
查看默认区域的设置
$ firewall-cmd --list-all
服务
$ firewall-cmd --add-service=<service name> #添加服务
$ firewall-cmd --remove-service=<service name> #移除服务
端口
$ firewall-cmd --add-port=<port>/<protocol> #添加端口/协议(TCP/UDP)
$ firewall-cmd --remove-port=<port>/<protocol> #移除端口/协议(TCP/UDP)
$ firewall-cmd --list-ports #查看开放的端口
#开放80端口服务,要重启配置才会生效
firewall-cmd --permanent --zone=public --add-port=80/tcp
允许指定ip的所有流量
$ firewall-cmd --add-rich-rule="rule family="ipv4" source address="<ip>" accept"
#example
$ firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.2.1" accept" # 表示允许来自192.168.2.1的所有流量
允许指定ip访问指定服务
$ firewall-cmd --add-rich-rule="rule family="ipv4" source address="<ip>" service name="<service name>" accept"
#example
$ firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.2.208" service name="ssh" accept" # 允许192.168.2.208主机访问ssh服务
允许指定ip访问指定端口
$ firewall-cmd --add-rich-rule="rule family="ipv4" source address="<ip>" port protocol="<port protocol>" port="<port>" accept"
#example
firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.2.1" port protocol="tcp" port="22" accept" # 允许192.168.2.1主机访问22端口
将指定ip改为网段
$ firewall-cmd --zone=drop --add-rich-rule="rule family="ipv4" source address="192.168.2.0/24" port protocol="tcp" port="22" accept"
禁止指定ip/网段
$ firewall-cmd --zone=drop --add-rich-rule="rule family="ipv4" source address="199.188.207.75" port protocol="tcp" port="80" reject"
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="199.188.207.75" drop'
firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="199.188.207.75" accept'
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="199.188.207.75" accept"
删除端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent
#开启删除88端口
firewall-cmd --zone=public --remove-port=88/tcp --permanent