《Linux系統(tǒng)iptables防火墻 實(shí)驗(yàn)指導(dǎo)書》由會(huì)員分享,可在線閱讀,更多相關(guān)《Linux系統(tǒng)iptables防火墻 實(shí)驗(yàn)指導(dǎo)書(5頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、《網(wǎng)絡(luò)安全》實(shí)驗(yàn)指導(dǎo)書
Linux系統(tǒng)iptables防火墻
一、實(shí)驗(yàn)?zāi)康?
1、熟悉和掌握TCP/IP協(xié)議的基礎(chǔ)概念和方法;
2、掌握防火墻的概念、功能分類及實(shí)現(xiàn)方法;
3、掌握Linux系統(tǒng)防火墻和iptables防火墻的配置方法。
二、實(shí)驗(yàn)原理
1、防火墻的任務(wù)
防火墻在實(shí)施安全的過程中是至關(guān)重要的。一個(gè)防火墻策略要符合四個(gè)目標(biāo),而每個(gè)目標(biāo)通常都不是一個(gè)單獨(dú)的設(shè)備或軟件來實(shí)現(xiàn)的。大多數(shù)情況下防火墻的組件放在一起使用以滿足公司安全目的需求。防火墻要能滿足以下四個(gè)目標(biāo):
1> 實(shí)現(xiàn)一個(gè)公司的安全策略
防火墻的主要意圖是強(qiáng)制執(zhí)行你的安全策略,比如你的安全策略需要對(duì)M
2、AIL服務(wù)器的SMTP流量做限制,那么你要在防火墻上強(qiáng)制這些策略。
2> 創(chuàng)建一個(gè)阻塞點(diǎn)
防火墻在一個(gè)公司的私有網(wǎng)絡(luò)和分網(wǎng)間建立一個(gè)檢查點(diǎn)。這種實(shí)現(xiàn)要求所有的流量都要經(jīng)過這個(gè)檢查點(diǎn)。一旦檢查點(diǎn)被建立,防火墻就可以監(jiān)視,過濾和檢查所有進(jìn)出的流量。網(wǎng)絡(luò)安全中稱為阻塞點(diǎn)。通過強(qiáng)制所有進(jìn)出的流量都通過這些檢查點(diǎn),管理員可以集中在較少的地方來實(shí)現(xiàn)安全目的。
3> 記錄internet活動(dòng)
防火墻還能強(qiáng)制記錄日志,并且提供警報(bào)功能。通過在防火墻上實(shí)現(xiàn)日志服務(wù),管理員可以監(jiān)視所有從外部網(wǎng)或互聯(lián)網(wǎng)的訪問。好的日志是適當(dāng)網(wǎng)絡(luò)安全的有效工具之一。
4> 限制網(wǎng)絡(luò)暴露
防火墻在你的網(wǎng)絡(luò)周圍創(chuàng)建了一個(gè)保護(hù)
3、的邊界。并且對(duì)于公網(wǎng)隱藏了內(nèi)部系統(tǒng)的一些信息以增加保密性。當(dāng)遠(yuǎn)程節(jié)點(diǎn)偵測(cè)你的網(wǎng)絡(luò)時(shí),他們僅僅能看到防火墻。遠(yuǎn)程設(shè)備將不會(huì)知道你內(nèi)部網(wǎng)絡(luò)的布局以及都有些什么。防火墻提高認(rèn)證功能和對(duì)網(wǎng)絡(luò)加密來限制網(wǎng)絡(luò)信息的暴露。通過對(duì)所能進(jìn)入的流量進(jìn)行檢查,以限制從外部發(fā)動(dòng)的攻擊。
2、iptables及其命令格式
iptables是Linux 2.4.X 的內(nèi)核防火墻
,其工作原理為對(duì)經(jīng)過網(wǎng)絡(luò)模塊的數(shù)據(jù)包的處理,各數(shù)據(jù)包按流經(jīng)位置進(jìn)入相應(yīng)的規(guī)則鏈,iptables逐條對(duì)比鏈內(nèi)的
規(guī)則,如果滿足條件,則進(jìn)行相應(yīng)的動(dòng)作。其
配置文件為/etc/sysconfig/iptables。
命令格式: i
4、ptables 指令+規(guī)則鏈+條件+動(dòng)作
l iptables指令(對(duì)規(guī)則鏈的操作)
n–A chain --append 添加到規(guī)則鏈中
n–D chain --delete 從規(guī)則鏈中刪除匹配的規(guī)則
n–L[chain] --list 列出在一條鏈或所有鏈上的規(guī)則 (--line-numbers)
n–F [chain] --flush 清除一條鏈或所有鏈上的規(guī)則
n-P chain target --policy 把一個(gè)規(guī)則鏈上的策略改變?yōu)槟繕?biāo)
niptables內(nèi)置有三個(gè)表filter、nat、mangle,缺省為filter表,可使用-t參數(shù)來選擇操作的表,用戶
5、可自定義表
l iptables規(guī)則鏈(chain)
進(jìn)來的數(shù)據(jù)包
路由
本機(jī)
發(fā)出的數(shù)據(jù)包
FORWARD
INPUT
OUTPUT
l Iptables條件
n-s IP地址 源地址
n-d IP地址 目的地址
n-i 接口名 接收的接口
n-o 接口名 發(fā)送的接口
n-p tcp/udp/icmp/47 協(xié)議
n--dport 目的端口
n--sport 源端口
n
--syn 建立連接請(qǐng)求
n-m state
6、 ESTABLISHED / RELATED / NEW / INVALID 狀態(tài)包過濾
l iptables動(dòng)作(policy)(對(duì)數(shù)據(jù)包的操作)
n -j ACCEPT
n -j DROP
n -j REJECT( tcp-reset/icmp-port-unreachable )
三、實(shí)驗(yàn)步驟
1、 準(zhǔn)備工作
l 同一局域網(wǎng)內(nèi)的2臺(tái)PC
a) A的操作系統(tǒng)為Linux,在A安裝網(wǎng)絡(luò)服務(wù)及配置iptables;
b) B對(duì)A的配置進(jìn)行驗(yàn)證,主要使用基于icmp協(xié)議的ping命令和基于tcp協(xié)議的ftp相關(guān)命令或軟件,假定其ip為10.10
7、.96.123。
l 在A:
1)安裝vsftpd
2)增加1個(gè)一般用戶,如abc
3)添加新增用戶為ftp用戶
gedit /etc/vsftpd/vsftpd.conf,加入
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/ulis
gedit /etc/vsftpd/ulis,加入
abc
4)驗(yàn)證系統(tǒng)已打開iptables (默認(rèn))
system setting -> server setting -> service config -> iptables
l 熟悉使用netstat
8、命令分析當(dāng)前的網(wǎng)絡(luò)連接狀態(tài)
2、 配置Linux的系統(tǒng)防火墻
1) A: start -> system setting -> security level -> enable ftp(only),允許系統(tǒng)建立ftp連接
2) B: ftp測(cè)試之 (使用user psw ls lcd get等命令)
3) A: start -> system setting -> security level -> disable ftp,禁止系統(tǒng)建立ftp連接
4) B測(cè)試之
3、 使用iptables命令配置防火墻,熟悉幾類基本過濾原則的配置方法(有關(guān)ftp的操作,必須確認(rèn)系統(tǒng)防火墻允
9、許建立ftp連接,因其優(yōu)先級(jí)高于iptables配置)
0> 備份 /etc/sysconfig/iptables
1> 阻塞某IP的連接
A: 阻塞
# iptables -A INPUT -s 10.10.96.123 -j DROP
B: ping,測(cè)試之
A: 取消阻塞
# iptables -D INPUT -s 10.10.96.123 -j DROP
B: ping,測(cè)試之
(以下只列出實(shí)驗(yàn)過程的關(guān)鍵步驟,其他命令與測(cè)試請(qǐng)?jiān)趯?shí)驗(yàn)過程中補(bǔ)足)
2>阻塞某網(wǎng)段的連接
A: # iptables -A INPUT -s 10.10.96.1/24 -j D
10、ROP
A: # iptables -D INPUT -s 10.10.96.1/24 -j DROP
3>阻塞某協(xié)議的連接,如icmp
A:# iptables -A INPUT -p icmp -j DROP
B: ping,測(cè)試之
A:# iptables -D INPUT -p icmp -j DROP
4> 阻塞某端口的連接,如ftpcmd使用的21端口
A:# iptables -A INPUT -p tcp --dport 21 -j DROP
B: ftp,測(cè)試之
A:# iptables -D INPUT -p tcp --dport 21 -j D
11、ROP
5>阻塞連接請(qǐng)求(選做,須較熟悉ftp模式;因系統(tǒng)已允許ftp的命令連接,iptables只能控制數(shù)據(jù)連接,即非21端口的建立)
5.1 阻塞本機(jī)到外部的連接
A:# iptables -A OUTPUT -p tcp --syn -j DROP
B: ftp,使用port模式get文件(port模式:服務(wù)器發(fā)起數(shù)據(jù)連接)
A:# iptables -D OUTPUT -p tcp --syn -j DROP
5.2阻塞本機(jī)到外部的連接-2
A:# iptables -A OUTPUT -p tcp --syn -j DROP
A: 嘗試使用其他方法主動(dòng)連接B的
12、服務(wù)
A:# iptables -D OUTPUT -p tcp --syn -j DROP
5.3 阻塞外部主機(jī)到本機(jī)的連接
A:# iptables -A INPUT -p tcp --syn -j DROP
B: ftp,使用pasv模式get文件(pasv模式:客戶端發(fā)起數(shù)據(jù)連接)
A:# iptables -D INPUT -p tcp --syn -j DROP
6>選擇以上若干實(shí)驗(yàn)步驟,使用iptables動(dòng)作REJECT代替DROP,比較它們的區(qū)別,思考使用DROP的優(yōu)點(diǎn)。
7>(選學(xué))從‘iptables參考手冊(cè)’ 選學(xué)-m state、-m limit、-m mac、-m owner等配置選項(xiàng)。
8>結(jié)束iptables命令實(shí)驗(yàn),恢復(fù) /etc/sysconfig/iptables
四、實(shí)驗(yàn)報(bào)告要求
1. 報(bào)告條理清晰,重點(diǎn)突出,排版工整。
2. 雙面打?。坏谝豁擁撁紝懓嗉?jí)、學(xué)號(hào)、姓名,時(shí)間;完成本學(xué)期所有實(shí)驗(yàn)后,各報(bào)告依順序疊好,在左上角以一枚釘書釘裝訂;按學(xué)號(hào)排好提交。
3. 內(nèi)容要求:
1) 實(shí)驗(yàn)題目
2) 實(shí)驗(yàn)?zāi)康暮蛢?nèi)容