天天看點

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

​​​​​​​​​​​​概述

保證資料的安全性是繼可用性之後最為重要的一項工作,防火牆技術作為公網與内網之間的保護屏障,起着至關重要的作用。

本章節内将會分别使用iptables、firewall-cmd、firewall-config和Tcp_wrappers等防火牆政策配置服務,夠熟練的對請求資料包流量進行過濾,還能夠基于服務程式進行允許和關閉操作,從更好的層面保證了Linux系統的安全運作。

一、 防火牆管理工具

保證資料的安全性是繼可用性之後最為重要的一項工作,防火牆技術作為公網與内網之間的保護屏障,雖然有軟體或硬體之分(系統防火牆、硬體防火牆、行為管理裝置等),但主要功能都是依據政策對外部請求進行過濾,防火牆技術能夠做到監控每一個資料包并判斷是否有相應的比對政策規則,直到比對到其中一條政策規則或執行預設政策為止,防火牆政策可以基于來源位址、請求動作或協定等資訊來定制,最終僅讓合法的使用者請求流入到内網中,其餘的均被丢棄。

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

防火牆作為公網與内網之間的保護屏障

紅帽RHEL7系統中Firewalld服務取代了Iptables服務,但其實Iptables服務與Firewalld服務都不是真正的防火牆,它們都隻是用來定義防火牆政策功能的“防火牆管理工具”,真正定義好的防火牆政策會被核心中的netfilter網絡過濾器接收,進而真正實作了防火牆功能。

在Linux系統中其實同時有多個防火牆管理工具共同存在,作用都是為了友善運維人員管理Linux系統的防火牆政策,但最終真正的資料過濾功能是由系統核心中netfilter網絡過濾器來實作的,紅帽RHEL7系統中的防火牆沒有變,而是防火牆的規則政策管理工具換了而已,雖然各個工具之間各有優劣特色,但對于防火牆政策的配置思路上是保持一緻的,從多個防火牆管理工具中任選一款來學透即可,完全能夠滿足日常的工作所需。

Netfilter和firewalld概念

Linux核心包含一個強大的網絡過濾子系統netfilter。netfilter子系統允許核心子產品對周遊系統的每個資料包進行檢查。這表示在任何傳入、傳出或轉發的網絡資料包到達使用者空間中的元件之前,都可以通過程式設計方式檢查、修改、丢棄或拒絕這些資料包。這是RHEL7計算機上建構防火牆的主要建構快。

與netfilter互動

盡管系統管理者理論可以編寫自己的核心子產品與netfilter互動,但通常不會這樣做。取而代之,會使用其他程式來與netfilter互動。這些程式中,最常見和最知名的是iptables。

之前的RHEL版本中,iptables是核心netfilter子系統互動的主要方法。iptables是一個指令工具,它僅能調整IPv4防火牆規則。為保證更完整的防火牆覆寫率,需要使用其他實用程式,例如用于IPv6的ip6tables和用于軟體橋的ebtables。

二、iptables

在較早期的Linux系統中想配置防火牆預設使用的都是iptables防火牆管理指令,而新型Firewalld防火牆管理服務已經被投入使用多年,但目前還有大量的生産環境中在使用着iptables指令來管理着防火牆的規則政策。

2.1 政策與規則鍊

防火牆會從上至下來讀取規則政策,一旦比對到了合适的就會去執行,并立即結束比對工作,但也有轉了一圈之後發現沒有比對到合适規則的時候,那麼就會去執行預設的政策。

對防火牆政策的設定有兩種,一種是“通”,一種是“堵”——當防火牆的預設政策是拒絕的,我們就要設定允許規則,否則誰都進不來了,而如果防火牆的預設政策是允許的,我們就要設定拒絕規則,否則誰都能進來了,起不到防範的作用。

iptables指令把對資料進行過濾或處理資料包的政策叫做規則,将多條規則又存放到一個規則鍊中,規則鍊是依據處理資料包位置的不同而進行的分類,包括有:

#進行路由選擇前處理資料包(PREROUTING)

# 處理流入的資料包(INPUT)

# 處理流出的資料包(OUTPUT)

# 處理轉發的資料包(FORWARD)

# 在進行路由選擇後處理資料包(POSTROUTING)

從内網向外網發送的資料一般都是可控且良性的,是以顯而易見我們使用最多的就是INPUT資料鍊,這個鍊中定義的規則起到了保證我們私網設施不受外網駭客侵犯的作用。

