【Linux安全】Firewalld防火墻

目錄

一.Firewalld概述

二.Firewalld和iptables的關系

1.firewalld和iptables的聯系

2.firewalld和iptables的區別

三.Firewalld區域

1.概念

2.九個區域

3.區域介紹

4.Firewalld數據處理流程

四.Firewalld-cmd命令行操作

1.查看

2.增加

3.刪除

4.修改

五.Firewalld防火墻的配置方法

1.運行時配置

2.永久配置

六.編寫/etc/firewalld/中的配置文件

補充:DNAT和SNAT也可以通過firewall-cmd設置

1.設置SNAT

2.設置DNAT


一.Firewalld概述

  • firewalld防火墻是Centos7系統默認的防火墻管理工具,取代了之前的iptables防火墻,也是工作在網絡層,屬于包過濾防火墻
  • firewalld和iptables都是用來管理防火墻的工具(屬于用戶態)來定義防火墻的各種規則功能,內部結構都指向netfilter網絡過濾子系統(屬于內核態)來實現包過濾防火墻功能
  • firewalld提供了支持網絡區域所定義的網絡連接以及接口安全等級的動態防火墻管理工具。 它支持IPv4、IPv6防火墻設置以及以太網橋(在某些高級服務可能會用到,比如云計算), 并且擁有兩種配置模式:運行時配置與永久配置
    ?

二.Firewalld和iptables的關系

1.firewalld和iptables的聯系

netfilter

  • 位于Linux內核中的包過濾功能體系

  • 稱為Linux防火墻的“內核態”

Firewalld/iptables

  • CentOS7默認的管理防火墻規則的工具(Firewalld)

  • 稱為Linux防火墻的“用戶態”

2.firewalld和iptables的區別

firewalld ?iptables
配置文件

?/etc/firewalld/? ? ? ?

(優先加載,保存用戶自定義的配置)

?/usr/lib/firewalld/? ?

(默認的初始配置)

/etc/sysconfig/iptables
?
對規則的修改不需要全部刷新策略,不中斷現有連接?立即生效,可能中斷現有連接
?
防火墻類型

動態防火墻? ? ? ? ? ?

(在不同區域設置不同規則,可通過更換區域來更改防護策略)

靜態防火墻? ? ? ? ? ?

(所有規則都是配置在表的鏈里,只能通過修改規則來更改防護策略)

三.Firewalld區域

1.概念

  • firewalld防火墻為了簡化管理,將所有網絡流量分為多個區域(zone)
  • 然后根據數據包的源IP地址或傳入的網絡接口等條件將流量傳入相應區域
  • 每個區域都定義了自己打開或者關閉的端口和服務列表
    ?

2.九個區域

trusted(信任區域)允許所有的傳入流量
public(公共區域)允許與ssh或dhcpv6-client預定義服務匹配的傳入流量,其余均拒絕。是新添加網絡接口的默認區域
external(外部區域)允許與ssh預定義服務匹配的傳入流量其余均拒絕
home(家庭區域)允許與ssh、mdns、samba-client或dhcpv6-client預定義服務匹配的傳入流量,其他均拒絕
internal(內部區域)默認值與home區域相同
work(工作區域)允許與ssh、dhcpv6-client預定義服務匹配的傳入流量,其他均拒絕
dmz(隔離區域也稱非軍事區域)允許與ssh預定義服務匹配的傳入流量,其他均拒絕
block(限制區域)拒絕所有傳入流量
drop(丟棄區域)丟棄所有傳入流量,并且不產生包含icmp的錯誤響應

3.區域介紹

  • 最終一個區域的安全程度是取決于管理員在此區域中設置的規則
  • 區域如同進入主機的安全門,每個區域都具有不同限制程度的規則,只會允許符合規則的流量傳入
  • 可以根據網絡規模,使用一個或多個區域,但是任何一個 活躍區域 至少需要關聯 源地址或接口
  • 默認情況下,public區域是默認區域,包含所有接口(網卡)

