firewalld火墻服務
一.firewalld簡介
動態防火墻後臺程序提供了一個動態管理的防火墻,用以支持網絡“zone”,以分配對一個網絡及其相關鏈接和界面一定程度上的信任。它具備對IPV4和 IPV6防火墻設置的支持。它支持以太網橋,並有分離運行時間和永久性配置選擇。它還具備一個通向服務或者應用程序以直接增加防火墻規則的接口。
系統提供了圖像化的配置工具firewall-config、system-config-firewall,提供命令行客戶端firewall- cmd,用於配置firewalld永久性運行時間的改變:它依次用iptables工具與執行數據包篩選的內核中的Netfilter通信。
firewalld和iptables service之間最本質的不同是:
1)iptables service在/etc/sysconfig/iptables中存儲配置,而firewalld將配置存儲在/usr/lib/firewalld/和 /etc/firewalld/ 中的各種XML文件裏。
2)使用iptables service每一個單獨更改意味著清楚所有舊的規則和從 /etc/sysconfig/iptables 裏讀取所有新的規則,然而使用firewalld卻不會創建任何新的規則;僅僅運行規則中的不同之處。此,firewalld可以在運行時間內,改變設置而不丟失現行連接。
二.配置參數
1.firewalld的網絡“zone”
firewall-cmd --get-zones 查看可用區域
firewall-cmd --state 查看firewalld的狀態
firewall-cmd --get-default-zone 查看當前默認活動的區域
firewall-cmd --get-default-zone=trusted 修改默認區域為trusted,可以接受任何連接
2.firewall-cmd --get-default-zone=trusted 修改默認區域為trusted,可以接受任何連接
3.firewall-cmd --list-all 查看防火墻策略
firewall-cmd --add-service=http 防火墻添加通過http服務
firewall-cmd --reload 重新加載
4.使用配置文件添加防火墻通過服務
編輯/etcfirewalld/zones/public.xml
5.設置防火墻通過8080端口
測試前修改http默認訪問端口,無法瀏覽
添加8080端口後可以訪問
6.允許172.25.254.224主機訪問任何連接,將172.25.254.224添加到trusted域中
7.刪除添加的服務
三.Direct Rules
通過firewall-cmd工具,可以使用 --direct選項在運行時間裏增加或者移除鏈。如果不熟悉iptables,使用直接接口非常危險,因為泥坑無意間導致防火墻被入侵。直接端口模式,適用於服務或者程序,以便在運行時間內增加特定的防火墻規則。直接端口模式添加的規則優先應用。
1.firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 ! -s 172.25.254.224 -p tcp --dport 22 -j ACCEPT
除了224主機22端口不能訪問,其他主機22端口都可訪問
測試224主機,顯示無法訪問,別的主機可以
2.firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.224 -p tcp --dport 80 -j REJECT
除了224主機80端口不能訪問,其他主機80端口都可訪問
3.刪除第二條策略
四.不同網卡接口的訪問設置
1.eth0和eth1都屬於public域
2.將eth1網口從public域調整到trusted域中
3.與eth0連接的網段無法訪問服務,因為有public域的限制
4.與eth1連接的網段可以訪問服務,因為eth1在trusted域
五.Rich Rules
通過“rich language”語法,可以用比直接接口方式更易理解的方法建立復雜防火墻規則。此外,還能永久保留設置。這種語言使用關鍵詞值,是iptables工具的抽象表示,這種語言可以用來配置分區,也仍然支持現行的配置方式。
環境配置
服務端兩塊網卡 eth0 172.25.254.124
eth1 172.25.0.124
客戶端IP 172.25.0.224
真機 172.25.254.24
服務端firewall-cmd --add-masqueeade 開啟地址偽裝
1.端口轉換 真機到客戶端
將從172.25.254.24的22端口 偽裝為172.25.0.224的22端口
測試,從真機進入到服務端128,顯示的網卡為172.25.0.224
2.地址偽裝 客戶機到真機
將從客戶傳過來的數據偽裝為172.25.254.124端口的源數據
ifconfig查看
六.允許非系統端口的服務通過防火墻(httpd服務修改端口為例)
1.防火墻通過http
2.修改http的端口為6666
3.添加系統http默認端口
由於修改後無法重啟服務
原因是系統默認允許的http端口沒有6666
添加6666端口到http的默認端口列表中
重啟服務成功
4.訪問http6666端口成功
本文出自 “13122425” 博客,請務必保留此出處http://13132425.blog.51cto.com/13122425/1958170
firewalld火墻服務