比如社群物業有兩條規定——“禁止小商販進入社群,各種車輛都需要登記”,這兩條安保規定很明顯應該是作用到了社群的正門(流量必須經過的地方),而不是每家每戶的防盜門上。

根據我們前面提到的防火牆政策的比對順序規則,我們可以猜想有多種情況——比如來訪人員是小商販,則會被物業保安直接拒絕在大門外,也無需再對車輛進行登記,

如果來訪人員是一輛汽車,那麼因為第一條禁止小商販政策就沒有被比對到,因而按順序比對到第二條政策,需要對車輛進行登記,再有如果來訪的是社群居民,則既不滿足小商販政策,也不滿足車輛登記政策,是以會執行預設的放行政策。

不過隻有規則政策還不能保證系統的安全,還應該知道該怎麼樣處理這些被比對到的流量,比如:“允許”、“登記”、“拒絕”、“不處理”,

這些動作對應到iptables指令術語中是:

# ACCEPT(接收資料包)

# LOG(記錄日志資訊)

# REJECT(拒絕流量通過)

# DROP(丢棄資料包)

# SNAT(源位址轉換)

# DNAT(目标位址轉換)

允許動作和記錄日志工作都比較好了解,這兩條拒絕動作的不同點,其中REJECT和DROP的動作操作都是将資料包拒絕,DROP是直接将資料包抛棄不響應,而REJECT會拒絕後再回複一條“您的資訊我已收到,但被扔掉了”,讓對方清晰的看到資料被拒絕的響應。

将Linux系統設定成REJECT拒絕動作政策後,對方會看到本機的端口不可達的響應:

# [[email protected] ~]# ping -c 4 192.168.10.10
#  PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data.
# From 192.168.10.10 icmp_seq=1 Destination Port Unreachable
# From 192.168.10.10 icmp_seq=2 Destination Port Unreachable
           

2.2 基本的指令參數

iptables是一款基于指令行的防火牆政策管理工具,由于該指令是基于終端執行且存在有大量參數的,無需深入的了解諸如“四表五鍊”的理論概念,隻需要掌握常用的參數并做到靈活搭配即可,以便于能夠更順暢的勝任工作所需。

iptables指令可以根據資料流量的源位址、目的位址、傳輸協定、服務類型等等資訊項進行比對,一旦資料包與政策比對後,iptables就會根據政策所預設的動作來處理這些資料包流量。

防火牆政策的比對順序規則是從上至下的,是以要把較為嚴格、優先級較高的政策放到靠前位置,否則有可能産生錯誤。

表名包括:

# raw:進階功能,如:網址過濾。 
# mangle:資料包修改(QOS),用于實作服務品質。 
# net:位址轉換,用于網關路由器。 
# filter:包過濾,用于防火牆規則。
           

iptables指令主要參數:

