Linux系統中firewalld防火牆常用的操作命令

来源:https://www.cnblogs.com/xyh9039/p/18361890
-Advertisement-
Play Games

本章將和大家分享Linux系統中firewalld防火牆常用的操作命令。廢話不多說,下麵我們直接進入主題。 一、安裝Firewall命令 yum install firewalld firewalld-config 二、防火牆的基本操作 1、查看防火牆狀態 使用systemctl status fi ...


本章將和大家分享Linux系統中firewalld防火牆常用的操作命令。廢話不多說,下麵我們直接進入主題。

一、安裝Firewall命令

yum install firewalld firewalld-config

二、防火牆的基本操作

1、查看防火牆狀態

  • 使用systemctl status firewalld命令可以查看firewalld服務的狀態。
  • 也可以使用firewall-cmd --state命令直接查看防火牆的狀態。

2、開啟防火牆

  • 臨時性開啟(重啟後失效):systemctl start firewalld
  • 永久性開啟(即開機啟動):systemctl enable firewalld

3、關閉防火牆

  • 臨時性關閉(重啟後恢復):systemctl stop firewalld
  • 永久性關閉(即禁止開機啟動):systemctl disable firewalld

4、重啟防火牆

重新載入防火牆的所有配置並應用新的規則:systemctl restart firewalld

5、重新載入防火牆配置

  • 不中斷現有連接:firewall-cmd --reload
  • 中斷所有連接(類似重啟服務):firewall-cmd --complete-reload

三、區域(Zone)管理 

  • 查看所有可用的區域:firewall-cmd --get-zones
  • 查看當前激活的區域:firewall-cmd --get-active-zones
  • 查看指定區域的詳細信息:firewall-cmd --zone=public --list-all(public是示例區功能變數名稱,需替換為實際區功能變數名稱)
  • 設置預設區域:firewall-cmd --set-default-zone=public(public是示例區功能變數名稱)
  • 添加區域:firewall-cmd --permanent --new-zone=myzone(myzone是自定義區功能變數名稱)
  • 刪除區域:firewall-cmd --permanent --delete-zone=myzone(myzone是自定義區功能變數名稱)

四、埠(Port)管理

1、查看已開放的埠

firewall-cmd --list-ports(顯示當前防火牆會話中開放的埠,包含永久或臨時開放的埠,未指定區域則預設為public區域)

firewall-cmd --permanent --list-ports  (列出在 firewalld 防火牆配置中永久設置的埠)

2、添加指定開放埠

  • 永久開放:firewall-cmd --permanent --zone=public --add-port=80/tcp(80是埠號,tcp是協議類型)
  • 開放埠範圍:firewall-cmd --permanent --zone=public --add-port=9000-9008/tcp

3、移除指定開放埠

  • 永久移除:firewall-cmd --permanent --zone=public --remove-port=80/tcp
  • 移除埠範圍:firewall-cmd --permanent --zone=public --remove-port=9000-9008/tcp

4、查詢指定開放埠狀態

firewall-cmd --zone=public --query-port=80/tcp

五、服務(Service)管理

  • 查看已啟用的服務:firewall-cmd --list-services(未指定區域則預設為public區域)
  • 查看所有可用的服務:firewall-cmd --get-services
  • 添加指定服務(永久添加):firewall-cmd --permanent --zone=public --add-service=http(http是服務名)
  • 移除指定服務(永久移除):firewall-cmd --permanent --zone=public --remove-service=http

六、富規則(Rich Rules)

查看已設置的富規則:firewall-cmd --list-rich-rules(未指定區域則預設為public區域)。

添加富規則:例如,只允許特定IP訪問特定埠,可以使用如下命令:

firewall-cmd --permanent --zone=public --add-rich-rule="rule family='ipv4' source address='192.168.1.1/24' port protocol='tcp' port='3306' accept"

移除富規則:需要指定與添加時相同的規則字元串來移除。

七、查看當前防火牆配置

1、查看所有預設的區域設置