4.Firewalld數據處理流程

  • 要激活某個區域,需要先將區域與 源地址或網卡接口 關聯綁定(一個區域可以關聯綁定多個源地址或網卡接口,一個源地址或網卡接口只能關聯綁定一個區域)
  • 先檢查傳入數據包的源地址
  1. 若源地址與特定區域綁定,則直接使用該區域的規則過濾處理數據包
  2. 若源地址與任何一個區域沒有綁定,則使用與入站網卡綁定的特定區域的規則過濾處理數據包
  3. 若也沒有特定區域綁定網卡接口,則使用默認區域的規則過濾處理數據包

四.Firewalld-cmd命令行操作

1.查看

查看當前默認區域

firewall-cmd --get-default-zone

查看當前已激活的區域

firewall-cmd --get-active-zones

查看所有可用的區域

firewall-cmd --get-zones

查看指定區域的規則

firewall-cmd --list-all --zone=區域名

查看指定區域允許訪問的服務列表

firewall-cmd --list-services --zone=區域名

查看指定區域允許訪問的端口列表

firewall-cmd --list-ports --zone=區域名

查看與網卡綁定的區域

firewall-cmd --get-zone-of-interface=網卡名

查看所有icmp類型

firewall-cmd --get-icmptypes

2.增加

給指定區域添加綁定的網卡

firewall-cmd --add-interface=網卡名 --zone=區域名

給指定區域添加源地址

firewall-cmd --add-source=源地址 --zone=區域名

給指定區域添加允許訪問的服務

firewall-cmd --add-service=服務名 --zone=區域名

給指定區域添加允許訪問的服務列表

firewall-cmd --add-service={服務名1,服務名2,...} --zone=區域名

給指定區域添加允許訪問的端口

firewall-cmd --add-port=端口/協議 --zone=區域名 

給指定區域添加允許訪問的連續的端口列表

firewall-cmd --add-port=端口1-端口2/協議 --zone=區域名

給指定區域添加允許訪問的不連續的端口

firewall-cmd --add-port={端口1,端口2,...}/協議 --zone=區域名

給指定區域添加拒絕訪問的icmp類型

firewall-cmd --add-icmp-block=icmp類型 --zone=區域名 

3.刪除

根據服務名刪除

firewall-cmd --remove-service=服務名 --zone=區域名  

?根據端口/協議刪除

firewall-cmd --remove-port=端口/協議 --zone=區域名

根據icmp類型刪除

firewall-cmd --remove-icmp-block=icmp類型 --zone=區域名

從指定區域里刪除綁定的網卡

firewall-cmd --remove-interface=網卡名 --zone=區域名

從指定區域里刪除綁定的源地址

firewall-cmd --remove-source=源地址 --zone=區域名

4.修改

修改當前默認區域

firewall-cmd --set-default-zone

修改/添加網卡 綁定給指定區域

firewall-cmd --change-interface=網卡名 --zone=區域名

修改/添加源地址 綁定給指定區域

firewall-cmd --change-source=源地址 --zone=區域名

五.Firewalld防火墻的配置方法

1.運行時配置

  • 實時生效,并持續至Firewalld重新啟動或重新加載配置
  • 不中斷現有連接
  • 不能修改服務配置
firewall-cmd ....firewall-cmd --runtime-to-permanent       將之前的運行時配置都轉換成永久配置

2.永久配置

  • 不立即生效,除非Firewalld重新啟動或重新加載配置
  • 中斷現有連接
  • 可以修改服務配置
firewall-cmd ....  --permanentfirewall-cmd --reload   或   systemctl restart firewalld

六.編寫/etc/firewalld/中的配置文件

Firewalld會優先使用/etc/firewalld/中的配置,如果不存在配置文件,則使用/usr/lib/firewalld/中的配置

  • /etc/firewalld/:用戶自定義配置文件,需要時可通過從/usr/lib/firewalld/ 中拷貝
  • /usr/lib/firewalld/ :默認配置文件,不建議修改,若恢復至默認配置,可直接刪除/etc/firewalld/ 中的配置