參數 作用
-P 設定預設政策:iptables -P INPUT (DROP
-F 清空規則鍊
-L 檢視規則鍊
-A 在規則鍊的末尾加入新規則
-Inum 在規則鍊的頭部加入新規則
-D num 删除某一條規則
-s 比對來源位址IP/MASK,加歎号"!"表示除這個IP外
-d 比對目标位址
-i 網卡名稱 比對從這塊網卡流入的資料
-o 網卡名稱 比對從這塊網卡流出的資料
-p 比對協定,如tcp,udp,icmp
–dport num 比對目标端口号
–sport num 比對來源端口号

iptables指令-L參數檢視已有的防火牆政策:

# [[email protected] ~]# iptables -L
           

iptables指令-F參數清空已有的防火牆政策:

# [[email protected] ~]# iptables -F
           iptables -X
            iptables -Z
# [[email protected] ~]# iptables -L
# Chain INPUT (policy ACCEPT)
# target prot opt source destination 
           

将INPUT鍊的預設政策設定為拒絕:

如前面所提到的防火牆政策設定無非有兩種方式,一種是“通”,一種是“堵”,當我們将INPUT鍊設定為預設拒絕後,就需要往裡面寫入允許政策,否則所有流入的資料包都會被預設拒絕掉,規則鍊的預設政策拒絕動作隻能是DROP,而不能是REJECT。

# [[email protected] ~]# iptables -P INPUT DROP

# [[email protected] ~]# iptables -L

# Chain INPUT (policy DROP)

# target prot opt source destination

向INPUT鍊中添加允許imcp資料包流入的允許政策:

我們經常會使用到ping指令來檢查對方主機是否線上,現在向防火牆INPUT鍊中添加一條允許imcp協定資料包流入的政策,預設允許了ping指令檢測行為。

# [[email protected] ~]# ping -c 4 192.168.10.10
# PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data.
# --- 192.168.10.10 ping statistics ---4 packets transmitted, 0 received, 100% packet loss, time 3000ms

# [[email protected] ~]# iptables -I INPUT -p icmp -j ACCEPT
# [[email protected] ~]# ping -c 4192.168.10.10
# PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data. 
  64 bytes from 192.168.10.10: icmp_seq=1 ttl=64 time=0.156 ms
  64 bytes from 192.168.10.10: icmp_seq=2 ttl=64 time=0.117 ms
           

删除INPUT鍊中的那條政策,并将預設政策還原為允許:

# [[email protected] ~]# iptables -D INPUT 1
# [[email protected] ~]# iptables -P INPUT ACCEPT
# [[email protected] ~]# iptables -L
     Chain INPUT (policy ACCEPT)
     target prot opt source destination
           

設定INPUT鍊隻允許指定網段通路本機的22端口,拒絕其他所有主機的資料請求流量:

防火牆政策是按照從上至下順序比對的,要記得将允許動作放到拒絕動作上面,否則所有的流量就先被拒絕了。

# [[email protected] ~]# iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT
# [[email protected] ~]# iptables -A INPUT -p tcp --dport 22 -j REJECT
# [[email protected] ~]# iptables -L
           

使用IP位址在192.168.10.0/24網段内的主機通路伺服器的22端口:

# [[email protected] A ~]# ssh 192.168.10.10
The authenticity of host '192.168.10.10 (192.168.10.10)' can't be established.
ECDSA key fingerprint is 70:3b:5d:37:96:7b:2e:a5:28:0d:7e:dc:47:6a:fe:5c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.10.10' (ECDSA) to the list of known hosts.
# [email protected]'s password: 
Last login: Sun Feb 12 01:50:25 2017
# [[email protected] A ~]#
           

使用IP位址在192.168.20.0/24網段外的主機通路伺服器的22端口(被拒絕):

# [[email protected] B ~]# ssh 192.168.10.10
Connecting to 192.168.10.20:22...
Could not connect to '192.168.10.20' (port 22): Connection failed.
           

向INPUT鍊中添加拒絕所有人通路本機12345端口的防火牆政策:

# [[email protected] ~]# iptables -I INPUT -p tcp --dport 12345 -j REJECT
# [[email protected] ~]# iptables -I INPUT -p udp --dport 12345 -j REJECT
# [[email protected] ~]# iptables -L
           

向INPUT鍊中添加拒絕來自于指定192.168.10.5主機通路本機80端口(web服務)的防火牆政策:

# [[email protected] ~]# iptables -I INPUT -p tcp -s 192.168.10.5 --dport 80 -j REJECT
# [[email protected] ~]# iptables -L
           

向INPUT鍊中添加拒絕所有主機不能通路本機888端口和1000至1024端口的防火牆政策:

# [[email protected] ~]# iptables -A INPUT -p tcp --dport 1000:1024 -j REJECT
# [[email protected] ~]# iptables -A INPUT -p udp --dport 1000:1024 -j REJECT
# [[email protected] ~]# iptables -L
           

iptables指令配置的防火牆規則預設會在下一次重新開機時失效,如果讓配置的防火牆政策永久生效,執行儲存:

# [[email protected] ~]# service iptables save
# iptables: Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
           

開放指定的端口

# iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
允許本地回環接口(即運作本機通路本機) 

# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT     
允許已建立的或相關連的通行 

# iptables -A OUTPUT -j ACCEPT #允許所有本機向外的通路 
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT #允許通路22端口 
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT #允許通路80端口 
# iptables -A INPUT -p tcp --dport 21 -j ACCEPT #允許ftp服務的21端口 
# iptables -A INPUT -p tcp --dport 20 -j ACCEPT #允許FTP服務的20端口 
# iptables -A INPUT -j reject #禁止其他未允許的規則通路 
# iptables -A FORWARD -j REJECT #禁止其他未允許的規則通路
           

屏蔽IP

# iptables -I INPUT -s 123.45.6.7 -j DROP #屏蔽單個IP的指令 
# iptables -I INPUT -s 123.0.0.0/8 -j DROP #封整個段即從123.0.0.1到    123.255.255.254的指令 
# iptables -I INPUT -s 124.45.0.0/16 -j DROP #封IP段即從123.45.0.1到123.45.255.254的指令 
# iptables -I INPUT -s 123.45.6.0/24 -j DROP #封IP段即從123.45.6.1到123.45.6.254的指令
           

檢視已添加的iptables規則

# iptables -L -n -v
           

删除已添加的iptables規則

将所有iptables以序号标記顯示,執行:

# iptables -L -n --line-numbers 
           

比如要删除INPUT裡序号為8的規則,執行:

# iptables -D INPUT 8
           

三、 Firewalld

RHEL7是多款防火牆管理工具并存的系統,Firewalld動态防火牆管理器服務(Dynamic Firewall Manager of Linux systems)是目前預設的防火牆管理工具,同時擁有指令行終端和圖形化界面的配置工具,即使是對Linux指令并不熟悉的同學也能快速入門,相比于傳統的防火牆管理工具還支援了動态更新技術。

加入了“zone區域”的概念,簡單來說就是為使用者預先準備了幾套防火牆政策集合(政策模闆),然後我們可以根據生産場景的不同而選擇合适的政策集合,實作了防火牆政策之間的快速切換。

例如我們有一台筆記本電腦每天都要在辦公室、咖啡廳和家裡使用,按常理推斷最安全的應該是家裡的内網,其次是公司辦公室,最後是咖啡廳,如果我們需要在辦公室内允許檔案共享服務的請求流量、回到家中需要允許所有的服務,而在咖啡店則是除了上網外不允許任何其他請求,在以前我們隻能頻繁的進行手動設定,而現在隻需要預設好zone區域集合,然後輕輕點選一下就可以切換過去了上百條政策了,極大的提高了防火牆政策的應用效率

常見的zone區域名稱及應用可見下表(預設為public):

區域 預設規則政策
trusted 允許所有的資料包
home 拒絕流入的資料包,除非與輸出流量資料包相關或是ssh,mdns,ipp-client,samba-client與dhcpv6-client服務則允許
internal 等同于home區域
work 拒絕流入的資料包,除非與輸出流量資料包相關或是ssh,ipp-client與dhcpv6-client服務則允許
public 拒絕流入的資料包,除非與輸出流量資料包相關或是ssh,dhcpv6-client服務則允許
external 拒絕流入的資料包,除非與輸出流量資料包相關或是ssh服務則允許
dmz 拒絕流入的資料包,除非與輸出流量資料包相關或是ssh服務則允許
block 拒絕流入的資料包,除非與輸出流量資料包相關
drop 拒絕流入的資料包,除非與輸出流量資料包相關

配置防火牆設定

系統管理者可通過三種主要方式與firewalld互動:

 直接編輯/etc/firewalld 中的配置檔案(本章節讨論)

 使用firewall-config 圖形工具

 從指令行使用firewall-cmd

fireawlld配置檔案

firewalld配置檔案存儲在兩個位置:/etc/firewalld 和 /usr/lib/firealld。如果相同名稱的配置檔案同時存儲在兩個位置中,則将使用 /etc/firewalld 中的版本。這允許管理者覆寫預設區域和設定,而不必擔心其更改被軟體包更新所擦除。

預定義firewalld服務

# [[email protected] ~]# firewall-cmd --get-services
RH-Satellite-6 amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns  
freeipa-ldap freeipa-ldaps freeipa-replication ftp high-availability http https imaps ipp ipp-
client ipsec iscsi-target kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-
wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql 
proxy-dhcp radius rpc-bind rsyncd samba samba-client smtp ssh telnet tftp tftp-client 
transmission-client vdsm vnc-server wbem-https
# [[email protected] ~]#
           

還存在許多其他預定義服務。可以在/usr/lib/firewalld/service目錄總找到并定義firewalld軟體包中所含預定義服務的配置檔案。

# [[email protected] services]# pwd
/usr/lib/firewalld/services
# [[email protected] services]# ls
amanda-client.xml        iscsi-target.xml  pop3s.xml
bacula-client.xml        kerberos.xml      postgresql.xml
bacula.xml               kpasswd.xml       proxy-dhcp.xml
           

省略。。。。。

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

屏蔽iptables和ip6tables服務

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

3.1 終端管理工具

firewall-cmd指令是Firewalld動态防火牆管理器服務的指令行終端。

它的參數一般都是以“長格式”來執行的

參數 作用
–get-default-zone 查詢預設的區域名稱
–set-default-zone=<區域名稱> 設定預設的區域,永久生效
–get-zones 顯示可用的區域
–get-services 顯示預先定義的服務
–get-active-zones 顯示目前正在使用的區域與網卡名稱
–add-source= 将來源于此IP或子網的流量導向指定的區域
–remove-source= 不再将此IP或子網的流量導向某個指定區域
–add-interleft">–change-interleft">–list-all 顯示目前區域的網卡配置參數,資源,端口以及服務等資訊
–list-all-zones 顯示所有區域的網卡配置參數,資源,端口以及服務等資訊
–add-service=<服務名> 設定預設區域允許該服務的流量
–add-port=<端口号/協定> 允許預設區域允許該端口的流量
–remove-service=<服務名> 設定預設區域不再允許該服務的流量
–remove-port=<端口号/協定> 允許預設區域不再允許該端口的流量
–reload 讓“永久生效”的配置規則立即生效,覆寫目前的

Firewalld服務對防火牆政策的配置預設是目前生效模式(RunTime),配置資訊會随着計算機重新開機而失效,如果想要讓配置的政策一直存在,那就要使用永久生效模式(Permanent),指令中加入–permanent參數。

但這個永久生效模式對它設定的政策需要重新開機後才能自動生效,如果想讓配置的政策立即生效,手動執行一下–reload參數。

顯示預設區域設定為dmz,來自192.168.0.0/24網絡的所有流量都被配置設定給internal區域,而internal區域上打開了用于mysql的網絡端口

檢視Firewalld服務目前所使用的zone區域:

#[[email protected] ~]# firewall-cmd --get-default-zone
           

public

查詢eno16777728網卡在Firewalld服務中的zone區域:

#[[email protected] ~]# firewall-cmd --get-zone-of-interface=eno16777728
public
           

将Firewalld防火牆服務中eno16777728網卡的預設區域修改為external,重新開機後再生效:

# [[email protected] ~]# firewall-cmd --permanent --zone=external 
--change-interface=eno16777728

 success
# [[email protected] ~]# firewall-cmd --get-zone-of-interface=eno16777728
public
# [[email protected] ~]# firewall-cmd --permanent --get-zone-of-interface
=eno16777728
external
           

将Firewalld防火牆服務的目前預設zone區域設定為public:

# [[email protected] ~]# firewall-cmd --set-default-zone=public
success
# [[email protected] ~]# firewall-cmd --get-default-zone 
public
# [[email protected] ~]# firewall-cmd --get-active-zones
           

啟動/關閉Firewalld防火牆服務的應急狀況模式,阻斷一切網絡連接配接(當遠端控制伺服器時請慎用。):

# [[email protected] ~]# firewall-cmd --panic-on
success
# [[email protected] ~]# firewall-cmd --panic-off
success
           

查詢在public區域中的ssh與https服務請求流量是否被允許:

# [[email protected] ~]# firewall-cmd --zone=public --query-service=ssh
yes
# [roo[email protected] ~]# firewall-cmd --zone=public --query-service=https
 no
           

将Firewalld防火牆服務中https服務的請求流量設定為永久允許,并目前立即生效:

# [[email protected] ~]# firewall-cmd --zone=public --add-service=https
success
# [[email protected] ~]# firewall-cmd --permanent --zone=public --add-service=https
success
# [[email protected] ~]# firewall-cmd --reload
success
           

将Firewalld防火牆服務中http服務的請求流量設定為永久拒絕,并目前立即生效:

# [[email protected] ~]# firewall-cmd --permanent --zone=public 
--remove-service=http 
success
# [[email protected] ~]# firewall-cmd --reload 
success
           

将Firewalld防火牆服務中8080和8081的請求流量允許放行,但僅限目前生效:

# [[email protected] ~]# firewall-cmd --zone=public --add-port=8080-8081/tcp
success
# [[email protected] ~]# firewall-cmd --zone=public --list-ports 
8080-8081/tcp
           

将原本通路本機888端口号的請求流量轉發到22端口号,要求目前和長期均有效:

流量轉發指令格式:

# firewall-cmd --permanent --zone=<區域> --add-forward-port=port=<源端口号>:proto=<協定>:toport=<目标端口号>:toaddr=<目标IP位址>

# [[email protected] ~]# firewall-cmd --permanent --zone=public 
--add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
success
# [[email protected] ~]# firewall-cmd --reload
success
           

在客戶機使用ssh指令嘗試通路192.168.10.10主機的888端口:

# [[email protected] A ~]# ssh -p 888 192.168.10.10
The authenticity of host '[192.168.10.10]:888 ([192.168.10.10]:888)' can't be established.
ECDSA key fingerprint is b8:25:88:89:5c:05:b6:dd:ef:76:63:ff:1a:54:02:1a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.10.10]:888' (ECDSA) to the list of known hosts.
# [email protected]'s password:
Last login: Sun Jul 19 21:43:48 2017 from 192.168.10.10
           

