Linux網路安全技術與實現第2章之原理及實驗
2.2 何謂netfilter
netfilter的四個表是filter、nat、mangle及raw表。
- filter:filter是Netfilter中最重要的機制,其任務是執行資料包的過濾操作,也就是起到防火牆的作用。
- nat:nat(Network Address Translation,NAT)也是防火牆上一個不可或缺的重要機制,比較通俗的方式來說,其功能就是IP分享器,只不過其所執行的功能,比一般市場上的IP分享器功能強大得多。
- mangle:mangle是一個很特殊的機制,我們可以通過mangle機制來修改經過防火牆內資料包內容。
- raw:負責加快資料包穿過防火牆機制的速度,由此提高防火牆的效能。
不同的表有屬於獨立的幾個不同的鏈,而這個鏈的空間就是我們存放“規則”的地方。當然,不同的鏈其功能及用途也是不一樣的。
使用filter機制來構建閘道器式防火牆
假設192.168.31.10是因特網上的一臺主機,執行了smtp,pop3,http服務。
- 192.168.10.20只能訪問外網192.168.31.10的smtp和pop3服務。
- 內網主機192.168.10.0/24網段上的其它主機可以訪問因特網上的DNS、SMTP、POP3,http,及sshd服務。
- 因特網上的主機不得訪問企業內的任何主機。
1 #/bin/bash
2 #===============< Set Variable >=====================================
3 IPT=/sbin/iptables
4 SRV=192.168.31.10
5 ACC_PC=192.168.10.20
6 #=======================< Set Default Policy >=======================
7 $IPT -t filter -P INPUT DROP
8 $IPT -t filter -P FORWARD DROP
9 #===============< Clear Original Rule >> =============================
10 $IPT -t filter -F
11 #==============< Set-INPUt RULE>>======================================
12 $IPT -A INPUT -p tcp -m state --state INVALID -j DROP
13 $IPT -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
14 $IPT -t filter -A INPUT -p tcp -s 192.168.31.0/24 --dport 22 -j ACCEPT
15 #==============< Set FORWARD RULE>>====================================
16 $IPT -A FORWARD -i ens33 -o ens37 -m state --state INVALID -j DROP
17 $IPT -A FORWARD -i ens33 -o ens37 -m state --state ESTABLISHED,RELATED -j ACCEPT
18 $IPT -A FORWARD -i ens37 -o ens33 -p tcp -s $ACC_PC -d $SRV --dport 25 -j ACCEPT
19 $IPT -A FORWARD -i ens37 -o ens33 -p tcp -s $ACC_PC -d $SRV --dport 110 -j ACCEPT
20 $IPT -A FORWARD -i ens37 -o ens33 -p all -s $ACC_PC -j DROP
21 $IPT -A FORWARD -i ens37 -o ens33 -p tcp --dport 80 -j ACCEPT
22 $IPT -A FORWARD -i ens37 -o ens33 -p udp --dport 53 -j ACCEPT
23 $IPT -A FORWARD -i ens37 -o ens33 -p udp --dport 110 -j ACCEPT
24 $IPT -A FORWARD -i ens37 -o ens33 -p tcp --dport 22 -j ACCEPT
~
第1行
設定Shell直譯器的路徑。
第2-5行
將未來可能會變動的資訊或太長的命令簡化成“變數”
第6-8行
設定INPUT 及FORWARD鏈的預設策略為DROP,其目的分別如下:
設定INPUT鏈的預設策略為DROP的目的:雖然本示例的主要目的是使用閘道器式防火牆來保護及限制企業內的主機,但請千萬別忽略了防火牆自身的安全,否則防火牆若被入侵了,整個企業的安全防護就形同虛設了。因此,我們拒絕了所有對防火牆的連線操作,但別忘了,因為我們有可能在防火牆主機執行如軟體更新等需要對外產生連線的操作,所以在此並沒有將OUTPUT鏈的預設策略設定為DROP。
設定FORWARD鏈的預設策略為DROP的目的:因為本示例是以嚴格的方式來控制企業對外的連線,以及因特網對企業內的連線,因此,筆者將fFORWARD鏈的預設策略設定為DROP,如此一來,企業內外就等於“斷線”的狀態。稍後,我們再從FORWARD鏈中逐一啟用允許的對外連線通道陽即可。
第10行
清除原有的防火牆規則
第11-14行,
因為INPUT鏈的預設策略已設定為DROP,因此將導致對外建立連線時應答資料包無法正常穿過防火牆的問題,我們必須在INPUT鏈中設定ESTABLISHED 及RELATED狀態的資料包,才可以正常地返回。
第16行,
針所有從因特網送到企業內部且狀態是INVALID的資料包丟棄。
第17行,允許所有企業內部對外建立連線時所產生的應答資料包正常返回企業內部。
第18-20行
設定192.168.10.20主機只能訪問因特網上192.168.31.10這臺主機的SMTP及POP3服務。
第21行-24行
在192.168.10.0/24網段中的主機只能訪問因特網上的SMTP、POP3、HTTP及SSHD服務。
netfilter的NAT機制
SNAT
iptables -t nat -A POSTROUTING -o ens33 -s 192.168.10.0/24 -j SNAT --to 192.168.31.100
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
iptables -t nat -A PREROUTING -d 192.168.1.196 -p tcp --dport 80 -j DNAT --to-destination 192.168.10.101
相關文章
- 《網路與系統攻防技術》實驗八實驗報告
- 《網路與系統攻防技術》實驗七
- 網路安全實用技術培訓
- 20222312 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222305 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222410 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222327 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222323 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- # 20222403 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222406 2024-2025-1 《網路與系統攻防技術》實驗五實驗報告
- 20222407 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222406 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222325 2024-2025-1 《網路與系統攻防技術》實驗五實驗報告
- 20222311 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222405 2024-2025-1 《網路與系統攻防技術》實驗六實驗報告
- 20222318 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222414 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222418 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222410 2024-2025-1 《網路與系統攻防技術》實驗三實驗報告
- 20222305 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222311 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222413 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222416 2024-2025-1 《網路與系統攻防技術》實驗二實驗報告
- 20222404 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222302 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222318 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222311 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222321 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222402 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222401 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222414 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222314 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222407 2024-2025-1《網路與系統攻防技術》實驗一實驗報告
- 20222301 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222420 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222406 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222413 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告
- 20222417 2024-2025-1 《網路與系統攻防技術》實驗一實驗報告