sudo firewall-cmd --get-default-zone

2、列出所有可用的區域

sudo firewall-cmd --get-zones

3、列出當前激活的區域

sudo firewall-cmd --get-active-zones

4、查看某個區域的所有規則

sudo firewall-cmd --zone=<zone> --list-all

八、修改防火牆配置

1、永久改變預設區域

sudo firewall-cmd --set-default-zone=<new-zone>

2、臨時改變預設區域 (重啟後會恢復)

sudo firewall-cmd --set-default-zone-to=<new-zone>

3、將介面移動到特定區域

sudo firewall-cmd --permanent --change-zone=<interface> <new-zone>

4、添加埠到指定區域

sudo firewall-cmd --zone=<zone> --add-port=<port>/<protocol> --permanent

5、刪除埠

sudo firewall-cmd --zone=<zone> --remove-port=<port>/<protocol> --permanent

6、允許或禁止服務

sudo firewall-cmd --zone=<zone> --add-service=<service> --permanent
sudo firewall-cmd --zone=<zone> --remove-service=<service> --permanent

7、允許或禁止單個 IP 地址

sudo firewall-cmd --zone=<zone> --add-rich-rule='rule family="ipv4" source address="<ip-address>" accept'
sudo firewall-cmd --zone=<zone> --remove-rich-rule='rule family="ipv4" source address="<ip-address>" accept'

8、重新載入配置文件(不會中斷現有連接)

sudo firewall-cmd --reload