在Firewalld防火牆服務中配置一條富規則,拒絕所有來自于192.168.10.0/24網段的使用者通路本機ssh服務(22端口):

# [[email protected] ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule    family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
success
# [[email protected] ~]# firewall-cmd --reload
success
           

在客戶機使用ssh指令嘗試通路192.168.10.10主機的ssh服務(22端口):

# [[email protected] A ~]# ssh 192.168.10.10
Connecting to 192.168.10.10:22...
Could not connect to '192.168.10.10' (port 22): Connection failed.
           

3.2富規則

除了firewalld 提供的正常區域和服務文法之外,管理者還有另外兩種選項來添加防火牆規則:直接規則和富規則。

直接規則

直接規則允許管理者将手動編碼的 {ip,ip6,eb}tables 規則插入到firewalld 管理區域中。盡管這些規則很強大,并且暴露的核心 netfilter 子系統功能不會通過其他手段暴露,但可能難以管理。直接規則所提供的靈活性也低于标準規則和富規則。

富規則

firewalld 富規則為管理者提供了一種表達性語言,通過這種語言可表達 firewalld 的基本文法中未涵蓋的自定義防火牆規則;例如,僅允許從單個IP位址(而非通過某個區域路由的所有IP位址)連接配接到服務。

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

排序規則

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

