CentOS7 firewalld防火牆規則


在CentOS7里有幾種防火牆共存:firewalld、iptables、ebtables,默認是使用firewalld來管理netfilter子系統,不過底層調用的命令仍然是iptables等。

firewalld跟iptables比起來至少有兩大好處:

1、firewalld可以動態修改單條規則,而不需要像iptables那樣,在修改了規則后必須得全部刷新才可以生效;
2、firewalld在使用上要比iptables人性化很多,即使不明白“五張表五條鏈”而且對TCP/IP協議也不理解也可以實現大部分功能。

firewalld跟iptables比起來,不好的地方是每個服務都需要去設置才能放行,因為默認是拒絕。而iptables里默認是每個服務是允許,需要拒絕的才去限制。

1.firewalld對指定IP開放指定端口的配置

1.打開firewalld防火牆

systemctl start firewalld.service

2.添加防火牆規則(對指定ip開放指定端口)

(1) memcached 端口設置。允許主機21.20.3.33訪問11211端口

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="21.20.3.33" port protocol="tcp" port="11211" accept"

(2) redis端口設置。允許主機21.20.3.33訪問6379端口

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="21.20.3.33" port protocol="tcp" port="6379" accept"

3.添加防火牆策略

在firewalld服務中配置一條富規則,使其拒絕192.168.10.0/24網段的所有用戶訪問本機的ssh服務(22端口):

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
//顯示
success

firewall-cmd --reload
//顯示
success

4.更新防火牆規則

firewall-cmd --reload

5.查看配置結果,驗證配置

firewall-cmd --list-all

6.刪除規則

firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="21.20.3.33" port protocol="tcp" port="3306" accept"

firewall-cmd --list-all

 常用查看信息命令:

查看版本:$ firewall-cmd --version
查看幫助:$ firewall-cmd --help

查看設置:
顯示狀態:$ firewall-cmd --state
查看區域信息: $ firewall-cmd --get-active-zones
查看指定接口所屬區域:$ firewall-cmd --get-zone-of-interface=eth0
拒絕所有包:# firewall-cmd --panic-on
取消拒絕狀態:# firewall-cmd --panic-off
查看是否拒絕:$ firewall-cmd --query-panic

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM