<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

請問Centos7如何配置firewalld防火墻規則?

馬哥Linux運維 ? 來源:文江博客 ? 2023-10-09 09:33 ? 次閱讀

一、簡單介紹

Firewalld是CentOS系統自帶的一種動態防火墻管理工具。是一個前端工具,用于管理Linux系統上的netfilter防火墻規則。Firewalld提供了一種簡化和易于使用的方法來配置和管理防火墻。

二、特點和功能:

2.1、區域(Zone):

Firewalld使用區域來定義不同的網絡環境,如公共網絡、內部網絡和信任網絡等。每個區域都有自己的防火墻規則集合,可以根據網絡環境的不同選擇適當的區域。預定義的區域包括公共(public)、私有(private)、可信(trusted)、工作(work)和家庭(home)。

2.2、運行時和永久配置:

Firewalld支持運行時和永久配置。運行時配置的更改在重新啟動后會被重置,而永久配置則會持久保存并在系統重新啟動后生效。

2.3、服務和端口

Firewalld可以通過定義服務和端口來管理訪問控制。服務是一組預定義的規則,用于允許或拒絕特定的網絡服務。端口規則允許或拒絕特定的端口號。

2.4、動態更新:

Firewalld支持動態更新防火墻規則,這意味著您可以在運行時添加、刪除或修改規則,而無需重新加載整個防火墻配置。

2.5、連接跟蹤:

Firewalld使用連接跟蹤來跟蹤網絡連接狀態。它可以自動識別和允許與現有連接相關的回復流量。

2.6、D-Bus接口

Firewalld提供了一個D-Bus接口,允許其他應用程序通過API與其交互,從而實現更高級的防火墻配置和管理。

總體而言,Firewalld提供了一種靈活而強大的方式來管理CentOS系統上的防火墻。它使管理員能夠輕松配置和調整防火墻規則,以保護系統免受未經授權的訪問和網絡攻擊。

三、如何設置規則

例子:使用Firewalld設置防火墻規則,以限制對nginx服務器8088端口的訪問,只允許IP為192.168.2.100的運維服務器訪問,同時對其他端口不做任何限制。

3.1、首先,確認防火墻服務已經啟動并正在運行,如果服務未啟動,請啟動服務;

#檢查防火墻狀態

systemctl status firewalld

#啟動防火墻服務

systemctl start firewalld

#檢查是否設置開機啟動

systemctl is-enabled firewalld

#設置開機啟動

systemctl enable firewalld

6a6a6e4e-6069-11ee-939d-92fbcf53809c.png

3.2、新建防火墻規則的服務,添加端口的TCP訪問規則;

#創建一個名為 "nginxserver" 的新服務,并設置其描述為 "nginx Service"。

firewall-cmd --permanent --new-service=nginxserver --set-description="nginx Service"

6a7bc2c0-6069-11ee-939d-92fbcf53809c.png

#將端口8088/tcp 添加到 "nginxserver" 服務的防火墻規則中。這將允許通過8088端口進行TCP通信。

firewall-cmd --permanent --service=nginxserver --add-port=8088/tcp

6a8d2f56-6069-11ee-939d-92fbcf53809c.png

#重新加載防火墻配置,以使新的服務和規則生效。

firewall-cmd --reload

6aa30222-6069-11ee-939d-92fbcf53809c.png

#查詢所有已定義的服務

firewall-cmd --get-services

6ab458b0-6069-11ee-939d-92fbcf53809c.png

#查詢特定服務的具體信息

firewall-cmd --info-service=nginxserver

6acdc7d2-6069-11ee-939d-92fbcf53809c.png

#刪除特定服務的規則

firewall-cmd --permanent --delete-service=nginx-http

firewall-cmd --reload

6ad9db12-6069-11ee-939d-92fbcf53809c.png

3.3、新建一個防火墻區域,將IP地址添加到區域的源地址列表中,將服務添加到區域的服務列表中;

#創建一個名為 "opsserver" 的新區域,并設置其描述為 "Ops Server Zone"。這將在防火墻中創建一個新的區域。

firewall-cmd --permanent --new-zone=opsserver --set-description="Ops Server Zone"

6ae5cdfa-6069-11ee-939d-92fbcf53809c.png

#將IP地址 192.168.2.100 添加到 "opsserver" 區域的源列表中。這意味著只有來自該IP地址的流量才能通過該區域。

firewall-cmd --permanent --zone=opsserver --add-source=192.168.2.100

6ae98436-6069-11ee-939d-92fbcf53809c.png

#將"nginxserver" 服務添加到 "opsserver" 區域的源列表中

firewall-cmd --permanent --zone=opsserver --add-service=nginxserver

6ae98436-6069-11ee-939d-92fbcf53809c.png

#重新加載firewalld配置,以使新的服務和規則生效。

firewall-cmd --reload

6b218e12-6069-11ee-939d-92fbcf53809c.png

#查詢已定義的區域

firewall-cmd --get-zones

6b218e12-6069-11ee-939d-92fbcf53809c.png

#查詢特定區域的具體信息

firewall-cmd --zone=opsserver --list-all

6b53ab86-6069-11ee-939d-92fbcf53809c.png

#刪除特定區域的規則

firewall-cmd --permanent --delete-zone=

firewall-cmd --reload

#刪除特定區域中的規則內容

firewall-cmd --zone=<區域名稱> --remove-<規則類型>=<規則內容>

其中,將 <區域名稱> 替換為要刪除規則的區域名稱,<規則類型> 替換為要刪除的規則類型(例如rich-rule、service、port等),<規則內容> 替換為要刪除的規則內容。

注意:

①確保你有足夠的權限執行上述命令,否則可能需要使用 sudo

②以上命令中使用了 `--permanent` 選項,以確保規則在系統重啟后仍然有效。如果您想要在不重啟系統的情況下立即應用規則,請省略 `--permanent` 選項。

3.4、現在,只有來自 IP 地址為 192.168.2.100 的運維服務器的流量可以訪問端口 8088,其他所有流量都將被阻止。對于其他端口,沒有任何限制。

①當IP為192.168.2.100時,nginx訪問正常,可以ping通,并且端口訪問正常;

6b622db4-6069-11ee-939d-92fbcf53809c.png

6b6c6392-6069-11ee-939d-92fbcf53809c.png

6b7d55e4-6069-11ee-939d-92fbcf53809c.png

②當IP為192.168.2.13時,無法ping通nginx服務器,并且端口無法訪問,但是其他端口不受限制,可以正常訪問;

6b810bee-6069-11ee-939d-92fbcf53809c.png

6b99d764-6069-11ee-939d-92fbcf53809c.png

6bace016-6069-11ee-939d-92fbcf53809c.png

3.5、如果要設置僅可通過192.168.2.100訪問nginx服務器的8088端口,而其他所有端口和IP都禁止訪問,那么可以將默認的 Firewalld 區域設置為 "drop",在 "drop" 區域中,所有入站和出站的網絡連接都將被丟棄,而不會給任何響應。

#將默認的防火墻區域設置為 "drop",即丟棄所有連接。

firewall-cmd --set-default-zone=drop

firewall-cmd --reload

6bc7313c-6069-11ee-939d-92fbcf53809c.png

如何需要限制其他端口和IP訪問,只需要替換上面例子中的IP地址和端口號為你實際使用的值即可。

四、簡單的規則設置

在上面的方法中,我們通過新建規則中的服務和區域實現對特定服務的訪問控制,并根據網絡環境的安全性要求來限制不同區域的訪問權限。

當然,如果不需要復雜的控制也可直接在public區域中添加要限制的端口和IP地址就可以了。

4.1、檢查默認的區域,如果默認的Zone不是Public,則需切換到Public Zone;

#查詢默認的區域

firewall-cmd --get-default-zone

#將默認區域設置為public

firewall-cmd --set-default-zone=public

4.2、添加限制端口及IP的規則

#添加允許訪問端口8088的規則,只允許IP為192.168.2.100的訪問

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.2.100" port protocol="tcp" port="8088" accept'

#重新加載防火墻配置:

firewall-cmd --reload

4.3、驗證規則是否生效:

firewall-cmd --list-all

通過以上步驟同樣可以實現限制對端口8088的訪問,只允許IP為192.168.2.100的運維服務器訪問,并不對其他端口做任何限制。

五、查詢防火墻配置

#查看當前生效的防火墻規則

firewall-cmd --list-all

這將顯示當前活動區域的所有規則,包括允許的端口、源地址等信息。

#查看特定區域的規則

firewall-cmd --zone=--list-all

將``替換為你要查看規則的區域名稱,例如`public`、`restricted`等。

#查看特定端口的規則

firewall-cmd --zone=--list-ports

將``替換為你要查看規則的區域名稱。這將顯示指定區域中允許的端口列表。

#查看特定服務的規則

firewall-cmd --zone=--list-services

將``替換為你要查看規則的區域名稱。這將顯示指定區域中允許的服務列表。

通過以上命令將顯示與防火墻規則相關的信息,包括允許的端口、源地址、服務等。另外,也可以直接查看配置文件,Firewalld的配置目錄為/etc/firewalld/。

六、最后要說的

因為是邊學邊寫的這篇文章,所以內容很簡陋僅有一個例子,但也希望通過這一遍文章能夠讓你對firewalld防火墻配置有一點點了解,如果要熟練的掌握還需要深入的學習和不斷的練習,文章中如有錯誤請您留言指出,感謝感謝。