執行個體:

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

富規則記錄

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

示例參考P115

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

實驗練習:

1、基本操作

systemctl mask iptables
systemctl mask ip6tables
systemctl mask ebtables
firewall-cmd --help
firewall-cmd --list-all
firewall-cmd --get-active-zones
firewall-cmd --zone=work --list-all
firewall-cmd --get-default-zone
firewall-cmd --set-default-zone=public
firewall-cmd --add-service=http
firewall-cmd --remove-service=http
firewall-cmd --add-port=8080/tcp
firewall-cmd --remove-port=8080/tcp
firewall-cmd --add-source=192.168.100.0/24
firewall-cmd --remove-source=192.168.100.0/24
firewall-cmd --add-icmp-block=echo-request
firewall-cmd --remove-icmp-block=echo-request
firewall-cmd --zone=work --add-service=http
firewall-cmd --permanent --zone=work --add-service=http
firewall-cmd --reload
firewall-cmd --get-zone-of-interface=eno16777736
firewall-cmd --get-zone-of-source=192.168.100.0/24
           

2、允許網站通路

#在qin1上

yum install httpd
echo firewalldtest > /var/www/html/index.html
systemctl restart httpd
firewall-cmd --permanent --add-icmp-block=echo-request
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --remove-service=ssh
firewall-cmd --reload
           

