Centos7 防火墻策略rich-rule 限制ip訪問-----圖文詳解
1.查看下防火墻的狀態:systemctl status firewalld systemctl stop firewalld 關閉 systemctl disable firewalld 開機不啟永久關閉 2.查看已開放的端口firewall-cmd --zone=public --list-ports firewall-cmd --permanent --zone=public --add-port=8484/tcp3.重啟防火墻 firewall-cmd --reload
需求:正常情況是服務開啟3306端口,但是現在是 只想讓某個ip訪問3306,也就是3306只給固定的IP開放,然后別的ip就訪問不到。
這是在public中作策略,單獨放開某個ip某個訪問某個端口。
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.11.8" port protocol="tcp" port="3306" accept"
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.11.8" port protocol="tcp" port="3306" accept"
firewall-cmd --permanent --add-rich-rule="rule family=ipv4 source address=192.168.200.113 reject"
firewall-cmd --reload
firewall-cmd --list-all --zone=public
這就是允許某個ip訪問指定的端口。如果要放下端口還是原來的firewall-cmd --permanent --zone=public --add-port=8484/tcp 這個命令。
簡單介紹一下,Firewalld 一般已經默認內置了 9 個區域(zone),每個區域有不同的規則,加入你是服務器,ok你只需配一個區域,如果是公司和家,你就可以在公司是一個區域,在家是一個區域設置不同的策略。
1.查看當前所有區域的規則 firewall-cmd --list-all-zones
2.查看當前默認區域 firewall-cmd --get-default-zone
firewall-cmd --get-default-zone
3.查看單個區域public的規則 firewall-cmd --list-all --zone=public
firewall-cmd --list-all --zone=public
4.切換區域
查看當前活躍的區域
[root@kylin network-scripts]# firewall-cmd --get-active-zonepublic interfaces: ens33
切換網卡接口到默認區域
firewall-cmd --permanent --change-interface=ens33 --zone=drop 或firewall-cmd --permanent --add-interface=ens33 --zone=dropfirewall-cmd --reload #修改后需要重啟
查看 firewall-cmd --get-active-zone
說完策略這下就要往策略里面添加規則了。
Firewalld 中的基本概念 區域(zone)
區域(zone)基本上是一組規則,它們決定了允許哪些流量,具體取決于你對計算機所連接的網絡的信任程度。為網絡接口分配了一個區域,以指示防火墻應允許的行為。
Firewalld 一般已經默認內置了 9 個區域(zone),大部分情況下,這些已經足夠使用,按從最不信任到最受信任的順序為:
drop:最低信任級別。所有傳入的連接都將被丟棄而不會回復,并且只能進行傳出連接。
block:與上述類似,但不是簡單地刪除連接,而是使用 icmp-host-prohibitedor 和 icmp6-adm-prohibited 消息拒絕傳入的請求。
public:表示不信任的公共網絡。您不信任其他計算機,但可能會視情況允許選擇的傳入連接。默認情況下,此區域為激活狀態。
external:如果你使用防火墻作為網關,則為外部網絡。將其配置為 NAT 轉發,以便你的內部網絡保持私有但可訪問。
internal:external 區域的另一側,用于網關的內部。這些計算機值得信賴,并且可以使用一些其他服務。
dmz:用于 DMZ (DeMilitarized Zone) 中的計算機(將無法訪問網絡其余部分的隔離計算機),僅允許某些傳入連接。
work:用于工作機。信任網絡中的大多數計算機。可能還允許其他一些服務。
home:家庭環境。通常,這意味著您信任其他大多數計算機,并且將接受其他一些服務。
trusted:信任網絡中的所有計算機。可用選項中最開放的,應謹慎使用。
嚴格:默認區域設置為drop區域,允許的放入trusted區域
通過將當前默認區域pubilc切換到drop區,拒絕所有,然后在trusted區域中在添加白名單
寬松:默認區域設置為trusted區域,拒絕的單獨放入drop區域
1.切換為drop區域
firewall-cmd --set-default-zone=dropfirewall-cmd --get-active-zonefirewall-cmd --permanent --change-interface=ens33 --zone=drop
查看
2. 將允許的IP或者IP段加入trusted白名單
firewall-cmd --permanent --add-source=192.168.1.11 --zone=trusted #添加ipfirewall-cmd --reload #重啟firewall-cmd --list-all --zone=trusted 查看
[root@ky]# firewall-cmd --permanent --add-source=192.168.1.11 --zone=trustedsuccess[root@bogon ~]# firewall-cmd --reloadsuccess[root@ky]# firewall-cmd --list-all --zone trustedtrusted (active) target: ACCEPT icmp-block-inversion: no interfaces: sources: 192.168.1.11 services: ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
這里面也可以添加放行的端口
firewall-cmd --permanent --zone=trusted--add-port=80/tcp ##添加80端口到白名單 執行
firewall-cmd --reload ##重啟防火墻
firewall-cmd --zone=trusted --list-ports ##查看已開放的端口
ok,這就完成了。
來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。
Copyright?2013-2024 JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利
蘇公網安備32010402000125
蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司
南京思必達教育科技有限公司版權所有 百度統計