補充:DNAT和SNAT也可以通過firewall-cmd設置

1.設置SNAT

firewall-cmd --zone=public --direct --passthrough ipv4 -t nat -A POSTROUTING -s 192.168.80.0/24 -j SNAT --to-source 12.0.0.1

2.設置DNAT

firewall-cmd --zone=public --direct --passthrough ipv4 -t nat -A PREROUTING -d 12.0.0.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.80.11

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/14013.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/14013.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/14013.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

arping 一鍵檢測網絡設備連通性(KALI工具系列二)

目錄 1、KALI LINUX簡介 2、arping工具簡介 3、在KALI中使用arping 3.1 目標主機IP(win) 3.2 KALI的IP 4、操作示例 4.1 IP測試 4.2 ARP測試 4.3 根據存活情況返回 5、總結 1、KALI LINUX簡介 Kali Linux 是一個功能強大、多才多藝的 Linux 發…

表現層框架設計之使用XML設計表現層

使用XML設計表現層,統一Web Form與Windows Form的外觀。 1.XML(可擴展標記語言) XML(可擴展標記語言)與HTML類似,是一種標記語言。與主要用于控制數據的顯示和外觀的HTML標記不同,XML標記用于定…

PostgreSQL的擴展(extensions)-常用的擴展之pg_rman

PostgreSQL的擴展(extensions)-常用的擴展之pg_rman pg_rman 是 PostgreSQL 社區提供的一個備份和恢復管理工具。它能夠簡化和自動化 PostgreSQL 數據庫的備份和恢復過程,并支持全量備份、增量備份和差異備份。pg_rman 提供了方便的命令行接…

【機器學習與大模型】驅動下的電子商務應用

摘要: 隨著信息技術的飛速發展,電子商務已經成為當今商業領域中最為活躍和重要的部分之一。而機器學習和大模型的出現,為電子商務帶來了新的機遇和挑戰。本文深入探討了機器學習與大模型在電子商務中的應用,包括個性化推薦、精準營…

Java 18:開啟Java平臺的新紀元

Java 18:探索Java平臺的最新飛躍 隨著Java 18的發布,Java平臺再次證明了其不斷創新和適應現代軟件開發需求的能力。作為長期支持(LTS)版本,Java 18不僅帶來了性能上的提升,還引入了一系列令人興奮的新特性…

基于雙向長短期記憶 Bi-LSTM 對消費者投訴進行多類分類

前言 系列專欄:【深度學習:算法項目實戰】?? 涉及醫療健康、財經金融、商業零售、食品飲料、運動健身、交通運輸、環境科學、社交媒體以及文本和圖像處理等諸多領域,討論了各種復雜的深度神經網絡思想,如卷積神經網絡、循環神經網絡、生成對抗網絡、門控循環單元、長短期記…

CSS transform 三大屬性 rotate、scale、translate

transform 瀏覽器支持定義和用法translate位移函數rotate旋轉函數scale縮放函數 瀏覽器支持 表格中的數字表示支持該屬性的第一個瀏覽器版本號。 緊跟在 -webkit-, -ms- 或 -moz- 前的數字為支持該前綴屬性的第一個瀏覽器版本號。 定義和用法 transform 屬性向元素應用 2D…

在chrome中查找和驗證xpath

1、快速獲取XPath表達式 按F12打開chrome瀏覽器的開發者模式,點擊選擇光標,選擇頁面上的元素位置,在控制臺右鍵選擇Copy XPath,表達式就復制到粘貼板中了。 獲取到的xpath路徑://*[id"hotsearch-content-wrapper…

iOS App上架全流程及審核避坑指南