#在qin2上

ping 192.168.100.1
ssh 192.168.100.1
http://192.168.100.1
           

3、接口和source沖突

#在qin1上

yum install httpd
echo firewalldtest > /var/www/html/index.html
systemctl restart httpd
firewall-cmd --add-source=192.168.100.0/24
firewall-cmd --add-service=http
           

測試qin2通過ping、ssh、http等方式通路qin1,可通路qin1網站是否可行

firewall-cmd --zone=drop --change-interface=eno16777736

測試qin2通過ping、ssh、http等方式通路qin1,可通路qin1網站是否可行

firewall-cmd --zone=trusted --change-source=192.168.100.0/24

測試qin2通過ping、ssh、http等方式通路qin1,可通路qin1網站是否可行

#此實驗不可加–permanent,否則無法生效

4、富規則端口轉發

#在qin1上

setenforce 0
systemctl start firewalld
firewall-cmd --add-service=http
firewall-cmd --add-port=8899/tcp
yum install -y httpd
vim /etc/hosts
192.168.100.1   www.qin.com		#增加
192.168.100.1   www.bing.com		#增加
vim /etc/httpd/conf/httpd.conf
Listen 8899				#增加
mkdir /var/www/qin
mkdir /var/www/bing
echo qin80 > /var/www/qin/index.html
echo bing8899 > /var/www/bing/index.html
vim /etc/httpd/conf.d/0.conf
<VirtualHost 192.168.100.1:80>
DocumentRoot "/var/www/qin"
ServerName www.qin.com
</VirtualHost>
<VirtualHost 192.168.100.1:8899>
DocumentRoot "/var/www/bing"
ServerName www.bing.com
</VirtualHost>
systemctl restart httpd
           

#在qin1和qin2上

http://192.168.100.1
http://192.168.100.1:8899

# 在qin1上
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" forward-port port="80"     protocol="tcp" to-port="8899""
firewall-cmd --reload
           

