版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
淮陰工學(xué)院畢業(yè)設(shè)計(jì)說明書(論文)第Ⅰ頁共Ⅰ頁目錄TOC\o"1-4"\h\z\u1引言 11.1選題背景 11.2目的和意義 21.3系統(tǒng)設(shè)計(jì)思想 21.4開發(fā)工具簡介 32Linux防火墻的需求分析 42.1Iptables(Linux防火墻管理程序)主要功能 42.2包過濾原理 43系統(tǒng)的總體設(shè)計(jì) 53.1系統(tǒng)功能總體設(shè)計(jì) 53.2拒絕與禁止一個(gè)數(shù)據(jù)包 63.3制定安全策略 73.4包過濾的設(shè)計(jì) 74詳細(xì)設(shè)計(jì) 104.1Linux環(huán)境下網(wǎng)絡(luò)設(shè)置 104.2Linux環(huán)境下安全保障設(shè)計(jì) 144.3阻截常用攻擊設(shè)計(jì) 174.4過濾TCP協(xié)議設(shè)計(jì) 194.5過濾ICMP信息設(shè)計(jì) 234.6域名(DNS)服務(wù)設(shè)計(jì) 255防火墻測試與性能分析 255.1攻擊測試 255.2協(xié)議過濾測試 26結(jié)論 28致謝 29參考文獻(xiàn) 30附錄: 31淮陰工學(xué)院畢業(yè)設(shè)計(jì)說明書(論文)第29頁共37頁1引言Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng)。我們通常所說的Linux,指的是GNU/Linux,即采用Linux內(nèi)核的GNU操作系統(tǒng)。GNU代表Gnu’sNotUnix。它既是一個(gè)操作系統(tǒng),也是一種規(guī)范。Linux最早由芬蘭的林納斯.托瓦茲在1991年開始編寫。在這之前,理查德.斯托曼創(chuàng)建了FreeSoftwareFoundation(FSF)組織以及GNU項(xiàng)目,并不斷的編寫創(chuàng)建GNU程序(程序的許可方式均為GPL:GeneralPublicLicense)。在不斷的有程序員和開發(fā)者加入到GNU組織中后,便造就了今天我們所看到的Linux。在當(dāng)今互聯(lián)網(wǎng)迅速發(fā)展的年代,Linux作為一款后起之秀的操作系統(tǒng),以其公開的源代碼、強(qiáng)大的網(wǎng)絡(luò)功能和大量的免費(fèi)資源正受到業(yè)界的普遍贊揚(yáng),它不僅是完全免費(fèi)的,而且具有豐富的網(wǎng)絡(luò)功能、高可靠的安全、穩(wěn)定性能,并且具有多用戶、多任務(wù),支持多種平臺等顯著優(yōu)點(diǎn),尤其在服務(wù)器領(lǐng)域,它正越來越受到人們的歡迎。1.1選題背景隨著計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù)的快速發(fā)展以及在越來越多的應(yīng)用領(lǐng)域中的迅速普及,人類對計(jì)算機(jī)和互聯(lián)網(wǎng)的依賴程度越來越高,因此增加計(jì)算機(jī)系統(tǒng)以及互聯(lián)網(wǎng)網(wǎng)絡(luò)的安全性能也變得越來越重要。防火墻作為互聯(lián)網(wǎng)絡(luò)中使用最廣泛的安全措施之一,伴隨著近年來互聯(lián)網(wǎng)的快速發(fā)展而得到廣泛的應(yīng)用,同時(shí)也被證明是至今為數(shù)不多的成功的網(wǎng)絡(luò)安全應(yīng)用實(shí)例。然而,防火墻的技術(shù)開發(fā)以及準(zhǔn)確的系統(tǒng)配置和管理對于正確地發(fā)揮其在安全方面的功能至關(guān)重要。因此,專用的防火墻設(shè)備的價(jià)格昂貴,對技術(shù)和管理人員的要求也很高。另一方面,Linux作為目前唯一在全球范圍內(nèi)得到廣泛接受和應(yīng)用的開源操作系統(tǒng),所提供的靈活性和可操作性為開發(fā)和配置防火墻以及按照特定網(wǎng)絡(luò)環(huán)境的要求構(gòu)建防火墻提供了一個(gè)價(jià)格低廉,性能優(yōu)良的平臺,日益獲得了眾多企業(yè)和個(gè)人用戶的廣泛接受。目前Internet的安全性保障不容樂觀,國家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心(CERT)在過去的幾年里收到的計(jì)算機(jī)安全事故報(bào)告的數(shù)量一直呈上升趨勢,1999年該中心收到了約10000份計(jì)算機(jī)安全事故報(bào)告,2000年達(dá)到了21756份,而2001年更上升到了52658份。2007年上半年,中國大陸被篡改網(wǎng)站的數(shù)量相比往年處于明顯上升趨勢。CNCERT/CC監(jiān)測到中國大陸被篡改網(wǎng)站總數(shù)達(dá)到28367個(gè),比去年全年增加了近16%。如果用戶能根據(jù)自己的實(shí)際需要,將防火墻設(shè)計(jì)的一般理論和方法與自己系統(tǒng)的具體實(shí)際相結(jié)合,設(shè)計(jì)一些小而精、精而強(qiáng)的防火墻程序,則往往可以發(fā)揮出比花大價(jià)錢買來的通用型防火墻更好的作用。操作系統(tǒng)作為防火墻運(yùn)行的基礎(chǔ)平臺,對防火墻起到一個(gè)至關(guān)重要的作用。Windows操作系統(tǒng)由于其源代碼不公開,所以對操作系統(tǒng)加固安全性只能是打上微軟公司最新的補(bǔ)丁,當(dāng)發(fā)現(xiàn)新Bug時(shí)等微軟公司出新的補(bǔ)丁。對NT防火墻的一致意見也正是在NT系統(tǒng)的bug上,而NT系統(tǒng)最大的bug就是“NT安全性遠(yuǎn)遠(yuǎn)不能運(yùn)行一個(gè)正規(guī)的防火墻”。而Linux操作系統(tǒng)良好的網(wǎng)絡(luò)性能和開放源碼的特點(diǎn),使得在其上布置防火墻有了一個(gè)可靠的基石,也使得越來越多的用戶選擇了Linux作為其防火墻的操作平臺。Linux2.4內(nèi)核操作系統(tǒng)本身所帶有的Netfilter是一個(gè)優(yōu)秀防火墻架構(gòu),其功能和性能可與多數(shù)的商業(yè)防火墻產(chǎn)品媲美。 1.2目的和意義目前,市面上的許多專業(yè)防火墻設(shè)備其價(jià)格非常的昂貴,少則幾千元,大則上萬元,對于一些小企業(yè),網(wǎng)吧,學(xué)校以及一些非盈利組織,這些專業(yè)性的商業(yè)防火墻實(shí)在不太適合,并且在投資和安裝維護(hù)上就存在著不少問題。因此,能不能設(shè)計(jì)一個(gè)即能防范外部不安全網(wǎng)絡(luò)的威脅,又價(jià)格代廉的防火墻呢?答案是肯定的。在Linux環(huán)境下構(gòu)建一個(gè)高效,運(yùn)行穩(wěn)定的防火墻是可以做到的,并且,沒有價(jià)格上的負(fù)擔(dān),只需要一臺閑置不用的PC機(jī),和一個(gè)Linux操作系統(tǒng)就可以實(shí)現(xiàn)我們需要的防火墻。此次的畢業(yè)設(shè)計(jì)不僅能把我平時(shí)學(xué)到的理論知識運(yùn)用到實(shí)際去,而且能夠培養(yǎng)我分析問題,解決問題的能力。并能使我對Linux這個(gè)開源的操作系統(tǒng)更加的熟悉,在Linux平臺上構(gòu)建一個(gè)安全,高效的防火墻,能使我對一些黑客常用的攻擊手段有深入的了解,在此基礎(chǔ)上分析其原理,并通過對常用傳輸協(xié)議的分析,來編寫Linux防火墻規(guī)則。1.3系統(tǒng)設(shè)計(jì)思想如果一個(gè)網(wǎng)絡(luò)連到了Internet上,它的用戶就可以訪問外部世界并與之通信。但同時(shí),外部世界同樣也可以訪問該網(wǎng)絡(luò)并與之交互。為安全起見,可以在該網(wǎng)絡(luò)和Internet之間插入一個(gè)中介系統(tǒng),豎起一道安全屏障。這道屏障的作用是阻斷來自外部網(wǎng)絡(luò)對網(wǎng)絡(luò)的威脅與入侵,提供保護(hù)本網(wǎng)絡(luò)的安全的唯一關(guān)卡。根據(jù)目前一些企業(yè),網(wǎng)吧,學(xué)校及個(gè)人的一些實(shí)際需求,本防火墻系統(tǒng)的設(shè)計(jì)按照下述原則進(jìn)行。1.安全性:一個(gè)防火墻(作為阻塞點(diǎn)和控制點(diǎn))要能極大地提高一個(gè)內(nèi)部網(wǎng)絡(luò)的安全性,并能通過過濾不安全的服務(wù)從而降低風(fēng)險(xiǎn)。由于只有經(jīng)過精心選擇的應(yīng)用協(xié)議才能通過防火墻,所以網(wǎng)絡(luò)環(huán)境變得更安全。2.增強(qiáng)保密性:通過利用防火墻對內(nèi)部網(wǎng)絡(luò)的劃分,可實(shí)現(xiàn)內(nèi)部重點(diǎn)網(wǎng)段的隔離,從而限制了局部重點(diǎn)或敏感網(wǎng)絡(luò)安全問題對全局網(wǎng)絡(luò)造成的影響。再者,隱私是內(nèi)部網(wǎng)絡(luò)非常關(guān)心的問題,一個(gè)內(nèi)部網(wǎng)絡(luò)中不引人注意的細(xì)節(jié)可能包含了有關(guān)安全的線索而引起外部攻擊者的興趣,甚至因此而暴露內(nèi)部網(wǎng)絡(luò)的某些漏洞。3.高度的穩(wěn)定性:作為防火墻的操作系統(tǒng)平臺必須是高可靠的,而Linux就完全可以做到這一點(diǎn),Linux繼承了UNIX的優(yōu)良特性,可以連續(xù)運(yùn)行數(shù)月,數(shù)年而無需重新啟動(dòng),在過去十幾年的廣泛使用中只有屈指可數(shù)的幾個(gè)病毒感染過Linux。這種強(qiáng)免疫性歸功于Linux系統(tǒng)健壯的基礎(chǔ)架構(gòu),并且,其內(nèi)核版本2.4是一個(gè)可以使用的穩(wěn)定版本。4.可維護(hù)性:如果所有的訪問都經(jīng)過防火墻,那么,防火墻就能記錄下這些訪問并做出日志記錄,同時(shí)也能提供網(wǎng)絡(luò)使用情況的統(tǒng)計(jì)數(shù)據(jù)。當(dāng)發(fā)生可疑動(dòng)作時(shí),防火墻就能進(jìn)行適當(dāng)?shù)膱?bào)警,并提供網(wǎng)絡(luò)是否受到監(jiān)測和攻擊的詳細(xì)信息。1.4開發(fā)工具簡介Shell(外殼)本身是一個(gè)用C語言編寫的程序,它是用戶與Linux聯(lián)系的橋梁。Shell既是一種命令語言,又是一種程序設(shè)計(jì)語言。作為命令語言交互式地解釋和執(zhí)行用戶輸入的命令。作為程序設(shè)計(jì)語言,它定義了各種變量和參數(shù),并提供了許多在高級語言中才具有的控制結(jié)構(gòu),包括循環(huán)和分支。它雖然不是Linux系統(tǒng)核心的一部分,但它調(diào)用了系統(tǒng)核心的大部分功能來執(zhí)行程序、建立文件,并以并行的方式協(xié)調(diào)各個(gè)程序的運(yùn)行。Iptables是一個(gè)用來指定Netfilter規(guī)則和管理內(nèi)核包過濾的工具,它為用戶配置防火墻規(guī)則提供了方便。Iptables可以加入、刪除或插入核心包過濾表格中的規(guī)則,它的主要特點(diǎn)有:1.方便建立Internet防火墻和基于狀態(tài)的包過濾。2.Netfilter/iptables是完全免費(fèi)的,用它來配置防火墻可以大大地節(jié)省費(fèi)用。3.可以使用戶完全控制防火墻的配置和指定特殊規(guī)則對信息包進(jìn)行過濾。4.用戶可以使用iptables命令在用戶空間設(shè)置過濾規(guī)則,并且可以添加、編輯和刪除這些規(guī)則。2Linux防火墻的需求分析在互聯(lián)網(wǎng)絡(luò)這樣的TCP/IP網(wǎng)絡(luò)上,所有往來的信息都被分割成許許多多一定長度的信息包,包中包含了發(fā)送者的IP地址和接收者的IP地址信息。當(dāng)這些信息包被送上互聯(lián)網(wǎng)絡(luò)后,路由器會(huì)讀取接受者的IP并選擇一條合適的物理線路發(fā)送出去,信息包可能經(jīng)由不同的路線低達(dá)目的地,當(dāng)所有的包都抵達(dá)目的地后會(huì)重新組裝還原。包過濾式防火墻會(huì)檢查所有通過的信息中的IP地址,并按照系統(tǒng)管理員所給定的過濾規(guī)則進(jìn)行過濾。2.1Iptables(Linux防火墻管理程序)主要功能Iptables是一個(gè)用來指定Netfilter規(guī)則和管理內(nèi)核包過濾的工具,它為用戶配置防火墻規(guī)則提供了方便。Iptables在處理不同種類的數(shù)據(jù)包時(shí)使用不同的規(guī)則表。這些規(guī)則表由功能上相互獨(dú)立的表模塊來實(shí)現(xiàn)。三個(gè)主要的模塊是filter表,Nat表和對數(shù)據(jù)包進(jìn)行特殊處理的mangle表。主要功能有:1、優(yōu)秀的匹配規(guī)則:高級包匹配,例如速率限制和字符串匹配。2、增強(qiáng)的日志功能:允許自定義日志級別和實(shí)體。3、允許包撕裂:允許撕裂包中的任何信息。4、狀態(tài)匹配,連接跟蹤。5、自動(dòng)碎片重裝。6、支持內(nèi)置包轉(zhuǎn)發(fā)。7、狀態(tài)包過濾。另外,iptables是有狀態(tài)的,有狀態(tài)的意思是指如果一個(gè)包是對從防火墻原先發(fā)出去的包的回復(fù),則自動(dòng)不用檢查任何規(guī)則就立即允許回復(fù)包進(jìn)入并返回給請求者,這樣我們不用設(shè)置許多規(guī)則定義就可實(shí)現(xiàn)應(yīng)有的功能。2.2包過濾原理Linux內(nèi)核的防火墻架構(gòu),為我們提供三個(gè)過濾點(diǎn),分別是INPUT、OUTPUT、FORWARD,任何一個(gè)數(shù)據(jù)包僅僅只在這三個(gè)規(guī)則中的任何一個(gè)應(yīng)用,或者被INPUT規(guī)則擊中,或者被FORWARD規(guī)則和OUTPUT規(guī)則擊中。當(dāng)由外部網(wǎng)絡(luò)進(jìn)來的一個(gè)數(shù)據(jù)包,包的頭部應(yīng)該包括目的地址,目的端口號,源地址,源地址端口號以及數(shù)據(jù)包所使用的傳輸協(xié)議。首先經(jīng)過一個(gè)路由模塊,判斷數(shù)據(jù)是傳給本機(jī)的還是其它主機(jī)的,如果數(shù)據(jù)是傳給本地機(jī)的,則數(shù)據(jù)要經(jīng)過INPUT鏈,我們可以在這里寫一些規(guī)則,來限制進(jìn)行入本地機(jī)的數(shù)據(jù)包。如果,數(shù)據(jù)不是到達(dá)本地機(jī)的,則此數(shù)據(jù)需經(jīng)過FORWARD鏈轉(zhuǎn)發(fā)出去,這里,我們可以根據(jù)需求,編寫一些規(guī)則,只有符合要求的數(shù)據(jù)才能轉(zhuǎn)發(fā),否則丟棄該數(shù)據(jù)包。當(dāng)由本地機(jī)發(fā)出去的數(shù)據(jù)包,是經(jīng)過OUTPUT鏈轉(zhuǎn)發(fā)出去的,此處可以設(shè)置一些規(guī)則來限制出去的數(shù)據(jù)包。3系統(tǒng)的總體設(shè)計(jì)防火墻設(shè)計(jì)作為網(wǎng)絡(luò)安全設(shè)計(jì)的一個(gè)組成部分,需要綜合考慮各方面的因素。一般來說,影響網(wǎng)絡(luò)安全的因素包括以下幾個(gè)方面:網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)協(xié)議、地域、用戶、主機(jī)和內(nèi)部網(wǎng)絡(luò)安全策略等。其設(shè)計(jì)的一般步驟為:3.1系統(tǒng)功能總體設(shè)計(jì)本防火墻系統(tǒng)主要分為五大功能模塊,如圖3-1,每個(gè)功能模塊下又細(xì)分出若干個(gè)功能,該功能設(shè)計(jì)圖有利于防火墻系統(tǒng)的規(guī)則編寫,有利于防火墻功能的測試。防火墻的初始化涵蓋了許多方面,包括定義shell腳本中的全局變量,啟動(dòng)內(nèi)核支持服務(wù),刪除預(yù)先存在的規(guī)則,重置默認(rèn)策略,啟動(dòng)回環(huán)接口,定義默認(rèn)策略,以及定義一些基本規(guī)則以拒絕不合法地址并保護(hù)運(yùn)行在非特權(quán)端口上的服務(wù)。我們需要啟動(dòng)一些常用的TCP服務(wù),比如E-mail是一個(gè)幾乎所有人都要用的服務(wù)。E-mail在網(wǎng)絡(luò)上的發(fā)送使用的是TCP服務(wù)端口25上的SMTP協(xié)議。POP是取回郵件的服務(wù),運(yùn)行在TCP端口110上。Usenet新聞組是通過運(yùn)行在TCP頂層并在服務(wù)端口119的NNTP協(xié)議進(jìn)行訪問的。要使用FTP服務(wù),還得啟用TCP端口21和20,但我們不要使用TFTP。它提供了一種簡單的、無需認(rèn)證的、UDP版本的FTP服務(wù),被公認(rèn)為是一個(gè)不安全的服務(wù)。無狀態(tài)的UDP協(xié)議本身就不像面向連接的TCP協(xié)議那樣安全。因此,許多對安全敏感的站點(diǎn)將其完全禁止,或者是對訪問UDP服務(wù)做盡可能的限制。本訪火墻系統(tǒng)開啟了Traceroute服務(wù),開啟了UDP端口67和68以及允許DNS查詢。ICMP控制消息的產(chǎn)生是作為對一些錯(cuò)誤情況的響應(yīng)。它們是由網(wǎng)絡(luò)分析程序如Ping和Traceroute所產(chǎn)生的。四種ICMP控制和狀態(tài)消息需要通過防火墻:源抑制、參數(shù)問題、入站目的不可達(dá)以及出站目的不可達(dá)子類型需進(jìn)行分片。圖3-1防火墻系統(tǒng)功能設(shè)計(jì)圖3.2拒絕與禁止一個(gè)數(shù)據(jù)包Iptables的Netfilter防火墻機(jī)制提供了拒絕還是丟棄數(shù)據(jù)包兩個(gè)選項(xiàng)。兩者有什么不同呢?當(dāng)一個(gè)數(shù)據(jù)包被拒絕時(shí),在丟棄該數(shù)據(jù)包的同時(shí)會(huì)給發(fā)送者返回一個(gè)ICMP錯(cuò)誤消息。當(dāng)一個(gè)數(shù)據(jù)包被丟棄時(shí),該數(shù)據(jù)包被直接扔掉而不會(huì)返回任何通知給發(fā)送者,如圖3-2所示。悄無聲息、不返回任何信息地丟棄數(shù)據(jù)包通常是更好的選擇,有三個(gè)原因:第一,發(fā)送錯(cuò)誤響應(yīng)會(huì)使網(wǎng)絡(luò)通信量加倍,數(shù)據(jù)包被丟棄,大多不是因?yàn)樗鼈冎皇菬o害地企圖訪問一個(gè)你沒有提供的服務(wù),而是因?yàn)樗鼈兪菒阂獾?;第二,你響?yīng)的數(shù)據(jù)包可能正是一個(gè)拒絕服務(wù)攻擊(denial-of-service,DoS);第三,任何響應(yīng),即使只是一個(gè)錯(cuò)誤消息,都會(huì)給攻擊者提供潛在的有用信息。圖3-2拒絕和禁止一個(gè)數(shù)據(jù)包3.3制定安全策略安全策略的制定受到多種因素的影響,對每一個(gè)具體的網(wǎng)絡(luò)環(huán)境,應(yīng)根據(jù)各自的具體情況制定不同的安全策略??偟膩碚f有兩種策略:沒有被列為允許的服務(wù)都是禁止的策略和沒有被列為禁止的服務(wù)都是允許的策略。前者拒絕一切未經(jīng)許可的服務(wù),防火墻封鎖所有信息流,然后逐項(xiàng)使能每一種許可的服務(wù)。而后者允許一切沒被禁止的服務(wù),防火墻轉(zhuǎn)發(fā)所有的信息,然后逐項(xiàng)刪除所有被禁止的服務(wù)。雖然針對具體的網(wǎng)絡(luò)沒有固定的安全策略,但在制定具體的安全策略時(shí),是可以遵循一定的原則:1.支持一條“禁止一切未明確允許的服務(wù)”或“允許一切未被禁止的服務(wù)”的規(guī)則。2.在實(shí)現(xiàn)既定規(guī)則時(shí)不能漏掉任何一條。3.只要適當(dāng)修改規(guī)則,便可以適應(yīng)新的服務(wù)和需求。4.要在身份驗(yàn)證和透明性之間做出權(quán)衡。5.在分組過濾時(shí),可以針對某個(gè)具體的機(jī)器系統(tǒng)允許或禁止。6.對于撥號用戶集中管理,并做好過濾和日志統(tǒng)計(jì)工作。3.4包過濾的設(shè)計(jì)3.4.1包過濾的基本原理包過濾可以實(shí)現(xiàn)很廣范圍的網(wǎng)絡(luò)安全策略,這種安全策略主要集中在攔截入侵者。包過濾技術(shù)是在網(wǎng)絡(luò)層對數(shù)據(jù)包進(jìn)行選擇和過濾,具有很好的透明性,選擇的依據(jù)是系統(tǒng)內(nèi)設(shè)置的過濾邏輯,即安全規(guī)則。當(dāng)數(shù)據(jù)鏈路層截取到數(shù)據(jù)分組時(shí),將根據(jù)所收到的每個(gè)數(shù)據(jù)包的源地址、目的地址、TCP/IP源端口號、TCP/IP目的端口號等與安全規(guī)則進(jìn)行匹配。如果滿足安全規(guī)則,則接受數(shù)據(jù)分組,否則拋棄分組。通過上述方法,可以過濾掉Internet和Intranet之間的非法通信數(shù)據(jù),從而保護(hù)了內(nèi)部Intranet網(wǎng)絡(luò)。3.4.2包過濾策略與規(guī)則在防火墻上構(gòu)造安全規(guī)則,其中分為入網(wǎng)規(guī)則和出網(wǎng)規(guī)則。入網(wǎng)分組過濾:進(jìn)入內(nèi)部網(wǎng)的分組必須接受包過濾器過濾后流入內(nèi)部網(wǎng)絡(luò)。出網(wǎng)分組過濾:離開內(nèi)部網(wǎng)的分組必須接受包過濾器的過濾流向外部網(wǎng)絡(luò)。包過濾防火墻可以對數(shù)據(jù)分組中如下信息進(jìn)行安全過濾:1.源地址和目的地址。2.包的類型,可以是TCP,UDP,ICMP。3.源和目的端口號。4.ICMP報(bào)文類型。5.包中的ACK和SYN標(biāo)志,這是為了防止在某個(gè)特定方向上建立新的鏈接。6.某塊網(wǎng)卡的名字或IP地址,這樣可以指定在特定的網(wǎng)卡上進(jìn)出包。每一個(gè)過濾規(guī)則均結(jié)合一個(gè)策略,在Linux中使用的策略有以下兩種:接受即讓該數(shù)據(jù)包通過該過濾規(guī)則;否則拋棄該數(shù)據(jù)包,并不返回ICMP包。當(dāng)防火墻從某一端口接收到數(shù)據(jù)包后,從該數(shù)據(jù)包提取 IP源地址、目的地址、TCP源端口、目的端口號和協(xié)議標(biāo)志,利用上述信息查詢過濾規(guī)則表,根據(jù)查詢結(jié)果來決定是轉(zhuǎn)發(fā)還是拋棄數(shù)據(jù)分組。過濾規(guī)則表中一條規(guī)則的形式化描述如圖3-3所示。圖3-3過濾規(guī)則形式化描述在查詢過濾規(guī)則表過程中,如果數(shù)據(jù)包的IP地址、TCP端口號和協(xié)議標(biāo)志與某一過濾規(guī)則完全匹配,則根據(jù)過濾規(guī)則中的策略(Permit/Deny)選項(xiàng)來決定是接受、轉(zhuǎn)發(fā)或是拋棄數(shù)據(jù)包。通過使用過濾規(guī)則,可以阻塞或允許內(nèi)部網(wǎng)絡(luò)和外界Internet之間的任意主機(jī)的任何一種網(wǎng)絡(luò)服務(wù)。包過濾防火墻可根據(jù)特定的服務(wù)允許或拒絕流動(dòng)的數(shù)據(jù)包,因?yàn)榭梢源尜A需要進(jìn)行安全檢查的主機(jī)地址,而服務(wù)器的端口號實(shí)際上代表某種網(wǎng)絡(luò)服務(wù)。多數(shù)的網(wǎng)絡(luò)服務(wù)程序都與知名的TCP/UDP端口相連,例如Telnet服務(wù)器在TCP的23號端口上監(jiān)聽遠(yuǎn)端連接,而SMTP服務(wù)器在TCP的25號端口上監(jiān)聽到來的Email的信息。為了阻塞所有進(jìn)入的Telnet連接,包過濾防火墻只需按原則丟棄TCP端口號為23的數(shù)據(jù)包。所以在使用過濾規(guī)則時(shí),對服務(wù)器端口號進(jìn)行檢查就能接受、轉(zhuǎn)發(fā)或阻塞某種網(wǎng)絡(luò)服務(wù)。3.4.3包過濾規(guī)則的匹配過程包過濾流程圖描述:圖中表示的過濾規(guī)則遵循“未明確表示為允許的便被禁止”的原則。即在進(jìn)行安全檢查時(shí),防火墻將數(shù)據(jù)包按順序與過濾規(guī)則依次進(jìn)行匹配,并遵循如下三條原則:如果遇到一條過濾規(guī)則允許接收該數(shù)據(jù)包,則此數(shù)據(jù)包被轉(zhuǎn)發(fā)。如果遇到一條過濾規(guī)則阻塞數(shù)據(jù)包,則該數(shù)據(jù)包被拋棄。過濾規(guī)則被全部匹配后,如果數(shù)據(jù)分組不滿足任何規(guī)則,該分組被拋棄。首先數(shù)據(jù)包在穿過防火墻時(shí),需要經(jīng)過我們預(yù)先設(shè)置好的一個(gè)個(gè)規(guī)則和分析數(shù)據(jù)包頭部的有關(guān)信息。如果第一個(gè)規(guī)則不符合要求,則應(yīng)用到下一個(gè)規(guī)則,然后判斷包是否可以被傳輸,如果可以的話,則允許數(shù)據(jù)經(jīng)過防火墻,否則判斷數(shù)據(jù)包是否應(yīng)該被阻塞,如果滿足的話,則阻塞包,否則判斷是不是最后一個(gè)匹配規(guī)則,是的話,則轉(zhuǎn)到應(yīng)用下一個(gè)匹配規(guī)則,否則阻塞數(shù)據(jù)包穿過防火墻。包過濾流程圖如圖3-4所示。圖3-4包過濾流程圖以上為本防火墻包過濾流程圖,它描述包過濾防火墻的基本數(shù)據(jù)過濾流程,而設(shè)計(jì)和實(shí)現(xiàn)防火墻系統(tǒng)的應(yīng)用規(guī)則就是圍繞著本流程圖來操作的。4詳細(xì)設(shè)計(jì)4.1Linux環(huán)境下網(wǎng)絡(luò)設(shè)置4.1.1FTP服務(wù)器的配置1、FTP服務(wù)器的簡介FTP是FileTransferProtocol(文件傳輸協(xié)議)的英文簡稱,而中文簡稱為“文傳協(xié)議”。用于Internet上的控制文件的雙向傳輸。同時(shí),它也是一個(gè)應(yīng)用程序(Application)。基于不同的操作系統(tǒng)有不同的FTP應(yīng)用程序,而所有這些應(yīng)用程序都遵守同一種協(xié)議以傳輸文件。在FTP的使用當(dāng)中,用戶經(jīng)常遇到兩個(gè)概念:"下載"(Download)和"上傳"(Upload)。"下載"文件就是從遠(yuǎn)程主機(jī)拷貝文件至自己的計(jì)算機(jī)上;"上傳"文件就是將文件從自己的計(jì)算機(jī)中拷貝至遠(yuǎn)程主機(jī)上。用Internet語言來說,用戶可通過客戶機(jī)程序向(從)遠(yuǎn)程主機(jī)上傳(下載)文件。2、LINUX下FTP服務(wù)器的搭建一般在各種Linux的發(fā)行版中,默認(rèn)帶有的ftp軟件是vsftp,從各個(gè)Linux發(fā)行版對vsftp的認(rèn)可可以看出,vsftp應(yīng)該是一款不錯(cuò)的ftp軟件。(1)檢查vsftpd軟件是否安裝使用如下命令可以檢測出是否安裝了vsftpd軟件,rpm-qa|grepvsftpd,顯示的結(jié)果如下:如果沒有安裝的話,可以下載安裝,也可以使用軟件源進(jìn)行安裝。(2)vsftpd軟件的使用使用vsftpd軟件,主要包括如下幾個(gè)命令:
啟動(dòng)ftp:servicevsftpdstart
停止ftp:servicevsftpdstop重啟ftp:servicevsftpdrestart(3)vsftpd的配置ftp的配置文件主要有三個(gè),在centos5.6中位于/etc/vsftpd/目錄下,分別是:ftpusers
該文件用來指定那些用戶不能訪問ftp服務(wù)器。user_list
該文件用來指示的默認(rèn)賬戶在默認(rèn)情況下也不能訪問ftpvsftpd.conf
vsftpd的主配置文件(4)下面我們使用vi編輯vsftpd.conf文件用戶登錄控制:anonymous_enable=YES,允許匿名用戶登錄。no_anon_password=YES,匿名用戶登錄時(shí)不需要輸入密碼。local_enable=YES,允許本地用戶登錄。deny_email_enable=YES,可以創(chuàng)建一個(gè)文件保存某些匿名電子郵件的黑名單,以防止這些人使用Dos攻擊。banned_email_file=/etc/vsftpd/banned_emails,保存電子郵件黑名單的目錄(默認(rèn))用戶權(quán)限控制:write_enable=YES,開啟全局上傳local_umask=022,本地文件上傳的umask設(shè)置為022,系統(tǒng)默認(rèn)。anon_upload_enable=YES,允許匿名用戶上傳,當(dāng)然要在write_enable=YES的情況下。同時(shí)必須建立一個(gè)允許ftp用戶讀寫的目錄。anon_mkdir_write_enable=YES,允許匿名用花創(chuàng)建目錄chown_uploads=YES,匿名用戶上傳的文件屬主轉(zhuǎn)換為別的用戶,一般建議為root。chown_username=whoever,改此處的whoever為要轉(zhuǎn)換的屬主,建議rootchroot_list_enable=YES,用一個(gè)列表來限定哪些用戶只能在自己目錄下活動(dòng)。chroot_list_enable=/etc/vsftpd/chroot_list,指定用戶列表文件用戶連接和超時(shí)設(shè)置:idle_session_timeout=600,默認(rèn)的超時(shí)時(shí)間data_connection_timeout=120,設(shè)置默認(rèn)數(shù)據(jù)連接的超時(shí)時(shí)間4.1.2DNS服務(wù)器的配置1、DNS服務(wù)器的簡介DNS
即DomainNameSystem(域名系統(tǒng))的縮寫,它是一種將ip地址轉(zhuǎn)換成對應(yīng)的主機(jī)名或?qū)⒅鳈C(jī)名轉(zhuǎn)換成與之相對應(yīng)ip地址的一種機(jī)制。其中通過域名解析出ip地址的叫做正向解析,通過ip地址解析出域名的叫做反向解析。2、DNS的工作原理DNS的查詢流程:需要解析服務(wù)的Client先查看本機(jī)的/etc/hosts;若無結(jié)果,則client查看本地的DNS緩存服務(wù)器;若無結(jié)果,則查找所屬域的首選DNS服務(wù)器;若此時(shí)本地首選DNS服務(wù)器仍無法解析,則會(huì)想根域名服務(wù)器進(jìn)行查詢或選擇轉(zhuǎn)發(fā)解析請求。
DNS的查詢規(guī)則:遞歸式查詢,即client向支持遞歸查詢的DNSServer發(fā)出解析請求,則自DNS服務(wù)器不論是自身直接解析還是無法解析想根發(fā)出請求,總會(huì)由其向client返回一個(gè)結(jié)果;迭代式查詢,即接收client解析請求的DNSServer,若其能夠解析則直接返回結(jié)果,若其不能解析將把解析請求交給其他DNS服務(wù)器,而不是自己親自將解析過程完成。
所謂的“根”服務(wù)器:根服務(wù)器主要用來管理互聯(lián)網(wǎng)的主目錄,全世界只有13臺。1個(gè)為主根服務(wù)器,放置在美國。其余12個(gè)均為輔根服務(wù)器,其中9個(gè)放置在美國,歐洲2個(gè),位于英國和瑞典,亞洲1個(gè),位于日本。所有根服務(wù)器均由美國政府授權(quán)的互聯(lián)網(wǎng)域名與號碼分配機(jī)構(gòu)ICANN統(tǒng)一管理,負(fù)責(zé)全球互聯(lián)網(wǎng)域名根服務(wù)器、域名體系和IP地址等的管理。
DNS記錄的類型:
A:Address域名向ip地址轉(zhuǎn)換的記錄;
PTR:Printerip地址向域名轉(zhuǎn)換的記錄;
NS:代表域內(nèi)的dns服務(wù)器;
MX:代表域內(nèi)的郵件服務(wù)器;
CNAME:域名的別名;
SOA:startofauthority用于標(biāo)示域內(nèi)主DNS服務(wù)器。2、Linux下DNS服務(wù)器的搭建提供DNS服務(wù)的軟件:BIND即BerkeleyInternetNameDomain由加州大學(xué)伯克利分校研發(fā)是當(dāng)今提供DNS服務(wù)應(yīng)用最廣的軟件。(1)檢查是否已經(jīng)安裝Bind軟件[root@]#rpm–qabind//bind是DNS服務(wù)器進(jìn)程名稱(2)創(chuàng)建主配置文件/etc/named.confoptions{
directory"/var/named";
#告知工作目錄};zone“.”IN
{typehint;
#聲明根域file"named.ca";
#根信息存放文件};
zone"localhost"IN{
#本地正解定義typemaster;
#類型為masterfile"localhost.zone";
#正解文件名};
zone"0.0.127."IN{
#本地反解定義typemaster;file"named.local";
#反解文件名
};
chown:named/etc/named.conf#修改屬組給named(3)創(chuàng)建3個(gè)解析文件#named.ca#dig-tNS.>/var/named/named.ca#向跟服務(wù)器發(fā)起查詢并重定向到目標(biāo)文件
#localhost.zone#vimlocalhost.zone
$TTL86400
#默認(rèn)的ttl值@
IN
SOA
localhost.
admin.localhost.(
#主DNS服務(wù)器localhost.2011081601
#時(shí)間+序列號01
1H
#刷新時(shí)間:每隔多久來master查詢更新
10M
#重試時(shí)間間隔
7D
#過期時(shí)間,如果7天仍找不到master,slave停止服務(wù)
1D
#否定答案ttl值,表示查詢不到再次查詢需要時(shí)間
)@
IN
NS
localhost.
#當(dāng)前域的DNS服務(wù)器是localhost.localhost.
IN
A
#named.local#vimnamed.local$TTL86400@
IN
SOA
localhost.
admin.localhost.
(
20110816011H
10M
7D
1D
)@
IN
NS
localhost.1
IN
PTR
localhost(4)檢測配置文件語法
#named-checkconf
#named-checkzone“l(fā)ocalhost”/var/named/localhost.zone#named-checkzone“0.0.127.”/var/named/named.local(5)開啟服務(wù)并測試#servicenamedstart#dig-tA
域名
#測試正解#dig-xip地址
#測試反解4.2Linux環(huán)境下安全保障設(shè)計(jì)4.2.1防火墻概念無論是一臺計(jì)算機(jī)還是由連接起來的計(jì)算機(jī)組成的一個(gè)局域網(wǎng)(LocalAreaNetwork,LAN),小型站點(diǎn)關(guān)心的焦點(diǎn)是與Internet直接相連的機(jī)器,這臺機(jī)器就是防火墻。防火墻(firewall)就是一種過濾塞,你可以讓你喜歡的東西通過這個(gè)塞子,別的都統(tǒng)統(tǒng)過濾掉。在網(wǎng)絡(luò)的世界里,要由防火墻過濾的就是承載通信數(shù)據(jù)的數(shù)據(jù)包,在這里是你實(shí)施安全策略的地方。防火墻的外部接口卡是與Internet的連接點(diǎn)或網(wǎng)關(guān)。防火墻的任務(wù)是保護(hù)這個(gè)網(wǎng)關(guān)在你這一邊的東西,防范來自另一邊的東西。天下的防火墻至少都會(huì)說兩個(gè)詞:Yes或者No。直接說就是接受或者拒絕。防火墻的形式多種多樣:有的取代系統(tǒng)上已經(jīng)裝備的TCP/IP協(xié)議棧;有的在已有的協(xié)議棧上建立自己的軟件模塊;有的是獨(dú)立的一套操作系統(tǒng),如Linux,FreeBSD等。還有一些基于硬件的防火墻產(chǎn)品其實(shí)應(yīng)該歸入安全路由器一類。以上的產(chǎn)品都可以叫做防火墻,因?yàn)樗麄兊墓ぷ鞣绞蕉际且粯拥模悍治龀鋈敕阑饓Φ臄?shù)據(jù)包,決定放行還是把他們?nèi)拥揭贿叀?.2.2防火墻初始化實(shí)現(xiàn)1.防火墻中定義的符號常量如果為經(jīng)常使用的名字或地址定義了符號常量,防火墻的腳本就極易讀懂和維護(hù)。下面列舉出防火墻里用到的部分符號常量(其它定義的常量可以參考附錄):ANYWHERE_TRACKING="1":該變量表示是否允許防火墻主機(jī)ping通其它的主機(jī),如果該變量等于1,則表示允許,如果是其它的值則防火墻主機(jī)的ping命令將被禁止使用。TRUST_IPADDR="":該變量表示外網(wǎng)中受信任的主機(jī)的IP地址,這個(gè)地址的主機(jī)將允許訪問內(nèi)網(wǎng),防火墻對此IP地址主機(jī)所發(fā)的數(shù)據(jù)不會(huì)過濾。WEB_SERVER="1":該變量表示是否允許內(nèi)網(wǎng)主機(jī)訪問Internet。變量等于1,表示允許,否則表示禁止。LAN_INTERFACE="eth0":該變量表示防火墻內(nèi)部接口。2.啟動(dòng)內(nèi)核對監(jiān)控的支持首先,我們應(yīng)該啟動(dòng)Linux內(nèi)核下的一些功能,這些功能能夠使我們的防火墻的功能更加的強(qiáng)大,這也是選擇Linux操作系統(tǒng)作防火墻的原因之一。(1)啟動(dòng)內(nèi)核路由轉(zhuǎn)發(fā):Linux操作系統(tǒng)默認(rèn)是沒有啟動(dòng)內(nèi)核的包轉(zhuǎn)發(fā)功能的,如果作為一個(gè)防火墻,當(dāng)然得開啟內(nèi)核的包轉(zhuǎn)發(fā)功能,這樣,數(shù)據(jù)包才能路由到網(wǎng)絡(luò)上。(2)丟棄源路由包:源路由現(xiàn)在很少合理地使用,防火墻應(yīng)該丟棄所有源路由數(shù)據(jù)包,所以啟動(dòng)了此項(xiàng)功能。(3)啟用cookies:TCP的SYN緩沖(cookies)是一種快速檢測和防御SYN洪水攻擊的機(jī)制,防火墻可以借助他的幫助來抵擋DoS攻擊。3.刪除預(yù)先存在的規(guī)則定義一組過濾規(guī)則時(shí),首先要做的事情就是從規(guī)則鏈中清除任何已經(jīng)存在的規(guī)則。否則任何新定義的規(guī)則將加到已有的規(guī)則之后。那么,數(shù)據(jù)包在到達(dá)鏈上新定義的點(diǎn)之前,很容易與一個(gè)先前存在的規(guī)則匹配。刪除規(guī)則也叫做刷新規(guī)則鏈,當(dāng)沒有參數(shù)直接針對特定的鏈時(shí),下面的命令一次性刷新所有鏈上的規(guī)則:/sbin/iptables–flush規(guī)則鏈變?yōu)榭?,但所有用戶自定義規(guī)則鏈仍存在,刷新鏈并不影響當(dāng)時(shí)處于有效的默認(rèn)策略的狀態(tài)。下一步是刪除所有用戶自定義規(guī)則鏈,下面的命令可以刪除它們:/sbin/iptables–X4.重置默認(rèn)策略在定義規(guī)則為丟棄之前,必須先生重置默認(rèn)策略為接受策略。這樣,為能完全停止防火墻提供了方便。下面的命令可以設(shè)置默認(rèn)策略:/sbin/iptables--policyINPUTACCEPT/sbin/iptables--policyOUTPUTACCEPT/sbin/iptables--policyFORWARDACCEPT這樣netfilter的框架的三個(gè)包過濾鏈全部為接受,也就說這時(shí)防火墻是允許一切數(shù)據(jù)包通過的,那為什么要這么做呢?這主要是為了能安全的停止防火墻,如果在上面的代碼的后面加上停止防火墻的代碼,那么,當(dāng)我們使用參數(shù)“stop”時(shí),程序會(huì)直接而干凈地重置默認(rèn)策略并將防火墻完全停止。5.啟用回環(huán)接口有時(shí)我們需要啟用不受限的回環(huán)業(yè)務(wù)流,它使你能夠運(yùn)行任何你想選擇運(yùn)行任何你想選擇的或系統(tǒng)所依賴的本地網(wǎng)絡(luò)服務(wù),而不必但心要在所有防火墻規(guī)則中一一指明。本地服務(wù)依賴于回環(huán)網(wǎng)絡(luò)接口。系統(tǒng)啟動(dòng)后,系統(tǒng)的默認(rèn)策略是接受所有的數(shù)據(jù)包,清除所有預(yù)先存在的規(guī)則鏈對此也沒有任何影響。但是,當(dāng)防火墻被重新初始化時(shí)并且先前使用了默認(rèn)禁止策略,丟棄策略在此時(shí)也將依然有效。在沒有任何接受規(guī)則的情況下,回環(huán)接口是不能被訪問的。5.定義默認(rèn)策略使用丟棄默認(rèn)策略時(shí),除非定義規(guī)則為明確允許或拒絕一個(gè)匹配的數(shù)據(jù)包,否則數(shù)據(jù)包將被丟棄。本防火墻要做到的是,自動(dòng)丟棄我們不想要的入網(wǎng)數(shù)據(jù)包且并不通知遠(yuǎn)方的發(fā)送者,拒絕出網(wǎng)數(shù)據(jù)包并向內(nèi)網(wǎng)發(fā)送者返回一個(gè)ICMP錯(cuò)誤消息。下面的程序?qū)⒎阑饓Φ哪J(rèn)策略設(shè)為丟棄:/sbin/iptables--policyINPUTDROP/sbin/iptables--policyOUTPUTDROP/sbin/iptables--policyFORWARDDROP4.3阻截常用攻擊設(shè)計(jì)4.3.1秘密掃描檢測一般形式的TCP秘密掃描是可能的,因?yàn)閕ptables允許檢測所有的TCP狀態(tài)標(biāo)記。在TCP報(bào)頭中有六個(gè)狀態(tài)位,其中URG為緊急數(shù)據(jù)標(biāo)志,如果URG為1,表示本數(shù)據(jù)包中包含緊急數(shù)據(jù)。此時(shí)緊急數(shù)據(jù)指針表示的值有效,它表示在緊急數(shù)據(jù)之后的第一個(gè)字節(jié)的偏移值(即緊急數(shù)據(jù)的總長度)。ACK為確認(rèn)標(biāo)志位。如果ACK為1,表示數(shù)據(jù)包中的確認(rèn)號有效。PSH位,表示強(qiáng)迫數(shù)據(jù)傳輸。RST標(biāo)志位用來復(fù)位一條連接。當(dāng)RST=1時(shí),表示出現(xiàn)嚴(yán)重錯(cuò)誤,必須釋放連接,然后再重新建立。SYN標(biāo)志位用來建立連接,如果SYN=1而ACK=0,表明它是一個(gè)連接請求;如果SYN=1且ACK=1,則表示同意建立一個(gè)連接。FIN為1時(shí),表示數(shù)據(jù)已經(jīng)發(fā)送完畢,希望釋放連接。TCP報(bào)頭格式如圖4-1所示。圖4-1TCP報(bào)頭格式根據(jù)這六個(gè)標(biāo)志位的不同作用,我們能夠看出,有一些組合是不合法的,所以對于這些不合法的標(biāo)志位組合,我們完全可以檢查出來,以下列出的都是不合法的標(biāo)志位組合。1.所有標(biāo)志位都為0。2.SYN和FIN同時(shí)被置1。3.SYN和RST同時(shí)被置1。4.FIN和RST同時(shí)被置1。5.FIN位被置1,但ACK位沒有被置1。6.PSH位被置1,但ACK位沒有被置1。7.URG位被置1,但ACK位沒有被置1。4.3.2源地址欺騙攻擊在數(shù)據(jù)包一級,識別IP數(shù)據(jù)包發(fā)送者的唯一方法就是通過數(shù)據(jù)包頭中的源地址。這個(gè)事實(shí)給源地址欺騙提供了可能,在源地址欺騙中發(fā)送者在源地址字段放置了一個(gè)不是它自己地址的不正確地址。這個(gè)地址可能是一個(gè)根本不存在的地址,也可能是一個(gè)屬于其他人的合法地址。源地址欺騙可以假扮成本地的可信數(shù)據(jù)流進(jìn)入你的系統(tǒng),當(dāng)攻擊其他站點(diǎn)時(shí)顯示的是你的地址,同時(shí)攻擊你的站點(diǎn)時(shí)又假扮其他人的地址,使你的系統(tǒng)疲于響應(yīng)不存在地址而一直處于停頓的狀態(tài),或者誤導(dǎo)你響應(yīng)錯(cuò)誤的入站信息的源地址,這些都是令人討厭的行為。IP報(bào)頭格式如圖4-2所示。圖4-2IP報(bào)頭格式我們通常無法檢測出欺騙地址。這些地址可能都是合法的而且可以路由,但是不屬于數(shù)據(jù)包的發(fā)送者。任何情況下,有10種必須在外部接口中禁止的源地址類型,這些入網(wǎng)數(shù)據(jù)包聲稱來自于下面的地址:1.你自己的IP地址:我們永遠(yuǎn)不可能看到聲稱來自于你自己機(jī)器的合法入網(wǎng)數(shù)據(jù)包,聲稱來自于本地機(jī)器的入網(wǎng)數(shù)據(jù)包肯定是帶有欺騙性的。2.你所在局域網(wǎng)的地址:在防火墻的外部接口如果看到聲稱來自于你所在局域網(wǎng)的合法入網(wǎng)數(shù)據(jù)包是不可能的。在大多數(shù)情況下,這樣的數(shù)據(jù)包可能是利用本地可信關(guān)系企圖獲得某個(gè)站點(diǎn)的訪問權(quán)的一個(gè)環(huán)節(jié)。3.A、B和C類專用IP地址:A,B和C類這三個(gè)地址集是專門為局域網(wǎng)內(nèi)使用而保留的,這些地址并末打算在Internet上使用。4.D類多播IP地址:D類IP地址是預(yù)留作為多點(diǎn)投遞網(wǎng)絡(luò)廣播的目的地址的,如音頻廣播或視頻廣播的目的地址,這類地址范圍是~55。5.E類保留IP地址:E類IP地址是為未來及實(shí)驗(yàn)使用所預(yù)留的,這些地址沒有公開分配,~55。6.回環(huán)接口地址:回環(huán)接口是被Linux系統(tǒng)用來提供本地、基于網(wǎng)絡(luò)的服務(wù)的專用網(wǎng)絡(luò)接口,回環(huán)地址的范圍是~55。7.畸形廣播地址:廣播地址是應(yīng)用于網(wǎng)絡(luò)中所有機(jī)器的特殊地址,地址是一個(gè)特殊的廣播源地址。合法的廣播源地址可以是或一個(gè)常規(guī)的IP地址。DHCP客戶機(jī)和服務(wù)器將看到來自于源地址的入網(wǎng)數(shù)據(jù)包,這是該源地址唯一合法的使用,但其不是一個(gè)合法的點(diǎn)對點(diǎn)單播源地址。當(dāng)它作為源地址出現(xiàn)了一個(gè)常規(guī)、點(diǎn)對點(diǎn)、非廣播數(shù)據(jù)包中時(shí),該地址就是偽造的。8.A類網(wǎng)絡(luò)的0地址:任何源地址以~55范圍的地址作為單播地址都是不合法的。9.網(wǎng)絡(luò)測試地址:~55的地址空間是為測試網(wǎng)絡(luò)而保留的。10.本地鏈路網(wǎng)絡(luò)地址:當(dāng)DHCP客戶機(jī)不能從服務(wù)器獲得地址時(shí),它們會(huì)為自己分配一個(gè)本地鏈路地址,這些地址的范圍是~55。4.4過濾TCP協(xié)議設(shè)計(jì)基于TCP/IP協(xié)議的服務(wù)很多,人們比較熟悉的有WWW服務(wù)、FTP服務(wù)和電子郵件服務(wù)等,不太熟悉的有TFTP服務(wù)、NFS服務(wù)、Finger服務(wù)等,這些服務(wù)都存在不同程度的安全缺陷。如果用防火墻來保護(hù)自己的服務(wù)器,需要考慮該提供哪些服務(wù)、該禁止哪些服務(wù)。4.4.1TCP連接狀態(tài)一個(gè)TCP連接是經(jīng)過三次握手協(xié)商連接信息才建立起來的。整個(gè)會(huì)話由一個(gè)SYN包開始,然后是一個(gè)SYN/ACK包,最后是一個(gè)ACK包,此時(shí),會(huì)話才建立成功,能夠發(fā)送數(shù)據(jù)。最大的問題在于連接跟蹤怎樣控制這個(gè)過程。默認(rèn)情況下,連接跟蹤基本上對所有的連接類型做同樣的操作。如圖4-3所示,我們就能明白在連接的不同階段,流是處于什么狀態(tài)的。就如我們看到的,連接跟蹤的代碼不是從用戶的觀點(diǎn)來看待TCP連接建立的流程的。連接跟蹤一看到SYN包,就認(rèn)為這個(gè)連接是NEW狀態(tài),一看到返回的SYN/ACK包,就認(rèn)為連接是ESTABLISHED狀態(tài)。有了這個(gè)特殊處理,NEW和ESTABLISHED包就可以發(fā)送出本地網(wǎng)絡(luò),且只有ESTABLISHED的連接才能有回應(yīng)信息。圖4-3TCP連接狀態(tài)舉一個(gè)例子:tcp6117SYN_SENTsrc=dst=5sport=1031\dport=23[UNREPLIED]src=5dst=sport=23\dport=1031use=1從上面的記錄可以看出,SYN_SENT狀態(tài)被設(shè)置了,這說明連接已經(jīng)發(fā)出一個(gè)SYN包,但應(yīng)答還沒發(fā)送過來,這可從[UNREPLIED]標(biāo)志看出。tcp657SYN_RECVsrc=dst=5sport=1031\dport=23src=5dst=sport=23dport=1031use=1現(xiàn)在我們已經(jīng)收到了相應(yīng)的SYN/ACK包,狀態(tài)也變?yōu)镾YN_RECV,這說明最初發(fā)出的SYN包已正確傳輸,并且SYN/ACK包也到達(dá)了防火墻。這就意味著在連接的兩方都有數(shù)據(jù)傳輸,因此可以認(rèn)為兩個(gè)方向都有相應(yīng)的回應(yīng)。tcp6431999ESTABLISHEDsrc=dst=5\sport=1031dport=23src=5dst=\sport=23dport=1031use=1現(xiàn)在我們發(fā)出了三步握手的最后一個(gè)包,即ACK包,連接也就進(jìn)入ESTABLISHED狀態(tài)了。例子中,首先顯示的是協(xié)議,這里是tcp,接著是十進(jìn)制的6(注:tcp的協(xié)議類型代碼是6)。之后的117是這條conntrack記錄的生存時(shí)間,它會(huì)有規(guī)律地被消耗,直到收到這個(gè)連接的更多的包。接下來的是這個(gè)連接在當(dāng)前時(shí)間點(diǎn)的狀態(tài)。上面的例子說明這個(gè)包處在狀態(tài)SYN_SENT,這個(gè)值是iptables顯示的,以便我們好理解。SYN_SENT說明我們正在觀察的這個(gè)連接只在一個(gè)方向發(fā)送了一TCPSYN包。再下面是源地址、目的地址、源端口和目的端口。其中有個(gè)特殊的詞UNREPLIED,說明這個(gè)連接還沒有收到任何回應(yīng)。4.4.2HTTP協(xié)議WEB服務(wù)基于超文本傳輸協(xié)議(HypertextTransferProtocol,HTTP),客戶端和服務(wù)器使用標(biāo)準(zhǔn)TCP協(xié)議建立連接。正常使用時(shí),WEB服務(wù)可以通過http服務(wù)端口80實(shí)現(xiàn)。表4-1列出HTTPWEB服務(wù)的完整的客戶機(jī)/服務(wù)器的連接協(xié)議。下面,討論HTTP協(xié)議下客戶/服務(wù)器模式中信息交換的過程。1.建立連接連接的建立是通過申請?zhí)捉幼?Socket)實(shí)現(xiàn)的??蛻舸蜷_一個(gè)套接字并把它約束在一個(gè)端口上,如果成功,就相當(dāng)于建立了一個(gè)虛擬文件。以后就可以在該虛擬文件上寫數(shù)據(jù)并通過網(wǎng)絡(luò)向外傳送。2.發(fā)送請求打開一個(gè)連接后,客戶機(jī)把請求消息送到服務(wù)器的停留端口上,完成提出請求動(dòng)作。3.發(fā)送響應(yīng)服務(wù)器在處理完客戶的請求之后,要向客戶機(jī)發(fā)送響應(yīng)消息。4.關(guān)閉連接客戶和服務(wù)器雙方都可以通過關(guān)閉套接字來結(jié)束TCP/IP對話。表4-1HTTP協(xié)議描述協(xié)議遠(yuǎn)程端口輸入/輸出本地端口本地客戶請求TCP80Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP80In1024:65535遠(yuǎn)程客戶請求TCP1024:65535In80本地服務(wù)器響應(yīng)TCP1024:65535Out80根據(jù)表格中的定義,可以寫一段代碼如下所示,這段代碼的含義是允許局域網(wǎng)用戶訪問外網(wǎng)的WEB服務(wù)。/sbin/iptables-AFORWARD-o$INTERNET_INTERFACE-ptcp-s$LAN_ADDRESSES--sport$UNPRIVPORTS--dport80-jACCEPT/sbin/iptables-AFORWARD-i$INTERNET_INTERFACE-ptcp!--syn--sport80-d$LAN_ADDRESSES--dport$UNPRIVPORTS-jACCEPT4.4.3FTP協(xié)議FTP的全稱是FileTransferProtocol(文件傳輸協(xié)議),顧名思義,它是專門用來傳輸文件的協(xié)議。它支持的FTP功能是網(wǎng)絡(luò)中最重要、用途最廣泛的服務(wù)之一,實(shí)現(xiàn)了服務(wù)器和客戶機(jī)之間的文件傳輸和資源再分配,是普遍采用的資源共享方式之一,用戶可以連接到FTP服務(wù)器上下載文件,也可以將自己的文件上傳到FTP服務(wù)器中。FTP是TCP/IP的一種具體應(yīng)用,它工作在OSI模型的第七層、TCP模型的第四層,即應(yīng)用層,它使用TCP傳輸而不是UDP,這樣FTP客戶在和服務(wù)器建立連接前就要經(jīng)過一個(gè)“三次握手”的過程,它的意義在于客戶與服務(wù)器之間的連接是可靠的,而且是面向連接的,為數(shù)據(jù)的傳輸提供了可靠的保證。表4-2列出了FTP服務(wù)的完整的客戶機(jī)/服務(wù)器連接協(xié)議。FTP依賴于兩種不同的連接:一種用于控制和命令流;一種用于數(shù)據(jù)文件和其他信息??刂屏骰趥鹘y(tǒng)的TCP連接??蛻舳私壎ㄓ谝粋€(gè)高端非特權(quán)端口,然后向FTP服務(wù)器發(fā)送連接請求,F(xiàn)TP服務(wù)器使用端口21。這種連接是用于傳送命令的。另一方面,對于數(shù)據(jù)流連接,F(xiàn)TP提供了兩種可選模式用于在客戶機(jī)與服務(wù)器之間交換數(shù)據(jù);端口模式和被動(dòng)模式。表4-2FTP協(xié)議描述協(xié)議遠(yuǎn)程端口輸入/輸出本地端口本地客戶查詢TCP21Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP21In1024:65535遠(yuǎn)程服務(wù)器端口數(shù)據(jù)通路請求TCP20In1024:65535本地客戶端口數(shù)據(jù)通路響應(yīng)TCP20Out1024:65535本地客戶被動(dòng)數(shù)據(jù)通路響應(yīng)TCP1024:65535Out1024:65535遠(yuǎn)程服務(wù)器被動(dòng)數(shù)據(jù)通路響應(yīng)TCP1024:65535In1024:65535遠(yuǎn)程客戶請求TCP1024:65535In21本地服務(wù)器響應(yīng)TCP1024:65535Out21本地服務(wù)器端口數(shù)據(jù)通路響應(yīng)TCP1024:65535Out20遠(yuǎn)程客戶端口數(shù)據(jù)通路響應(yīng)TCP1024:65535In20遠(yuǎn)程客戶被動(dòng)數(shù)據(jù)通路請求TCP1024:65535In1024:65535本地服務(wù)器被動(dòng)數(shù)據(jù)通路響應(yīng)TCP1024:65535Out1024:65535本防火墻允許客戶機(jī)到遠(yuǎn)程FTP服務(wù)器的訪問,允許外網(wǎng)主機(jī)訪問內(nèi)網(wǎng)的FTP服務(wù)器,并為這兩個(gè)功能設(shè)置分別設(shè)置了開關(guān),如果用戶不需要訪問外網(wǎng)的FTP服務(wù)器,并且內(nèi)網(wǎng)沒有FTP服務(wù)器或不對外開放這種服務(wù),用戶可以方便的關(guān)掉這兩項(xiàng)功能。4.4.4SMTP,POP和IMAP協(xié)議電子郵件(E-mail)是最基本的網(wǎng)絡(luò)通訊功能。進(jìn)入國際互聯(lián)網(wǎng)的用戶不需要任何紙張,就可以方便地使用電子郵件來寫、寄、讀和轉(zhuǎn)發(fā)信件。E-mail在網(wǎng)絡(luò)上的發(fā)送使用的是TCP服務(wù)端口25上的SMTP協(xié)議。E-mail一般是通過三個(gè)協(xié)議進(jìn)行接的—SMTP、POP或IMAP。SMTP協(xié)議(SimpleMailTransferProtocol,簡單郵件傳輸協(xié)議)是最早出現(xiàn)的,也是被普遍使用的最基本的Internet郵件服務(wù)協(xié)議。正如它的名稱,SMTP協(xié)議支持的功能確實(shí)比較簡單,并且有安全方面的缺陷。經(jīng)過它傳遞的所有電子郵件都是以普通文本形式進(jìn)行的,不能夠傳輸諸如圖像等非文本信息。在網(wǎng)絡(luò)上給朋友傳輸文本信息意味著任何人都可以在中途截取并復(fù)制這些郵件,甚至對郵件內(nèi)容進(jìn)行竄改。POP和IMAP是取回郵件的服務(wù)。POP運(yùn)行在TCP端口110上;IMAP運(yùn)行在TCP端口143。對于收取的的郵件,SMTP與POP或IMAP的不同之處在于,SMTP收取入網(wǎng)郵件,然后將其排入用戶的本地郵箱的郵件隊(duì)列;POP和IMAP從用戶ISP的本地郵件程序取得郵件,在那里,郵件已經(jīng)排在用戶ISP的SMTP郵箱隊(duì)列中了。表4-3為SMTP、POP和IMAP列出了完整的客戶/服務(wù)器連接協(xié)議。描述協(xié)議遠(yuǎn)程端口輸入/輸出本地端口發(fā)送出網(wǎng)郵件TCP25Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP25In1024:65535收取入網(wǎng)郵件TCP1024:65535In25本地服務(wù)器響應(yīng)TCP1024:65535Out25本地客戶查詢TCP110Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP110In1024:65535遠(yuǎn)程客戶查詢TCP1024:65535In110本地服務(wù)器響應(yīng)TCP1024:65535Out110本地客戶查詢TCP143Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP143In1024:65535遠(yuǎn)程客戶查詢TCP1024:65535In143本地服務(wù)器響應(yīng)TCP1024:65535Out1434.5過濾ICMP信息設(shè)計(jì)ICMP是一種無狀態(tài)協(xié)議,它只是用來控制而不是建立連接。ICMP包有很多類型,但只有四種類型有應(yīng)答包,它們是回顯請求和應(yīng)答(Echorequestandreply),時(shí)間戳請求和應(yīng)答(Timestamprequestandreply),信息請求和應(yīng)答(Informationrequestandreply),還有地址掩碼請求和應(yīng)答(Addressmaskrequestandreply),這些包有兩種狀態(tài),NEW和ESTABLISHED。時(shí)間戳請求和信息請求已經(jīng)廢除不用了,回顯請求還是常用的,比如ping命令就用的到,地址掩碼請求不太常用,但是可能有時(shí)很有用并且值得使用。圖4-4,說明了ICMP連接的NEW和ESTABLISHED狀態(tài)。圖4-4ICMP連接狀態(tài)如圖所示,主機(jī)向目標(biāo)發(fā)送一個(gè)回顯請求,防火墻就認(rèn)為這個(gè)包處于NEW狀態(tài)。目標(biāo)回應(yīng)一個(gè)回顯應(yīng)答,防火墻就認(rèn)為包處于ESTABLISHED了。當(dāng)回顯請求被發(fā)送時(shí),ip_conntrack里就有這樣的記錄了:icmp125src=dst=0type=8code=0id=33029[UNREPLIED]src=0dst=type=0code=0id=33029use=1可以看到,ICMP的記錄和TCP的有點(diǎn)區(qū)別,協(xié)議名稱、超時(shí)時(shí)間和源、目地址都一樣,不同之處在于沒有了端口,而新增了三個(gè)新的字段:type,code和id。字段type說明ICMP的類型。code說明ICMP的代碼,這些代碼在附錄ICMP類型里有說明。id是ICMP包的ID。每個(gè)ICMP包被發(fā)送時(shí)都被分配一個(gè)ID,接受方把同樣的ID分配給應(yīng)答包,這樣發(fā)送方能認(rèn)出是哪個(gè)請求的應(yīng)答。[UNREPLIED]的含義和前面一樣,說明數(shù)的傳輸只發(fā)生在一個(gè)方向上,也就是說未收到應(yīng)答。再往后,是應(yīng)答包的源、目地址,還有相應(yīng)的三個(gè)新字段,要注意的是type和code是隨著應(yīng)答包的不同而變化的,id和請求包的一樣。和前面一樣,應(yīng)答包被認(rèn)為是ESTABLISHED的。然而,在應(yīng)答包之后,這個(gè)ICMP連接就不再有數(shù)據(jù)傳輸了。所以,一旦應(yīng)答包穿過防火墻,ICMP的連接跟蹤記錄就被銷毀了。以上各種情況,請求被認(rèn)為NEW,應(yīng)答是ESTABLISHED。換句話說,就是當(dāng)防火墻看到一個(gè)請求包時(shí),就認(rèn)為連接處于NEW狀態(tài),當(dāng)有應(yīng)答時(shí),就是ESTABLISHED狀態(tài)。4.6域名(DNS)服務(wù)設(shè)計(jì)DNS依賴于TCP和UDP兩種通信協(xié)議。客戶機(jī)—服務(wù)器式查詢,查詢請求一般是在UDP上完成的。如果返回的信息太大以至于無法裝入單個(gè)UDPDNS數(shù)據(jù)包,查詢的UDP通信就會(huì)失敗。服務(wù)器會(huì)設(shè)置DNS消息頭中的一個(gè)標(biāo)志位,用以指示數(shù)據(jù)是被截?cái)嗟摹_@種情況下,允許以TCP重試。防火墻一般情況下,都應(yīng)該是允許DNS數(shù)據(jù)流穿過防火墻的,因?yàn)橛蛎馕鍪俏覀兘?jīng)常需要的一項(xiàng)服務(wù),如果不這么做的話,我們一般無法定位到一臺遠(yuǎn)程主機(jī)。表4-5列出了本防火墻用到的有關(guān)DNS規(guī)則的說明。表4-5DNS協(xié)議描述協(xié)議遠(yuǎn)程端口輸入/輸出本地端口本地客戶查詢UDP53Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)UDP53In1024:65535本地客戶查詢TCP53Out1024:65535遠(yuǎn)程服務(wù)器響應(yīng)TCP53In1024:65535當(dāng)主機(jī)名需要查詢時(shí),解析程序主向DNS服務(wù)器請求查詢。大部分計(jì)算機(jī)只是作為DNS的客戶機(jī),而服務(wù)器運(yùn)行于一個(gè)遠(yuǎn)程計(jì)算機(jī)上。5防火墻測試與性能分析5.1攻擊測試在默認(rèn)的情況下windows的ping發(fā)送的數(shù)據(jù)包大小為32byt,我們也可以自己定義它的大小,但有一個(gè)大小的限制,就是最大只能發(fā)送65500byt,也許有人會(huì)問為什么要限制到65500byt,因?yàn)閃indows系列的系統(tǒng)都有一個(gè)安全漏洞(也許還包括其他系統(tǒng))就是當(dāng)向?qū)Ψ揭淮伟l(fā)送的數(shù)據(jù)包大于或等于65532時(shí),對方就很有可能當(dāng)機(jī),所以微軟公司為了解決這一安全漏洞于是限制了ping的數(shù)據(jù)包大小。雖然微軟公司已經(jīng)做了此限制,但這個(gè)參數(shù)配合其他參數(shù)以后危害依然非常強(qiáng)大,比如我們就可以通過配合-t參數(shù)來實(shí)現(xiàn)一個(gè)帶有攻擊性的命令:C:\>ping-l65500-t,這樣它就會(huì)不停的向計(jì)算機(jī)發(fā)送大小為65500byt的數(shù)據(jù)包,如果你只有一臺計(jì)算機(jī)也許沒有什么效果,但如果有很多計(jì)算機(jī)那么就可以使對方完全癱瘓,在試驗(yàn)環(huán)境下如果將防火墻停掉,當(dāng)同時(shí)使用10臺以上計(jì)算機(jī)ping一臺Win2000Pro系統(tǒng)的計(jì)算機(jī)時(shí),不到10分鐘對方的網(wǎng)絡(luò)就已經(jīng)完全癱瘓,網(wǎng)絡(luò)嚴(yán)重堵塞,HTTP和FTP服務(wù)完全停止。將防火墻停止,運(yùn)用ping-t程序的攻擊,所發(fā)出的所有數(shù)據(jù)都被目標(biāo)主機(jī)接受了,如圖5-1所示。圖5-1無防火墻攻擊結(jié)果如果在防火墻的保護(hù)下,那么這些無用的數(shù)據(jù)包都會(huì)被防火墻無聲的丟棄,這樣攻擊也就沒有任何意義了,如圖5-2所示。所有的發(fā)往目標(biāo)主機(jī)的數(shù)據(jù)包都被防火墻攔截了下來,因此攻擊者能看到的只是系統(tǒng)返回的超時(shí)信息。圖5-2有防火墻攻擊結(jié)果5.2協(xié)議過濾測試在協(xié)議過過濾測試這一部分,我們主要還是看在有防火墻的情況下,那些我們常用的協(xié)議是否能夠順利的通過或被攔截。我以訪問外網(wǎng)的WEB服務(wù)器為例,其它協(xié)議也是同樣的道理,這里就不再闡述了。首先,找到這個(gè)變量WEB_SERVER="1",表示允許我們通過客戶端的IE瀏覽器訪問外網(wǎng)的WEB服務(wù)器,這時(shí),http協(xié)議能夠輕松的通過防火墻。相反,我們將變量WEB_SERVER的值改為0,那么防火墻是不允許http協(xié)議通過的,這時(shí)在客戶端再訪問WEB服務(wù)器,我們會(huì)因?yàn)檎也坏椒?wù)器而發(fā)生域名解析的錯(cuò)誤,這完全是因?yàn)榉阑饓ψ杞亓薶ttp協(xié)議的緣故。結(jié)論由于計(jì)算機(jī)網(wǎng)絡(luò)互聯(lián)的重要性,網(wǎng)絡(luò)安全是我國計(jì)算機(jī)網(wǎng)絡(luò)建設(shè)中應(yīng)當(dāng)引起重視的問題。在計(jì)算機(jī)安全性和計(jì)算機(jī)所能提供功能之間的平衡性是很重要的。在很多情況下,最安全的計(jì)算機(jī)往往功能是簡單的,能提供多種服務(wù)的則是最不安全的。在Linux2.4內(nèi)核下基于netfilter設(shè)計(jì)防火墻的過濾規(guī)則,實(shí)現(xiàn)了一個(gè)包過濾的防火墻,重點(diǎn)解決了在Linux環(huán)境下在netfilter中設(shè)計(jì)防火墻的問題,并在此基礎(chǔ)上增加了主動(dòng)及被動(dòng)的安全措施以實(shí)現(xiàn)網(wǎng)絡(luò)安全的功能。Linux操作系統(tǒng)中的包過濾防火墻具有一般包過濾防火墻的優(yōu)點(diǎn):簡單,速度快,功能強(qiáng),能按照系統(tǒng)設(shè)定的安全策略對防火墻進(jìn)行過濾,但是它也具有了很多傳統(tǒng)包過濾防火墻缺點(diǎn):1.很多網(wǎng)絡(luò)服務(wù)的端口號是不固定的,對這些服務(wù)不可能進(jìn)行很好的過濾。2.一些應(yīng)用協(xié)議使用的信息打包在IP數(shù)據(jù)報(bào)中,所以不能方便地被包過濾級防火墻訪問和使用,所以對應(yīng)用服務(wù)的過濾很難。3.審計(jì)功能差,過濾規(guī)則的設(shè)計(jì)存在矛盾關(guān)系,過濾規(guī)則簡單,安全性差,過濾規(guī)則復(fù)雜,管理困難。4.無法有效的抵御欺騙攻擊。對于欺騙攻擊,采用的是對已知的不合法IP地址進(jìn)行過濾操作,只要是屬于這些地址發(fā)過來的數(shù)據(jù)報(bào),都將被防火墻丟棄而不能到達(dá)目標(biāo)主機(jī)。由于時(shí)間和條件限制,本論文所設(shè)計(jì)的防火墻還有很多地方需要改進(jìn)和完善,主要表現(xiàn)在以下幾個(gè)方面:1.在包過濾管理模塊中還缺乏過濾規(guī)則檢查,有可能造成規(guī)則沖突的情況,這還需要防火墻管理員很高的專業(yè)知識。2.對網(wǎng)絡(luò)掃描防御還存在問題,當(dāng)專業(yè)黑客掃描目標(biāo)端口時(shí)可能只掃描攻擊目標(biāo)幾個(gè)端口,所以防火墻對這中掃描攻擊沒有作用,還需要找出更加完善的辦法來進(jìn)行防范。致謝本課題及論文是在我的導(dǎo)師陳老師的親切關(guān)懷和悉心指導(dǎo)下完成的。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。從課題的選擇到項(xiàng)目的最終完成,陳老師都始終給予我細(xì)心的指導(dǎo)和不懈的支持。三個(gè)多月以來,陳老師不僅在學(xué)業(yè)上給我以精心指導(dǎo),同時(shí)還在思想、生活上給我以無微不至的關(guān)懷,在此謹(jǐn)向陳老師致以誠摯的謝意和崇高的敬意。在此,我還要感謝在一起愉快的度過大學(xué)生活的同學(xué)們,正是由于你們的幫助和支持,我才能克服一個(gè)一個(gè)的困難和疑惑,直至本文的順利完成。在論文即將完成之際,我的心情無法平靜,從開始進(jìn)入課題到論文的順利完成,有多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!同時(shí)也感謝其他老師在此期間的關(guān)懷和幫助,以及學(xué)院為我提供良好的畢業(yè)設(shè)計(jì)環(huán)境。最后感謝在畢業(yè)設(shè)計(jì)中為我提供幫助的眾多益友和同學(xué),以及在設(shè)計(jì)中被我引用或參考的論著的作者。再次感謝在本次畢業(yè)設(shè)計(jì)中幫助過我的所有人!
參考文獻(xiàn)1朱居正,高冰.RedHatEnterpriseLinux網(wǎng)絡(luò)管理.清華大學(xué)出版社,20052RichardPetersen.Linux技術(shù)大全.機(jī)械工業(yè)出版社,20013謝蓉,巢愛棠.Linux基礎(chǔ)及應(yīng)用.中國鐵道出版社4SteveSvehring.LinuxFirewalls.機(jī)械工業(yè)出版社,20065梁如軍.RedHatLinux9應(yīng)用基礎(chǔ)教程.機(jī)械工業(yè)出版社,19906W.RichardStevens.TCP/IPIllustrated,Volume1:TheProtocols,AddisonWesleyProfessional.19937Bishop,Matt.Introductiontocomputersecurity.pearson,20048ElizabethD.Zwicky,SimonCooper,D.BrentChapman.BuildingInter-netFirewalls,SecondEdition.O’Reilly&Associates,20009任泰明.TCP/IP協(xié)議與網(wǎng)絡(luò)編程.西安電子科技大學(xué)出版社,199710黃允聰.防火墻的選型、配置、安裝和維護(hù),2002.清華大學(xué)出版社,200511MendelCooper.高級Shell腳本編程技術(shù).互聯(lián)網(wǎng),200612博嘉科技.Linux防火墻技術(shù)探秘.國防工業(yè)出版社,200213龔儉.計(jì)算機(jī)網(wǎng)絡(luò)安全導(dǎo)論.東南大學(xué)出版社,200714蔣建春.網(wǎng)絡(luò)攻防技術(shù)原理與實(shí)踐.科學(xué)出版社,200515閻慧,王偉,寧宇鵬.防火墻原理與技術(shù).機(jī)械工業(yè)出版社,2004附錄:防火墻部分源代碼(1)防火墻部分功能變量ANYWHERE_TRACKING="1"#允許/禁止防火墻ping通其它地方LAN_TRACKING="1"#允許/禁止內(nèi)網(wǎng)主機(jī)ping通外網(wǎng)主機(jī)LAN_TRACKING_GATEWAY="1"#允許/禁止內(nèi)網(wǎng)主機(jī)ping通網(wǎng)關(guān)MAIL_SMTP_SERVER="1"#使用smtp協(xié)議發(fā)送郵件MAIL_IMAP="1"#使用imap協(xié)議接收郵件MAIL_POP="1"#使用pop協(xié)議接收郵件WEB_SERVER="1"#允許/禁止內(nèi)網(wǎng)用戶訪問外網(wǎng)WEB服務(wù)器WEB_SERVER_LAN="1"#允許/禁止外網(wǎng)用戶訪問內(nèi)網(wǎng)WEB服務(wù)器USENET_SERVER="1"#允許/禁止內(nèi)網(wǎng)用戶訪問外網(wǎng)新聞服務(wù)器NEWS_IPADDR=""#外網(wǎng)新聞服務(wù)器的IP地址FTP_SERVER="1"#允許/禁止內(nèi)網(wǎng)用戶訪問外網(wǎng)的FTP服務(wù)器FTP_LAN_SERVER="1"#允許/禁止外網(wǎng)用戶訪問內(nèi)網(wǎng)的FTP服務(wù)器FTP_LAN_IPADDR=""#內(nèi)網(wǎng)FTP服務(wù)器的IP地址INTERNET_INTERFACE="eth1"#防火墻外網(wǎng)接口LAN_INTERFACE="eth0"#防火墻內(nèi)網(wǎng)接口LOOPBACK_INTERFACE="lo"#防火墻環(huán)回接口INTERNET_IPADDR=""#防火墻外網(wǎng)接口地址INTERNET_NETWORK=""#外網(wǎng)網(wǎng)絡(luò)地址INTERNET_BROADCAST="55"#外網(wǎng)廣播地址LAN_IPADDR=""#防火墻內(nèi)網(wǎng)接口地址LAN_ADDRESSES="/24"#內(nèi)網(wǎng)地址范圍LAN_NETWORK=""#內(nèi)網(wǎng)網(wǎng)絡(luò)地址CLASS_A="/8"#A類私有地址CLASS_B="/12"#B類私有地址CLASS_C="/16"#C類私有地址CLASS_D_MULTICAST="/4"#D類多播地址CLASS_E_RESERVED_NET="/5"#E類保留地址BROADCAST_SRC=""#廣播源地址BROADCAST_DEST="55"#廣播目的地址(2)防火墻初始化部分代碼#打開核心轉(zhuǎn)發(fā)功能echo1>/proc/sys/net/ipv4/ip_forward#丟棄源路由數(shù)據(jù)包forfin/proc/sys/net/ipv4/conf/*/accept_source_route;doecho0>$fdone#啟用SYN緩沖echo1>/proc/sys/net/ipv4/tcp_syncookies#刪除預(yù)先存在的規(guī)則及重置默認(rèn)策略/sbin/iptables--flush/sbin/iptables-X/sbin/iptables--policyINPUTACCEPT/sbin/iptables--policyOUTPUTACCEPT/sbin/iptables--policyFORWARDACCEPT#防火墻安全停止if["$1"="stop"]thenecho"*********************************************************"echo"*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度農(nóng)業(yè)科技項(xiàng)目可行性研究合同
- 二零二五年度養(yǎng)老機(jī)構(gòu)聘用護(hù)工服務(wù)合同標(biāo)準(zhǔn)范本4篇
- 2025年全球及中國數(shù)字集中病人監(jiān)護(hù)系統(tǒng)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國加密電子郵件服務(wù)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 二零二五年度內(nèi)地居民離婚協(xié)議執(zhí)行監(jiān)督合同
- 書店裝修終止合同協(xié)議書
- 美容院裝修燈光設(shè)計(jì)合同
- 簡易網(wǎng)絡(luò)推廣居間合同
- 高考地理一輪專項(xiàng)復(fù)習(xí)必刷題:天氣與氣候(原卷版+解析版)
- 節(jié)能減排技術(shù)研發(fā)合同
- 避暑旅游目的地評價(jià)指標(biāo)、閾值和評價(jià)等級表、人體舒適度、度假氣候指數(shù)和旅游氣候指數(shù)計(jì)算方法
- 允許一切發(fā)生:過不緊繃松弛的人生
- 注塑生產(chǎn)過程控制流程
- 教科版六年級科學(xué)下冊 (廚房里的物質(zhì)與變化)教學(xué)課件
- 公務(wù)員面試應(yīng)急應(yīng)變題目大全及解析
- 浙江省炮制規(guī)范2015版電子版
- 冰心《童年的春節(jié)》
- 鄭州小吃詳細(xì)地點(diǎn)
- 上海高考英語詞匯手冊
- 2021年江蘇省淮安市淮陰中學(xué)高一政治下學(xué)期期末試題含解析
- 公共政策工具-課件
評論
0/150
提交評論