App Store作為蘋果官方的應用商店,審核嚴格周期長一直讓用戶頭疼不已,很多app都“死”在了審核這一關,那我們就要放棄iOS用戶了嗎?當然不是!本期我們從iOS app上架流程開始梳理,詳細了解下iOS app上架的那些…

6.1 if語句

計算機語言和人類語言類似,人類語言是為了解決人與人之間交流的問題,而計算機語言是為了解決程序員與計算機之間交流的問題。程序員編寫的程序就是計算機的控制指令,控制計算機的運行。借助于編譯工具,可以將各種不同的編程語言的…

基礎入門三大核心之HTML篇:WebP格式圖像全面解析 —— 起源、優勢、兼容性及在線壓縮方法

基礎入門三大核心之HTML篇:WebP格式圖像全面解析 —— 起源、優勢、兼容性及在線壓縮方法 歡迎來到我的博客,很高興能夠在這里和您見面!希望您在這里可以感受到一份輕松愉快的氛圍,不僅可以獲得有趣的內容和知識,也可以…

馮喜運:5.24黃金今日能否回調?日內國際黃金美原油操作策略

【黃金消息面分析】:在過去的半個世紀里,美國國債作為買入持有的投資手段,輕松超越了黃金。然而,如今債券作為終極避險資產的地位正面臨著前所未有的挑戰。傳統上,投資者將美國國債視為一種超安全的投資,因…

Java高級面試精粹:問題與解答集錦(二)

Java面試問題及答案 1. 什么是Java內存模型(JMM)?它的作用是什么? 答案: Java內存模型(JMM)定義了Java虛擬機(JVM)在計算機內存中的工作方式,包括程序計數器…

【源碼+文檔+講解】垃圾分類系統SSM

目 錄 摘 要 前 言 第1章 概述 1.1 研究背景 1.2 研究目的 1.3 研究內容 4 第二章 開發技術介紹 5 2.1Java技術 6 2.2 Mysql數據庫 6 2.3 B/S結構 7 2.4 SSM框架 8 第三章 系統分析 3.1 可行性分析 3.1.1 技術可行性 3.1.2 經濟可行性 3.1.3 操作可行性 3.2 系統…

Word讓標題3現形

1 2這個玩意兒是管理樣式(你找得我好慘啊啊啊啊) 3點推薦

MINLP(Mixed-Integer Nonlinear Programming,混合整數非線性規劃)

MINLP(Mixed-Integer Nonlinear Programming,混合整數非線性規劃)問題是一類包含整數變量和連續變量的非線性優化問題。它結合了整數規劃(IP)和非線性規劃(NLP)的特征,因而比單純的整…

基于Vue的圖片文件上傳與壓縮組件的設計與實現

摘要 隨著前端技術的發展,系統開發的復雜度不斷提升,傳統開發方式將整個系統做成整塊應用,導致修改和維護成本高昂。組件化開發作為一種解決方案,能夠實現單獨開發、單獨維護,并能靈活組合組件,從而提升開…

JS-02對象的基本使用

目錄 1 創建一個對象 2 對象屬性操作 2.1 獲取屬性 第一種方式:.語法 第二種方式:[]語法 2種方式的差異 2.2 設置屬性 2.3 刪除屬性 3 案例 1 創建一個對象 創建一個對象,包含了兩個屬性,兩個方法: var studen…

17. FastDFS面試題匯總

Java全棧面試題匯總目錄-CSDN博客 1. 什么是FastDFS? FastDFS是用C語言編寫的一款開源的分布式文件系統。FastDFS為互聯網量身定制,充分考慮了冗余備份、負載均衡、線性擴容等機制,并注重高可用、高性能等指標,使用FastDFS很容易…

什么是線程安全?如何保證線程安全?

目錄 一、引入線程安全 👇 二、 線程安全👇 1、線程安全概念 🔍 2、線程不安全的原因 🔍 搶占式執行(罪魁禍首,萬惡之源)導致了線程之間的調度是“隨機的” 多個線程修改同一個變量 修改…