審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CMD命令
    +關注

    關注

    0

    文章

    28

    瀏覽量

    8193
  • CentOS
    +關注

    關注

    0

    文章

    75

    瀏覽量

    13635
  • TCP通信
    +關注

    關注

    0

    文章

    145

    瀏覽量

    4150

原文標題:Centos7如何配置firewalld防火墻規則

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux系統iptables和firewall防火墻配置方法

    防火墻就是根據系統管理員設定的規則來控制數據包的進出,主要是保護內網的安全,目前 Linux 系統的防火墻類型主要有兩種:分別是 [iptables] 和 firewalld
    發表于 07-17 10:34 ?730次閱讀
    Linux系統iptables和firewall<b class='flag-5'>防火墻</b>的<b class='flag-5'>配置</b>方法

    Linux系統firewalld防火墻實戰指南

    本文浩道跟大家分享Linux系統firewalld防火墻硬核干貨,通過對其介紹、相關概念回顧,數據包處理流程、其安裝過程、其常用命令用法、其添加規則相關用法去開展,讓大家在****Linux系統中的安全防范再添一塊技能磚!
    發表于 10-16 16:47 ?445次閱讀
    Linux系統<b class='flag-5'>firewalld</b><b class='flag-5'>防火墻</b>實戰指南

    Linux防火墻配置方法(firewalld服務)

    紅帽RHEL7系統已經用firewalld服務替代了iptables服務,新的防火墻管理命令firewall-cmd與圖形化工具firewall-config。執行firewall-config命令
    發表于 10-30 12:27

    發現 STM32 防火墻的安全配置

    里提供了幾個不同的防火墻配置。那么問題來了,什么是STM32防火墻的應該使用的安全配置呢?本文以STM32參考手冊為基礎,以最大化安全為目標,來探索發現STM32
    發表于 07-27 11:04

    Linux如何關閉防火墻

    1、查看防火墻規則vim /etc/sysconfig/iptables放開某個端口號不被防火墻攔截,適用于部署tomcat,nginx等之類的軟件
    發表于 07-12 06:31

    Centos7Nginx安裝與配置步驟

    Centos7 Nginx安裝與配置,防火墻開啟端口監聽
    發表于 06-02 12:58

    請問如何自動加載iptables的防火墻規則?

    系統啟動后,如何自動加載iptables的防火墻規則?
    發表于 01-07 08:46

    防火墻技術

    防火墻技術.ppt 防火墻及相關概念包過濾型防火墻代理服務型防火墻 防火墻配置分布
    發表于 06-16 23:41 ?0次下載

    防火墻配置

    實驗十三、防火墻配置 一. 實驗原理1.1 防火墻原理網絡的主要功能是向其他通信實體提供信息傳輸服務。網絡安全技術的主
    發表于 09-24 13:55 ?2032次閱讀
    <b class='flag-5'>防火墻</b>的<b class='flag-5'>配置</b>

    防火墻配置--過濾規則示例

    防火墻配置--過濾規則示例
    發表于 12-07 14:16 ?9064次閱讀
    <b class='flag-5'>防火墻</b>的<b class='flag-5'>配置</b>--過濾<b class='flag-5'>規則</b>示例

    如何配置Cisco PIX防火墻

    如何配置Cisco PIX防火墻配置PIX防火墻之前,先來介紹一下防火墻的物理特性。防火墻
    發表于 01-13 13:26 ?531次閱讀

    Cent OS 7 上的防火墻設置教程來了

    當設置后,網站就掛了,經過多次折騰,判斷就是這條紅色命令的問題,后來又是在網上一通查,最終問題的 firewalld 的問題,對 firewalld 不熟悉,只好安裝 CentOS 6 中通用的 iptables 查詢,來設置
    的頭像 發表于 05-14 14:38 ?9526次閱讀
    Cent OS 7 上的<b class='flag-5'>防火墻</b>設置教程來了

    什么是防火墻?防火墻如何工作?

    防火墻是網絡與萬維網之間的關守,它位于網絡的入口和出口。 它評估網絡流量,僅允許某些流量進出。防火墻分析網絡數據包頭,其中包含有關要進入或退出網絡的流量的信息。然后,基于防火墻配置
    的頭像 發表于 09-30 14:35 ?4993次閱讀

    如何列出和刪除防火墻規則UFW

    UFW意為簡單的防火墻,是用于管理iptables/netfilter防火墻規則的用戶友好的前端。
    的頭像 發表于 12-06 17:52 ?6434次閱讀

    Linux防火墻配置(iptables和firewalld)

    防火墻就是根據系統管理員設定的規則來控制數據包的進出,主要是保護內網的安全,目前 Linux 系統的防火墻類型主要有兩種:分別是 [iptables] 和 firewalld
    的頭像 發表于 03-31 10:09 ?699次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>