在qin1和qin2上

http://192.168.100.1 #qin1不過防火牆,是以不做轉發,qin2過防火牆,産生端口轉發

3.3 端口轉發

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

端口轉發示例 ssh 443端口轉發

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

desktop 主機可以通過443端口使用sshd服務。

3.4 圖形管理工具

Firewalld防火牆圖形化的界面如圖所示,功能分别為1:選擇"目前立即生效(Runtime)"或"重新開機後長期生效(Permanent)"配置、2:可選政策集合區域清單、3:常用系統服務清單、4:目前正在使用的區域、5:管理目前被選中區域中的服務、6:管理目前被選中區域中的端口、7:開啟或關閉SNAT(僞裝)技術、8:設定端口轉發政策、9:控制ICMP協定請求流量、10:管理防火牆的富規則、11:管理網卡裝置、12:被選中區域的服務,前面有√的表示允許放行、13:Firewalld防火牆圖形化工具的狀态。

Firewall-config圖形化管理工具在配置政策後,不需要點選儲存或完成按鈕,隻要有修改内容工具就會自動儲存好。

将目前區域中http服務的請求流量允許放行,但僅限目前生效,如圖所示:

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單
firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

添加一條允許放行8080-8088端口号(tcp協定)入站請求資料的政策,并且将配置模式提前設定為永久長期生效,以達到重新開機後依然生效的目的,配置過程如圖所示。

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

配置防火牆政策允許8080-8088端口号的請求流量資料

在菜單中點選Reload Firewalld選項,來讓配置檔案立即生效,這與在指令行終端中執行了–reload參數的效果是一樣的

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

讓防火牆永久生效政策配置資訊立即生效

SNAT源位址轉換協定是為了解決IP位址資源匮乏問題而設計的技術協定,SNAT技術能夠使得多個内網使用者通過一個外網IP位址上網。

如圖所示,在一個區域網路中有多台主機,如果網關之上沒有經過SNAT處理,那麼請求過後的回複資料包就不能在網際網路中找到這個私網IP位址,是以使用者也就不能順利取得想要的資源了,

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

沒有使用SNAT技術的網絡 但是在如所示的拓撲中,因使用了SNAT源位址轉換技術,伺服器應答後先由網關伺服器接收,再分發給内網的使用者主機,進而使得使用者順利的拿到了所需資源。 ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20190807142252250.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDI5Mjk3,size_16,color_FFFFFF,t_70) 使用SNAT技術處理過的網絡 使用iptables指令做SNAT源位址轉換是一件很麻煩的事情,但在Firewalld防火牆圖形化工具中,我們隻需要按照如圖所示,點選開啟僞裝區域技術就自動開啟了SNAT源位址轉換技術,具體效果以後來驗證。 ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20190807142213713.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDI5Mjk3,size_16,color_FFFFFF,t_70) 開啟防火牆的SNAT(僞裝)技術 将所有向本機888端口請求的流量轉發到22端口上,然後讓防火牆配置政策目前及重新開機後都生效,隻要能實作需求的功能,無論用文本管理工具還是圖形管理工具都是可以的。 ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20190807141957797.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDI5Mjk3,size_16,color_FFFFFF,t_70) ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20190807142032907.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDI5Mjk3,size_16,color_FFFFFF,t_70) 讓防火牆永久生效政策配置資訊立即生效 在Firewalld中的“富規則”代表着更細緻、更詳細的政策配置方法,可以針對某個系統服務、端口号、來源位址、目的位址等諸多元素進行有針對性的政策配置,富規則政策的優先級是在政策中最高的。如圖所示,可以讓192.168.10.20的主機能夠通路到本機的1234端口号。

firewalld 端口、富規則一、 防火牆管理工具Netfilter和firewalld概念與netfilter互動二、iptables三、 Firewalld3.1 終端管理工具排序規則執行個體:富規則記錄實驗練習:1、基本操作端口轉發示例 ssh 443端口轉發3.4 圖形管理工具四、服務的通路控制清單

配置防火牆富規則政策 如果生産環境中有多塊網卡在同時提供着服務(這種情況很常見),自然對内網和對外網的網卡要選擇的防火牆政策區域也不一樣,如圖所示,将網卡與防火牆政策zone區域做綁定,這樣對不同網卡來源的請求流量進行不同政策區域的有針對性監控,效果會更好将網卡與防火牆zone區域做綁定 ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20190807141617969.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDI5Mjk3,size_16,color_FFFFFF,t_70)

