1. 程式人生 > >firewalld火墻服務

firewalld火墻服務

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火墻服務