第十節課:第8章iptables和firewalld
網絡卡配置:
物理機:192.168.10.1/24
伺服器:192.168.10.10/24
客戶端:192.168.10.20/24
1、vim /etc/sysconfig/network-scripts/ifcfg-eno16777728
2、nmtui(5和6中是setup)
3、nm-connection-editor
4、右上角點選
linux中一切都是檔案
配置服務就是更改服務的配置檔案
想獲取服務最新配置需要重啟服務
第八章
8.1、防火牆管理工具
RHEL7中firewalld取代了iptables,但是在RHEL7中兩款防火牆工具都可以使用。
8.2、iptables
策略與規則連
iptables的策略條目成為規則,多條規則組成一個規則鏈,規則鏈按照資料包的位置不同分類:
PREROUTING:進行路由選擇前處理資料包
INPUT:處理流入的資料包
OUTPUT:處理流出的資料包
FORWARD
POSTROUTING:進行路由選擇後處理資料包
而針對資料包處理的動作相應的有:
ACCEPT:允許流量通過
REJECT:拒絕流量通過
LOG:記錄日誌資訊
DROP:拒絕流量通過
iptables中命令引數
iptables中有“四表五鏈”的概念,但這裡不用瞭解這些概念。
iptables可根據原地址目標地址等資訊由上至下依次匹配,一旦匹配會立即作出相應動作並跳出匹配列表。因此需把優先順序高的策略放到前面。
-P //設定預設策略
-F //清空規則鏈
-L //檢視規則鏈
-A //在規則鏈的末尾加入新規則
-I num // 在規則鏈的頭部加入新規則
-D num // 刪除某一條規則
-s //匹配來源地址IP/MASK,加歎號“!”表示除這個IP外
-d //匹配目標地址
-i //網絡卡名稱 匹配從這塊網絡卡流入的資料
-o // 網絡卡名稱 匹配從這塊網絡卡流出的資料
-p // 匹配協議,如TCP、UDP、ICMP
--dport num //匹配目標埠號
--sport num //匹配來源埠號
-j //動作匹配
8.3、firewalld
firewalld擁有給予cli和gui兩種管理方式。
firewall加入了區域概念,也就是防火牆策略模板,方便在不同的場合快速切換。常見的區域有一下幾種:
trusted //允許所有的資料包
home //拒絕流入的流量,除非與流出的流量相關;而如果流量與ssh、mdns、ipp-client、amba-client與dhcpv6-client服務相關,則允許流量
internal // 等同於home區域
work //拒絕流入的流量,除非與流出的流量相關;而如果流量與ssh、ipp-client與dhcpv6-client服務相關,則允許流量
public // 拒絕流入的流量,除非與流出的流量相關;而如果流量與ssh、dhcpv6-client服務相關,則允許流量
external // 拒絕流入的流量,除非與流出的流量相關;而如果流量與ssh服務相關,則允許流量
dmz //拒絕流入的流量,除非與流出的流量相關;而如果流量與ssh服務相關,則允許流量
block //拒絕流入的流量,除非與流出的流量相關
drop //拒絕流入的流量,除非與流出的流量相關
終端管理工具
firewalld的命令列是效率非常高的工作方式,CLI管理的命令列為:firewall-cmd,引數一般為長格式:
--get-default-zone //查詢預設的區域名稱
--set-default-zone=<區域名稱> //設定預設的區域,使其永久生效
--get-zones //顯示可用的區域
--get-services //顯示預先定義的服務
--get-active-zones //顯示當前正在使用的區域與網絡卡名稱
--add-source= //將源自此IP或子網的流量導向指定的區域
--remove-source= //不再將源自此IP或子網的流量導向某個指定區域
--add-interface=<網絡卡名稱> //將源自該網絡卡的所有流量都導向某個指定區域
--change-interface=<網絡卡名稱> //將某個網絡卡與區域進行關聯
--list-all //顯示當前區域的網絡卡配置引數、資源、埠以及服務等資訊
--list-all-zones //顯示所有區域的網絡卡配置引數、資源、埠以及服務等資訊
--add-service=<服務名> // 設定預設區域允許該服務的流量
--add-port=<埠號/協議> //設定預設區域允許該埠的流量
--remove-service=<服務名> //設定預設區域不再允許該服務的流量
--remove-port=<埠號/協議> //設定預設區域不再允許該埠的流量
--reload //讓“永久生效”的配置規則立即生效,並覆蓋當前的配置規則
--panic-on //開啟應急狀況模式
--panic-off //關閉應急狀況模式
--permanent //若要是永久生效就加此引數
firewall-cmd的永久生效模式需要重啟才可以生效,想要立即生效,需要手動執行firewall-cmd --reload 命令。
另外還有一些其他實用的引數命令:
--get-zone-of-interface=<網絡卡名稱> //查詢當前網絡卡所在區域
--zone //用於設定或查詢區域
--list- //後面跟服務,埠等等,列出相關的查詢
流量轉發命令:firewall-cmd --permanent --zone=<區域> --add-forward-port=port=<源埠號>:proto=<協議>:toport=<目標埠號>:toaddr=<目標IP地址>
例如:firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
firewalld中富規則是表示更詳細,更細緻的策略配置,可針對服務,埠等諸多資訊更有針對性的策略配置,優先順序也最高。
例:firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.10/24" service name="ssh" reject"
fileewalld的圖形化管理工具:
1:選擇執行時(Runtime)模式或永久(Permanent)模式的配置。
2:可選的策略集合區域列表。
3:常用的系統服務列表。
4:當前正在使用的區域。
5:管理當前被選中區域中的服務。
6:管理當前被選中區域中的埠。
7:開啟或關閉SNAT(源地址轉換協議)技術。
8:設定埠轉發策略。
9:控制請求icmp服務的流量。
10:管理防火牆的富規則。
11:管理網絡卡裝置。
12:被選中區域的服務,若勾選了相應服務前面的複選框,則表示允許與之相關的流量。
13:firewall-config工具的執行狀態。
(借鑑請改動)
複習:nmtui、firewall-cmd
預習:第八章,第九章