版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 前言:</b></p><p> Linux2.4 內核中Netfilter/Iptables的出現,為構建Linux 下防火墻提供了很好的平臺。Iptables 是在Linux 操作系統(tǒng)下基于2.4之上內核版本的集成網絡安全工具包。該工具通過編程可以實現多種網絡安全功能,如:數據包過濾、狀態(tài)保持、NAT(Network Address Translation
2、,網絡地址轉換)以及抵抗攻擊等等。</p><p> 本課程設計主要是針對Linux下iptables的的應用進行學習與研究,結構上可以分為三個部分:Linux防火墻的概述,iptables的的簡介以及如何使用iptables來為我們的日常工作所服務。例如在我們的日常工作中的應用到的過濾網址、IP,禁用端口、協(xié)議等等。利用iptables這個工具在Linux服務器上實現安全穩(wěn)定、功能強大的防火墻。目前這也是被企
3、業(yè)和高校廣泛采用的一種比較成熟的技術。</p><p> 本次畢設課題研究的實驗環(huán)境均在虛擬機上實現,使用ubuntu 系統(tǒng)、win xp系統(tǒng)和win 2003系統(tǒng)。</p><p> 關鍵詞:Linux,防火墻,iptables,規(guī)則,過濾</p><p><b> 目錄</b></p><p><b>
4、; 1 防火墻簡介3</b></p><p> 2 iptables簡介4</p><p> 2.1 iptables的基本概念4</p><p> 2 .2 iptables數據包的傳輸過程5</p><p> 3 iptables的使用6</p><p> 4 iptabl
5、es的一些配置實例8</p><p> 4.1 一臺虛擬機與iptable配置8</p><p> 4.2 兩臺虛擬機連接通信有關的iptables配置10 </p><p> 4.3 三臺虛擬機連接通信有關的iptables配置14</p><p> 4.4 基于iptables的nat配置16</p>&
6、lt;p> 4.5 基于iptables的ftp服務器配置18</p><p> 4.6 基于iptables的dns服務器配置19</p><p> 5 iptables技巧實例21</p><p> 6課程設計心得22</p><p><b> 7參考書目23</b></p>
7、<p><b> 1 防火墻簡介</b></p><p> 防火墻是位于不同網絡(如可信的企業(yè)內部網和不可信的公共網)或網絡安全域之間,對網絡進行隔離并實現有條件通信的一系列軟件/硬件設備的集合。它通過訪問控制機制確定哪些內部服務允許外部訪問,以及允許哪些外部請求可以訪問內部服務。其基本功能是分析出入防火墻的數據包,根據IP包頭結合防火墻的規(guī)則,來決定是否接收或允許數據包通
8、過。</p><p> 防火墻系統(tǒng)可以由一臺路由器,也可以由一臺或一組主機組成。它通常被放置在網絡入口處,所有內外部網絡通信數據包都必須經過防火墻,接受防火墻的檢查,只有符合安全規(guī)則的數據才允許通過。</p><p> 通過使用防火墻可以實現以下功能:</p><p> 保護內部網絡中易受攻擊的服務。</p><p> 控制內外網之間
9、網絡系統(tǒng)的訪問。</p><p> 隱藏內部網絡的IP地址及結構的細節(jié),提高網絡的保密性?! ?lt;/p><p> 對網絡存取和訪問進行監(jiān)控和審計。</p><p> 集中管理內網的安全性,降低管理成本。</p><p> 2 iptables簡介</p><p> 2.1 iptables的基本概念<
10、;/p><p> 在使用iptables之前我們先要理解規(guī)則、鏈、表這3個概念以及iptables傳輸數據包的過程。</p><p><b> 規(guī)則 </b></p><p> 規(guī)則(rules)就是網絡管理員預先定義的條件,每條規(guī)則的定義方式一般是“如果封包符合這樣的條件就這樣處理該數包”。</p><p><
11、b> 鏈 </b></p><p> 鏈(chains)是數據包傳輸的路徑,每一條鏈中可以有一條或數條規(guī)則。</p><p><b> 表 </b></p><p> iptables內置了filter表、nat表和mangle表用于實現包過濾、網絡地址轉換和包重構的功能。</p><p>
12、(1)filter表</p><p> filter表是iptables默認的表,如果沒有指定使用哪個表,iptables默認使用filter表來執(zhí)行所有的命令。filter表根據系統(tǒng)管理員預定義的一組規(guī)則過濾符合條件的數據包。在filter表中只允許對數據包進行接收、丟棄的操作,而無法對數據包進行更改。</p><p><b> (2)nat表</b></
13、p><p> nat表主要是用于網絡地址轉換NAT,該表可以實現一對一、一對多、多對多等NAT工作。NAT表包含了PREROUTING鏈、OUTPUT鏈和POSTROUTING鏈。其中PREROUTING鏈用于處理剛剛進入網絡層未進行路由判斷的數據包,OUTPUT鏈用于處理在路由之前本地生成的數據包,POSTROUTING鏈處理在路由判斷之后即將通過網卡發(fā)送出去的數據包。</p><p>
14、?。?)mangle表</p><p> 某些特殊應用可能需要改寫數據包的一些傳輸特性,例如更改數據包的TTL和TOS等,mangle表主要用于對指定包的傳輸特性進行修改。</p><p> 2 .2 iptables數據包的傳輸過程</p><p> 數據包通過iptables的具體流程如圖所示。</p><p> 由圖可知,當一個
15、數據包進入計算機的網絡接口時,數據首先進入POSTROUTING鏈,然后內核根據路由表決定數據包的目標。若數據包的目的地址是本機,則將數據包送往INPUT鏈進行規(guī)則檢查,當數據包進入INPUT鏈后,系統(tǒng)的任何進程都會收到它,本機上運行的程序可以發(fā)送該數據包,這些數據包會經過OUTPUT鏈,再POSTROUTING鏈發(fā)出;若數據包的目的地址不是本機,則檢查內核是否允許轉發(fā),若允許,則將數據包送FORWARD鏈進行規(guī)則檢查,若不允許,則丟棄
16、該數據包。若是防火墻主機本地進程產生并準備發(fā)出的包,則數據包被送往OUTPUT鏈進行規(guī)則檢查。</p><p> 3 iptables的使用</p><p> iptables用于創(chuàng)建、維護和檢查Linux內核的IP包過濾規(guī)則,利用該命令可創(chuàng)建、刪除或更名鏈,在鏈中創(chuàng)建或刪除規(guī)則,設置鏈的策略等,功能很強大,用法也比較多,其命令基本格式為:</p><p>
17、 iptables [-t 表名] 命令選項 [鏈] [匹配選項] [操作選項]</p><p><b> 1. 表名選項</b></p><p> “-t 表名”用來選擇要操作的表,表名可以是 filter,nat,mangle三者之一,如該參數缺省則默認為filter表。</p><p><b> 2. 命令選項&
18、lt;/b></p><p> 命令選項用來指定對鏈或規(guī)則的操作,包括插入、刪除、添加規(guī)則等。 iptables的主要命令選項如表3-1所示。</p><p> 表3-1 iptables的主要命令選項</p><p><b> 3. 鏈名選項</b></p><p> “鏈”指定要操作的鏈名,除使用系統(tǒng)定
19、義的鏈名外,用戶也</p><p><b> 可自定義鏈名。</b></p><p><b> 4. 匹配選項</b></p><p> 匹配選項指定數據包與規(guī)則匹配所應具有的特征,包括源地址、目的地址、傳輸協(xié)議和端口號等。主要的匹配選項如表3-2所示。</p><p> 表3-2 ipta
20、bles的主要匹配選項</p><p><b> 5. 操作選項</b></p><p> 操作選項用于指定對匹配過濾規(guī)則的數據包所進行的處理。其形式為“-j target/jump”,其中“target”是對包的處理動作,“jump”代表一個用戶自定義的鏈名,用于跳轉到該鏈進行規(guī)則檢查。對數據常用的處理動作如表3-3所示。</p><p&g
21、t; 表3-3 iptables的主要目標動作選項</p><p> 4 iptables的一些配置實例</p><p> 硬件環(huán)境:一臺真機操作系統(tǒng)為window xp,cpu為酷睿i5內存為2G的筆記本電腦。</p><p> 軟件環(huán)境:VMware Workingstation虛擬機軟件。</p><p> 虛擬機:操作系統(tǒng)
22、為window xp的虛擬機(作為客戶機)</p><p> 操作系統(tǒng)為ubuntu11.04的虛擬機(作為防火墻)</p><p> 操作系統(tǒng)為win 2007的虛擬機(作為服務器)</p><p> 首先先預設置防火墻準備工作</p><p> 1在電腦中裝上VMware Workingstation軟件</p>&
23、lt;p> 2分別在虛擬機里裝入window xp,ubuntu11.04,win2007虛擬機。</p><p> 3為xp,win2007配置一張網卡,為ubuntu配置兩張網卡</p><p> 4 將xp與ubuntu的一張網卡連接在同一個網段,為vmnet5。并將ubuntu的另一張網卡與win2007連接在另一個網段,為vmnet6。</p><
24、p> 4.1 一臺虛擬機與iptable配置</p><p> 在ubuntu虛擬機中,先關閉處于vmnet6的網卡,并將vmnet5中的網卡設置為nat方式共享上網。如圖所示:</p><p> 在沒有設置防火墻之前,ubuntu預設定的DEFALUT PILICY為ACCEPT,即為接受、轉發(fā)、發(fā)出任何數據包,可以正常上網。如圖所示:</p><p>
25、;<b> 實驗步驟</b></p><p> 1. 在終端中輸入sudo su,輸入自己在裝機時設置的密碼進入管理員模式。</p><p> 2. 輸入iptables –L 查看當前iptables設置的情況。如圖所示:</p><p> 3. 輸入iptables –P INPUT DROP :丟棄所有進入PC的數據。再次嘗試訪問
26、google——失敗。規(guī)則表如圖所示:</p><p> 3 輸入iptables –P INPUT DROP :丟棄所有進入PC的數據。再次嘗試訪問google失敗。如圖所示:</p><p> 4 輸入iptable –A INPUT –p tcp --sport 80 –j ACCEPT</p><p> ?。?A INPUT 表示保護的對象,當前所使用的
27、是INPUT Chain,其保護的對象為本機。</p><p> -p tcp 匹配某個特定協(xié)議的封包。</p><p> --sport 80匹配源端為80的端口,http協(xié)議默認的端口號為80即端口為80的數據包可向主機發(fā)送數據包。</p><p> -j 將以上條件的封包以特定的方式來處理</p><p> ACCEPT 允許通
28、過)</p><p> 表示接受來并允許訪問TCP協(xié)議來源端口號為80的數據。再次嘗試訪問谷歌的ip地址:74.125.71.103.訪問成功,如圖所示:</p><p> (如需允許其他協(xié)議服務,修改端口號即可)</p><p> 5輸入iptables –F清除所有規(guī)則,并預設INPUT為ACCEPT,OUTPUT為ACCEPT</p>&l
29、t;p> iptables –A OUTPUT -p tcp -o etho --dport 80 –j DROP</p><p> 不允許本機的應用程序從etho接口送出封包使用http協(xié)議,在此訪問谷歌的ip地址,訪問失敗,無法連接上服務器,如圖所示</p><p> ?。ㄒ慌_虛擬機幾乎用不上FORWARD鏈,所以在此先不進行配置)</p><p>
30、 6.將ubuntu虛擬機的連接方式改回最初的狀態(tài),及etho連接在vmnet2, etho</p><p><b> 連在vmnet1</b></p><p> 4.2 兩臺虛擬機連接通信有關的iptables配置</p><p> 首先配置兩臺虛擬機的網絡,使其處在同一個網段中,相互之間能ping的通</p><
31、p> 在xp虛擬機中,配置它的ip地址為192.168.3.34,子網掩碼為255.255.255.0。并在vmware workingstation中設置使其處于vmnet6。</p><p> 在ubuntu虛擬機中,在命令行中一管理員身份輸入ifconfig eth1 192.168.3.33、24,這樣便設置了它的ip地址為192.168.3.33,子網掩碼為255.255.255.0,并在vm
32、ware workingstation中設置使其處于vmnet6。</p><p> 嘗試在xp虛擬機中ping Ubuntu 虛擬機,在命令行中輸入命令ping 192.168.3.33,成功,準備工作完畢。Ping結果如圖所示</p><p> 3. 然后在ubuntu虛擬機中開始設置規(guī)則</p><p> 首先分別輸入iptables –F </p
33、><p> iptables –X </p><p> iptables –t nat –F </p><p> iptables –t nat –X</p><p> 清除所有以前設置的規(guī)則,進行初始化。</p><p> 輸入iptables –P INPUT DROP :丟棄所有進入PC的數據。此時的規(guī)則表
34、如圖所示</p><p> 3)再在xp虛擬機中ping ubuntu虛擬機,發(fā)現ping結果失敗,防火墻生效,對一切信息不接受。結果如圖所示:</p><p> 同時在ubuntu虛擬機中,嘗試ping xp 虛擬機,結果依然失敗,防火墻不接受一切進入的信息。結果如圖所示</p><p> 4. 在ubuntu虛擬機終端中輸入iptables –A INPU
35、T –i etho –j ACCEPT</p><p> -A INPUT 表示添加規(guī)則保護某個對象,而此刻的對象為INPUT,因而添加規(guī)則保護的對象為INPUT表</p><p> -I etho 表示條件中指定輸入的端口為eth0,而eth0在一臺虛擬機與iptables配置中被設為與真機nat方式共享上網的接口,既網絡接口</p><p> -j ACC
36、EPT 將符合上述條件的封包以ACCEPT,即允許封包通過的形式處理</p><p> 此時,iptables表的情況如圖所示:</p><p> 而上述語句的整體意思就是接受所以不是來源與網絡接口eth0的封包,既允許封包在局域網里進行通信。</p><p> 5.再次在xp虛擬機中嘗試ping ubuntu虛擬機,ping192.168.3.33,成功,即
37、防火墻允許xp虛擬機ping ubuntu虛擬機了。結果如圖所示:</p><p> 同時在ubuntu虛擬機里ping xp虛擬機同樣成功,結果如圖所示:</p><p> 6. 在ubuntu虛擬機終端中輸入iptables –I INPUT –s 192.168.3.34 –j REJECT</p><p> 向INPUT表插入新的規(guī)則既不允許來自ip地
38、址為192.168.3.34的主機發(fā)送一切封包通過防火墻,</p><p> 注:如果要封IP段,例如從192.168.3.1到192.168.3.254的命令是iptables -I INPUT -s 192.168.3 .0/24 -j REJECT</p><p> -j REJECT表示將封包丟掉,并會送一個Destination Unreachable的ICMP封包給發(fā)送端,
39、發(fā)送端的應用程序受到這個錯誤的信息封包之后,既會終止連接操作</p><p> ?。╥ptables的規(guī)則執(zhí)行順序匹配的原則,如果不符合第一條規(guī)則,會自動跳轉到下一條規(guī)則進行匹配,假使都不能匹配成功的話,會進入Default pilicy進行匹配),iptables設置情況如圖所示:</p><p> 7. 此時嘗試在xp虛擬機里ping 192.168.3.33 ,失敗,當前的連接不可
40、達結果如圖所示:</p><p> 8. 此時,輸入iptables –I INPUT 1 -s 192.168.3.0/24 –j ACCEPT</p><p> -I INPUT 1在第一條規(guī)則之前插入一條新的規(guī)則,如果不寫1的話默認是第一條規(guī)則</p><p> 整句話的意思是防火墻允許3.0 ip端的主機發(fā)送封包到主機。</p><
41、p> 9. 再次在xp虛擬機中ping ubuntu虛擬機192.168.3.33,ping成功,結果如圖所示:</p><p> 同時,可以發(fā)現如果一個封包符合了某一個規(guī)則之后便不會再向下進行匹配了,因此在設計防火墻的時候,最后把所有的Defalut policy都給DROP掉,這樣有利于后期的配置</p><p> 10. 由于Ubuntu上iptables是不會保存規(guī)則的
42、。要讓所以讓網卡關閉時保存iptables規(guī)則,啟動時加載iptables規(guī)則:首先創(chuàng)建/etc/network/if-post-down.d/iptables 文件,添加如下內容:</p><p> #!/bin/bashiptables-save > /etc/iptables.rules</p><p> 執(zhí)行:chmod +x /etc/network/if-post-
43、down.d/iptables 添加執(zhí)行權限。</p><p> 創(chuàng)建/etc/network/if-pre-up.d/iptables 文件,添加如下內容:</p><p> #!/bin/bashiptables-restore < /etc/iptables.rules</p><p> 執(zhí)行:chmod +x /etc/network/if-p
44、re-up.d/iptables 添加執(zhí)行權限。</p><p><b> 創(chuàng)建過程如圖所示:</b></p><p><b> 1)在終端輸入</b></p><p><b> 2)在記事本里編輯</b></p><p><b> 3)在終端輸入</b
45、></p><p><b> 4)在記事本輸入</b></p><p><b> 5)在終端輸入</b></p><p> 至此,讓網卡關閉時保存iptables規(guī)則,啟動時加載iptables規(guī)則步驟完成。</p><p> 4.3 三臺虛擬機連接通信有關的iptables配置<
46、;/p><p> 1. 分別啟動并設置三臺虛擬機</p><p> 1)啟動xp虛擬機,其網絡配置和上一個實驗一樣,并將其網關設為ubuntu主機的ip地址。</p><p> 2)啟動ubuntu虛擬機,將eth0網絡接口上的那邊網卡設置為vmnet7,并更改其ip地址為192.168.4.33 子網掩碼為255.255.255.0。并進入/etc/sysctl
47、.conf。將net.ipv4.ip_forward=1加入其中。再在終端輸入sysctl –p實現路由轉發(fā)。結果如圖所示:</p><p> 3)啟動win 2003虛擬機,將其網卡設置在vmnet7 網段,設置其ip為:192.168.4.34 子網掩碼為:255.255.255.0,并將其網關設置為ubunbu主機的ip地址。結果如圖所示:</p><p> 3)在win2003
48、 虛擬機里嘗試ping xp虛擬機的ip地址,成功。所以ubuntu虛擬機正常實現路由轉發(fā)功能。相應的xp虛擬機也ping的通win2003虛擬機。結果如圖所示:</p><p><b> 實驗準備工作完畢。</b></p><p> 2. 然后在ubuntu虛擬機中開始設置規(guī)則</p><p> 1)首先分別輸入iptables –F
49、</p><p> iptables –X </p><p> iptables –t nat –F </p><p> iptables –t nat –X</p><p> 清除所有以前設置的規(guī)則,進行初始化。</p><p> 2)輸入iptables –P FORWARD DROP :丟棄所有需要有u
50、buntu虛擬機的轉發(fā)的數據。</p><p> 3)嘗試在xp虛擬機里平win2003虛擬機,失敗。結果如圖所示:</p><p> 3. 在ubuntu終端中輸入:</p><p> iptables -A FORWARD -s 192.168.3.34 -j ACCEPT</p><p> Iptables -A FORWARD
51、 -d 192.168.3.34 -j ACCPET</p><p> 轉發(fā)來自192.168.3.34的封包</p><p> 4. 嘗試在xp虛擬機里ping win2003虛擬機成功,防火墻允許轉發(fā)來自192.168.3.34的封包。結果如圖所示:</p><p> 5. 在ubuntu終端輸入:</p><p> Iptabl
52、es -I FORWARD -s etho -j DROP</p><p> Iptables -I FORWARD -s eth1 -j DROP</p><p> 防火墻不允許路由轉發(fā)功能,只允許主機端向防火墻端進行訪問</p><p> 6. 嘗試在xp虛擬機里分別ping ubuntu虛擬機和win 2003虛擬機,可以發(fā)現前者成功,后者失敗,,防火墻
53、規(guī)則得以驗證。結果如圖所示:</p><p> 7. 在xp虛擬機里訪問win 2003的web服務器</p><p> 1)取消以上實驗的規(guī)則,并設定Defalut pilicy為Default</p><p> 2)在win 2003虛擬機里安裝web服務器新建一個web主頁,并編輯主頁內容如圖所示:</p><p> 3)設定w
54、eb主頁的ip地址為192.168.4.34</p><p> 4)在ubuntu虛擬機里設定規(guī)則</p><p> iptables -t FORWARD -i eth1 -o eth0 -j ACCEPT</p><p> Iptables -t FORWRAD -i etho -o eht1 -j ACCEPT</p><p>
55、 允許封包在eth0與eth1之間相互轉發(fā)</p><p> 5)在xp虛擬機IE里嘗試訪問192.168.3.34,訪問成功。結果如圖所示:</p><p> 4.4 基于iptables的nat配置</p><p> 1. 打開xp虛擬機與ubuntu虛擬機并對其進行配置</p><p> 1)xp的虛擬機配置不變</p&g
56、t;<p> 2)在ubuntu虛擬機中,eth1接口不變,將eth0改回nat方式(既默認設置好的vmnet8)與真機共享上網。結果如圖所示:</p><p> 3)在xp虛擬機中嘗試ping ubuntu虛擬機ip地址192.168.3.33 ,成功。并嘗試ping百度的ip地址202.108.22.5 。失敗。結果如圖所示:</p><p><b> 準
57、備工作完畢</b></p><p> 2. 在Ubuntu虛擬機中進入/etc/sysctl.conf。將net.ipv4.ip_forward=1加入其中。再輸入sysctl –p實現路由轉發(fā)。</p><p> 3. 在ubuntu虛擬機中設定規(guī)則</p><p><b> 1)先清空所有規(guī)則</b></p>
58、<p> iptables –X </p><p> iptables -t nat –F </p><p> iptables –t nat –X</p><p> iptables -Z</p><p> 2)設定Defalut pilicy</p><p> iptables -P INP
59、UT ACCEPT</p><p> iptables -P OUTPUT ACCEPT</p><p> iptables -P FORWARD ACCEPT</p><p> 3)設定FORWARD轉發(fā)連規(guī)則,允許轉發(fā)從eth1接口進來的封包</p><p> iptables -A FORWARD -i eth1 -j ACCE
60、PT</p><p><b> 4)設定nat規(guī)則</b></p><p> iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</p><p> 由于nat鏈不是默認的規(guī)則鏈,所以需要用-t nat。-A POSTROUTING 在路 由之前進行nat規(guī)則檢查。-o eth0表示匹配
61、的條件是從eth1接口流出。-j MASQUERADE表示符合條件的封包用nat的ip偽裝技術</p><p> 規(guī)則設定完畢,規(guī)則表如圖所示:</p><p> 4. 嘗試在xp虛擬機里ping百度ip地址202.108.22.5 ,成功,結果如圖所示:</p><p> 5. 在ubuntu虛擬機的規(guī)則鏈中插入規(guī)則</p><p>
62、 iptables -I FORWARD -s 192.168.3.34 -j DROP</p><p> 在規(guī)則表中阻止來自ip地址為192.168.3.34的封包進行轉發(fā)</p><p> 6. 再次嘗試在xp虛擬機中ping百度的ip地址,嘗試失敗。結果如圖所示:</p><p> 7. 恢復到規(guī)則設定完畢的狀態(tài),并刪除POSTROUTING鏈中規(guī)則&
63、lt;/p><p> 輸入iptables -t nat -A POSTINGROUTING -o eth0 -s 192.168.3.34 \ -j SNAT --to 192.168.253.138</p><p> 如果192.168.3.34這臺主機要訪問因特網上的主機,其服務請求封包內的Source IP必然為Private IP ,這個訪問動作必然會失敗,因而必須籍由NAT主機
64、上的SNAT機制將外送封包內的Source IP改為NAT主機上的Public IP,這樣才能讓因特網上的主機響應來自回來的封包可以順利返回到NAT主機對外的Public IP上,如果這個Public IP不是固定的,可以像步驟4那樣設定,設定為-j MASQUERADE ,再次訪問百度,成功。</p><p> 8. 如果要保護服務器端端的話,需要使用DNAT方式,輸入</p><p>
65、; Iptables -t nat -A PREROUTING -i eth0 -d 192.168.4.34 \ -j DNAT --to 192.168.4.33</p><p> 在PREOUTING鏈中設定,當要訪問ip地址為192.168.4.34的服務器的話,將其ip DNAT為192.168.4.33.隱藏服務器端的ip,當封包一進入NAT機制,封包內的Destionation IP就立即被變更
66、。</p><p> 4.5 基于iptables的ftp服務器配置</p><p> 在ubuntu虛擬機中,將eth0改為與主機nat方式共享上網,在安裝ftp服務器具體步驟如下:</p><p> 1)在終端中在管理員身份下使用命令apt-get install vsftpd 進行 下載并安裝ftp服務器</p><p> 2)
67、安裝完成后,輸入命令vsftp進行服務器的設置,輸入用戶名,密碼,然后輸入命令ls -l查看服務器中全部文件的列表,如圖所示:</p><p> 3)在終端中輸入 iptables -P INPUT DROP,禁止其他機器訪問ubuntu中的ftp服務器</p><p> 4)在xp虛擬機命令行中輸入ftp ,open 192.168.4.33,打開ftp服務器失敗結果如圖所示:<
68、;/p><p><b> 以上預設定完畢</b></p><p> 在iptables中設置是win xp虛擬機能夠訪問ftp服務器,由于ftp服務器使用的是20和21號端口,所以在防火墻中只需要開放這兩個端口就行了。</p><p> iptables -A INPUT -p tcp --dport 21 -j ACCEPT</p&g
69、t;<p> Iptables -A INPUT -p tcp --dport 20 -j ACCEPT</p><p> 讓20和20號端口發(fā)出封包給需要文件的主機</p><p> 并且再加一條規(guī)則,允許連接保持的被動訪問:</p><p> iptables –A INPUT -m state –state ESTABLISHED,REL
70、ATED –j ACCEPT</p><p> 其中-m 參數用來匹配連接狀態(tài),狀態(tài)共有四種:INVALID ESTABLISHEDE NEW和RELATED。</p><p> 3再次嘗試在win xp虛擬機訪問ftp服務器,成功,結果如圖所示:</p><p> 4.6 基于iptables的dns服務器配置</p><p> 在
71、ubuntu虛擬機中安裝dns服務器,具體步驟如下:</p><p> 1)在終端中輸入apt-get install dnsmasq</p><p> 2)安裝成功后,在終端中輸入host www.baidu.com,解析域名成功,結果如圖所示:</p><p> 2. 在iptables中配置Default Plicily</p><p
72、> Iptables -P INPUT DROP</p><p> 再次嘗試解析www.baidu.com.失敗,結果如圖所示</p><p> 3. 由于dns服務器使用的是udp協(xié)議中的dns協(xié)議即開53號端口,并且需要tcp協(xié)議中http協(xié)議即80端口的支持,所以為了配置該服務器的防火墻,需要開放53和80號端口。</p><p><b>
73、; 輸入命令:</b></p><p> iptables -A INPUT -p tcp --sport 80 -j ACCEPT</p><p> Iptables -A INPUT -p udp --sprot 53 -j ACCEPT</p><p> 即允許解析出來的封包進入80 和53號端口</p><p>
74、 再次嘗試在終端中輸入:host www.baidu.com,成功,結果如圖所示:</p><p> 5 iptables技巧實例</p><p> (一).禁止客戶機訪問不健康網站【例1】添加iptables規(guī)則禁止用戶訪問域名為www.playboy.com的網站,然后查看filter表的FORWARD鏈規(guī)則列表。iptables-IFORWARD-dwww.playboy.c
75、om -j DROPiptables -t filter -L FORWARD【例2】添加iptables規(guī)則禁止用戶訪問IP地址為202.17.61.4的網站,然后查看filter表的FORWARD鏈規(guī)則列表。iptables -I FORWARD -d 202.17.61.4 -j DROPiptables -t filter -L FORWARD(二).禁止某些客戶機上網【例1】添加iptables規(guī)則禁止IP地址為1
76、92.168.1.200的客戶機上網,然后查看filter表的FORWARD鏈規(guī)則列表。iptables -I FORWARD -s 192.168.1.200 -j DROPiptables -t filter -L FORWARD【例2】添加iptables規(guī)則禁止192.168.2.0子網里所有的客戶機上網,</p><p><b> 6課程設計心得</b></p>
77、<p> 轉眼大學三年的時光即將結束了,在這三年多的學習過程中自己收獲了成長過程中的寶貴財富。無論是學習上還是做人上自己都學到了許多,大學的生活是很自由的,這種自由的生活讓我們的個性與愛好都得以很好的發(fā)展。當然也有人會不適應大學的這種學習生活,因為如果一個人缺乏自制能力的話,那么這種自由的生活如果不能得到合理的規(guī)劃,就會讓自己的大學生活如同一張白紙沒有了色彩。</p><p> 本次課程設計最終
78、得以完成,很感謝我的同學給我的幫助,一個人的知識是有限的,但兩個人的智慧加起來就是無限的。當我遇到不會的地方,我的同學總能和我一起來討論,在網上找解決的辦法,沒有你們的幫助,我的課程設計不能這么順利的完成,謝謝你們!在本次課程設計的過程中自己也對以前的知識進行了一次重新的梳理,對之前掌握不牢固的知識點又進行了強化練習。同時自己也養(yǎng)成了在網上搜索解決問題方法的習慣,我們本是計算機人就應當要利用好網絡來為我們服務。</p>&
79、lt;p> 在這個課程設計中也犯了不少的錯誤,有些甚至花費了很長的時間來解決,但它的本質卻是很簡單的,例如在4.3的實驗室,xp虛擬機ping的通ubuntu虛擬機,win2003虛擬機ping的通ubuntu虛擬機,而xp與win2003之間卻ping不通,這是由于兩者沒有將其網關指向ubuntu。又或者要實現防火墻轉發(fā)功能設置的話,必須考慮到進來的進來的接收端和返回的輸出端。。希望自己以后考慮事情多考慮細微處。</p&
80、gt;<p> 7參考資料(書,論文,網絡資料)</p><p> ?。?)Linux防火墻 拉什 著,陳健 譯 人民郵電出版社</p><p> ?。?)防火墻策略與VPN配置 謝琳等譯中國水利水電出版社</p><p> ?。?)百度文庫(http://wenku.baidu.com/view/69ac0ca1b0717fd5360cdc5
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論