九、註意事項

  • 使用 --permanent 參數會將更改寫入配置文件,這樣更改在系統重啟後仍然有效。
  • 不帶 --permanent 參數的更改僅在當前會話中生效,重啟 firewalld 或系統後會丟失。
  • <zone> 是你想要應用規則的區功能變數名稱稱,例如 public, internal, trusted 等。
  • <service> 是預定義的服務名稱,如 ssh, http, https 等。
  • <port> 指定要開放的埠號,而 <protocol> 通常是 tcp 或 udp。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 環境ubuntu20.04 Arm官網有源碼和編譯鏈。但是沒有編譯手冊。 從安裝版本中拿到10.3-2021.07-x86_64-aarch64-none-linux-gnu-manifest.txt 根據裡面的記錄,去進行配置和編譯。 官網下載: https://developer.arm.com ...
  • 本方式使用docker Swarm集群的方式創建overlay 網路進行打通 背景 因java微服務使用nacos做配置中心,為瞭解決Nacos服務註冊使用Docker容器內網ip問題,使用此方案 前置條件 1、宿主機之間需要開通埠 管理埠: 2377/tcp: 用於管理 Swarm 模式集群。 ...
  • 用了好幾年Xfce桌面了,但是從來沒有仔細研究過Xfce底下相關的運行邏輯,最近才對相關的底層概念感興趣並去嘗試瞭解了一下,但是它的體系架構以及複雜的依賴關係令初來乍到者望而卻步。沒辦法,寫點什麼方便理解吧。 這一系列文章主要是探討Xfce底層實現的,不會過多聚焦於美化之類的話題。我的環境是Arch ...
  • 導讀:在這個快節奏的技術世界里,重溫過去並從中汲取靈感總是一件有趣的事情。今天要介紹的是一款僅用一天時間重製的經典 Macintosh 應用——Stapler。這款應用最初發佈於1992年,現在由一位充滿激情的開發者重新打造,不僅保留了原汁原味的功能,還加入了現代化的改進和特性,使其更適合現代 ma ...
  • 實踐環境 CentOS-7-x86_64-DVD-2009.iso rabbitmq-server-3.9.16-1.el7.noarch.rpm https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.9.16 https://git ...
  • 本章將和大家分享Linux系統中的進程和埠查看命令。 一、ps命令 Linux中的ps命令是Process Status的縮寫。ps命令用來列出系統中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,如果想要動態的顯示進程信息,就可以使用top命令。 1 ...
  • 本章將和大家分享Linux系統中常用的軟體安裝方式。廢話不多說,下麵我們直接進入主題。 一、yum命令 yum(Yellowdog Updater, Modified)是Linux中,特別是在基於RPM的發行版(如Fedora、CentOS、RHEL(Red Hat Enterprise Linux ...
  • 大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家講的是英飛凌MirrorBit工藝NOR Flash的扇區架構設計。 NOR Flash 大家都很熟悉,其內部按組織從小到大分為 Page(128B/256B/512B)、Sector(4KB)、Block(32KB/64KB/128KB/25 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 推薦一款基於.NET 8、WPF、Prism.DryIoc、MVVM設計模式、Blazor以及MySQL資料庫構建的企業級工作流系統的WPF客戶端框架-AIStudio.Wpf.AClient 6.0。 項目介紹 框架採用了 Prism 框架來實現 MVVM 模式,不僅簡化了 MVVM 的典型 ...
  • 先看一下效果吧: 我們直接通過改造一下原版的TreeView來實現上面這個效果 我們先創建一個普通的TreeView 代碼很簡單: <TreeView> <TreeViewItem Header="人事部"/> <TreeViewItem Header="技術部"> <TreeViewItem He ...
  • 1. 生成式 AI 簡介 https://imp.i384100.net/LXYmq3 2. Python 語言 https://imp.i384100.net/5gmXXo 3. 統計和 R https://youtu.be/ANMuuq502rE?si=hw9GT6JVzMhRvBbF 4. 數 ...
  • 本文為大家介紹下.NET解壓/壓縮zip文件。雖然解壓縮不是啥核心技術,但壓縮性能以及進度處理還是需要關註下,針對使用較多的zip開源組件驗證,給大家提供個技術選型參考 之前在《.NET WebSocket高併發通信阻塞問題 - 唐宋元明清2188 - 博客園 (cnblogs.com)》講過,團隊 ...
  • 之前寫過兩篇關於Roslyn源生成器生成源代碼的用例,今天使用Roslyn的代碼修複器CodeFixProvider實現一個cs文件頭部註釋的功能, 代碼修複器會同時涉及到CodeFixProvider和DiagnosticAnalyzer, 實現FileHeaderAnalyzer 首先我們知道修 ...
  • 在軟體行業,經常會聽到一句話“文不如表,表不如圖”說明瞭圖形在軟體應用中的重要性。同樣在WPF開發中,為了程式美觀或者業務需要,經常會用到各種個樣的圖形。今天以一些簡單的小例子,簡述WPF開發中幾何圖形(Geometry)相關內容,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 在 C# 中使用 RabbitMQ 通過簡訊發送重置後的密碼到用戶的手機號上,你可以按照以下步驟進行 1.安裝 RabbitMQ 客戶端庫 首先,確保你已經安裝了 RabbitMQ 客戶端庫。你可以通過 NuGet 包管理器來安裝: dotnet add package RabbitMQ.Clien ...
  • 1.下載 Protocol Buffers 編譯器(protoc) 前往 Protocol Buffers GitHub Releases 頁面。在 "Assets" 下找到適合您系統的壓縮文件,通常為 protoc-{version}-win32.zip 或 protoc-{version}-wi ...
  • 簡介 在現代微服務架構中,服務發現(Service Discovery)是一項關鍵功能。它允許微服務動態地找到彼此,而無需依賴硬編碼的地址。以前如果你搜 .NET Service Discovery,大概率會搜到一大堆 Eureka,Consul 等的文章。現在微軟為我們帶來了一個官方的包:Micr ...
  • ZY樹洞 前言 ZY樹洞是一個基於.NET Core開發的簡單的評論系統,主要用於大家分享自己心中的感悟、經驗、心得、想法等。 好了,不賣關子了,這個項目其實是上班無聊的時候寫的,為什麼要寫這個項目呢?因為我單純的想吐槽一下工作中的不滿而已。 項目介紹 項目很簡單,主要功能就是提供一個簡單的評論系統 ...