四、服務的通路控制清單

Tcp_wrappers是紅帽RHEL7系統中預設已經啟用的一款流量監控程式,它能夠根據來訪主機位址與本機目标服務程式做允許或拒絕操作。

換句話說,Linux系統中其實有兩個層面的防火牆,第一種是前面講到的基于TCP/IP協定的流量過濾防護工具,而Tcp_wrappers服務則是能夠對系統服務進行允許和禁止的防火牆,進而在更高層面保護了Linux系統的安全運作。

控制清單檔案修改後會立即生效,系統将會先檢查允許政策規則檔案(/etc/hosts.allow),如果比對到相應的允許政策則直接放行請求,如果沒有比對則會去進一步比對拒絕政策規則檔案(/etc/hosts.deny)的内容,有比對到相應的拒絕政策就會直接拒絕該請求流量,如果兩個檔案全都沒有比對到的話也會預設放行這次的請求流量。

下表中列出了常見的情況:

用戶端類型 示例 滿足示例的用戶端清單
單一主機 192.168.10.10 IP位址為192.168.10.10的主
指定網段 192.168.10. IP段為192.168.10.0/24的主機
指定網段 192.168.10.0 255.255.255.0 IP段為192.168.10.0/24的主機
指定DNS字尾 .rhce.com 所有DNS字尾為.rhce.com的主機
指定主機名稱 www.rhce.com 主機名稱為www.rhce.com的主機
指定所有用戶端 ALL 所有主機全部包括在内

在正式配置Tcp_wrappers服務前有兩點注意的地方,

第一,在寫禁止項目的時候一定要寫上的是服務名稱,而不是某種協定的名稱,

第二,推薦先來編寫拒絕規則,這樣可以比較直覺的看到相應的效果。

先來通過拒絕政策檔案禁止下所有通路本機sshd服務的請求資料(無需修改原有的注釋資訊):

# [[email protected] ~]# vim /etc/hosts.deny
sshd:*

# [[email protected] ~]# ssh 192.168.10.10
  ssh_exchange_identification: read: Connection reset by peer
           

接下來在允許政策檔案中添加放行所有來自于192.168.10.0/24這個網段通路本機sshd服務請求的政策,伺服器馬上就允許了通路sshd服務的請求,效果非常直覺:

# [[email protected] ~]# vim /etc/hosts.allow
# See 'man tcpd' for information on tcp_wrappers
sshd:192.168.10.

# [[email protected] ~]# ssh 192.168.10.10

# The authenticity of host '192.168.10.10 (192.168.10.10)' can't be established.
ECDSA key fingerprint is 70:3b:5d:37:96:7b:2e:a5:28:0d:7e:dc:47:6a:fe:5c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.10.10' (ECDSA) to the list of known hosts.

#[email protected]'s password: 
Last login: Wed May 4 07:56:29 2016
           

1:紅帽RHEL7系統中iptables已經被firewalld服務徹底取代?

錯,在系統中iptables和firewalld服務均可使用。

2:請您簡述下防火牆拒絕規則中的DROP和REJECT動作有何不同之處?

DROP動作是丢包,不響應,而REJECT動作是拒絕請求,回應給對方拒絕資訊。

3:如何将iptables服務的INPUT規則鍊預設政策設定為DROP動作?

執行指令iptables -P INPUT DROP後即可生效。

4:使用iptables指令配置禁止來自于192.168.10.0/24網段通路本機sshd服務(22端口)的防火牆政策應該怎麼寫?

執行指令iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j REJECT後即可生效。

5:請您簡述下firewalld防火牆管理工具的zone區域作用?

我們可以依據不同的工作場景來調用不同的firewalld區域,實作對大量防火牆政策的快速切換。

6:如何在firewalld防火牆管理工具中将預設的zone區域設定為dmz?

執行指令firewall-cmd --set-default-zone=public後即可生效。

7:如何讓firewalld防火牆管理工具中永久生效政策(Permanent)立即生效可用呢?

執行指令firewall-cmd --reload後即可生效。

8:使用SNAT源位址轉換協定的目的是什麼?

SNAT源位址轉換協定是為了解決IP位址資源匮乏問題而設計的技術協定,SNAT技術能夠使得多個内網使用者通過一個外網IP位址上網。

9:Tcp_wrappers服務分别有允許政策配置檔案和拒絕政策配置檔案,請問比對順序是怎麼樣的?

Tcp_wrapper會依次比對允許政策配置檔案→拒絕政策配置檔案,如果都沒有比對到也會預設放行流量。

繼續閱讀