彩票查询_2021美洲杯决赛:阿根廷vs巴西回放_2025世俱杯参赛球队有哪些_英格兰乙级联赛 - 竞彩足球500

快壓

當(dāng)前位置:首頁 > 電腦技巧 > 正文

linux 服務(wù)器必備的常用安全軟件

瀏覽次數(shù):|更新日期:2014年09月29日

  linux 服務(wù)器必備的常用安全軟件: 作為一個(gè)合格的網(wǎng)絡(luò)系統(tǒng)管理員,要誰時(shí)應(yīng)對(duì)可能發(fā)生的安全問題,掌握Linux下各種必須的安全工具設(shè)備是很重要的。本文主要介紹Linux上常用的安全工具,例如,Nmap、Snort、Nesseu等安裝、使用和維護(hù)知識(shí)。通過這些工具管理人員能夠了解其系統(tǒng)目前存在的安全隱患、入侵者可能利用的漏洞,及時(shí)發(fā)現(xiàn)入侵,并構(gòu)造一個(gè)堅(jiān)固的防御體系將入侵拒之門外。
  一、安全信息收集軟件
  對(duì)于系統(tǒng)管理員來說,了解和掌握系統(tǒng)當(dāng)前的安全狀態(tài)是做到知己的第一個(gè)步驟。安全信息收集軟件就是用來收集目前系統(tǒng)安全狀態(tài)的有力工具。端口掃描軟件和漏洞掃描軟件是常用的信息收集軟件。入侵者通常通過端口掃描軟件來掌握系統(tǒng)開放端口,運(yùn)行服務(wù)器軟件版本和操作系統(tǒng)版本等相關(guān)信息。而對(duì)于管理人員,通過這些軟件可以讓管理人員從入侵者的角度來審視系統(tǒng),并且能夠根據(jù)這些信息進(jìn)行相應(yīng)的配置和修改來迷惑入侵者。漏洞掃描軟件能夠獲得具體的漏洞信息,利用這些漏洞信息,入侵者能夠輕易地訪問系統(tǒng)、獲得非授權(quán)信息,甚至是獲得整個(gè)系統(tǒng)的控制權(quán)限。而對(duì)于管理人員,通過漏洞掃描軟件獲得的信息能夠幫助自己及時(shí)對(duì)系統(tǒng)進(jìn)行加固和防御,讓入侵者無機(jī)可乘。
  1、Nmap
  Nmap是一個(gè)網(wǎng)絡(luò)探測(cè)和安全掃描程序,使用這個(gè)軟件可以掃描大型的網(wǎng)絡(luò),以獲取那臺(tái)主機(jī)正在運(yùn)行及提供什么服務(wù)等信息。Nmap支持很多掃描技術(shù),例如UDP、TCPconnect()、TCP SYN(半開掃描)、FTP代理(bounce攻擊)、反向標(biāo)志、ICMP、FIN、ACK掃描、圣誕樹(Xmas Tree)、SYN掃描和null掃描。Nmap還提供了一些高級(jí)的特征,例如,通過TCP/IP協(xié)議棧特征探測(cè)操作系統(tǒng)類型、秘密掃描、動(dòng)態(tài)延時(shí)、重傳計(jì)算和并行掃描,通過并行ping掃描探測(cè)關(guān)閉的主機(jī)、誘餌掃描,避開端口過濾檢測(cè),直接RPC掃描(無須端口影射)、碎片掃描,以及靈活的目標(biāo)和端口設(shè)定。
 ?。?)安裝
  Nmap的安裝很簡(jiǎn)單,Linux各發(fā)行版本上通常都已經(jīng)安裝了Namp。這里首先用nmap-v查看當(dāng)前系統(tǒng)所安裝的nmap版本號(hào):
  # nmap -v
  Starting nmap V. 4.00.(www.insecure.org/nmap/)
  由于目前系統(tǒng)所安裝的Nmap為4.00,不是最新版本,因此要首先從http://www.insecure.org/nmap/下載最新版本的源代碼。目前最新版本為Nmap-5.5.tar.bz2,該文件為源代碼壓縮包,需要用bzip2進(jìn)行解壓縮。我們將該文件下載并保存在/root/nmap下,以root用戶進(jìn)行安裝。
  # bzip2 –cd nmap-5.5.tar.bz2∣tar xvf-
  該命令將Nmap源代碼解壓縮至目錄nmap-5.5。
  進(jìn)入該目錄進(jìn)行配置:
  # ./configure
  配置結(jié)束后用make命令進(jìn)行編譯:
  # make
  編譯結(jié)束后用make install進(jìn)行安裝:
  # make install
  (2)使用
  ◆各種掃描模式與參數(shù)
  首先需要輸入要探測(cè)的主機(jī)IP地址作為參數(shù)。假設(shè)一個(gè)LAN中有兩個(gè)節(jié)點(diǎn):192.168.12.1和192.168.12.2
  # nmap 192.168.12. 1
  Starting nmap 5.5(http://www.insecure.org/nmap/) at 2010-01-24 15:24 CST
  Interesting ports on 192.168.12. 1: (The 1651 ports scanned but not shown below are in state: closed)
  PORTSTATE SERVICE
  25/tcpopen smtp
  80/tcpopen http
  135/tcp open msrpc
  139/tcp open netbios-ssn
  443/tcp open https
  445/tcp open Microsoft-ds
  1025/tcp open NFS-or-IIS
  1033/tcp open netinfo
  1521/tcp open oracle
  2030/tcp open device2
  3372/tcp open msdtc
  8080/tcp open http-proxy
  MAC Address: 00:E0:4C:12:FA:4B (Realtek Semiconductor)
  Nmap run completed – 1 IP address (1 host up)
  Scanned in 22.882 seconds
  上面是對(duì)目標(biāo)主機(jī)進(jìn)行全面TCP掃描的結(jié)果,顯示了監(jiān)聽端口的服務(wù)情況,這一基本操作不需要任何參數(shù)。但是, 由于在掃描過程中建立了完整的TCP連接,主機(jī)可以很容易地監(jiān)測(cè)到這類掃描。該命令是參數(shù)開關(guān)-sT的缺省。
  -sS選項(xiàng)可以進(jìn)行更加隱蔽地掃描,并防止被目標(biāo)主機(jī)檢測(cè)到,但此方式需要用戶擁有root權(quán)限。-sF、-sX和-sN則可以進(jìn)行一些超常的掃描。假如目標(biāo)主機(jī)安裝了過濾和日志軟件來檢測(cè)同步空閑字符SYN,那么-sS的隱蔽作用就失效了,此時(shí)可以采用-sF(隱蔽FIN)、-sX(Xmas Tree)及-sN(Null)方式掃描。
  這里需要注意的是,由于微軟的實(shí)現(xiàn)方式不同,對(duì)于運(yùn)行Win 2003,Vista等NT的機(jī)器FIN 、Xmas或Null的掃描結(jié)果都是將端口關(guān)閉,由此可作為推斷目標(biāo)主機(jī)運(yùn)行Windows操作系統(tǒng)的一種方法。以上命令都需要有root權(quán)限。-sU選項(xiàng)是監(jiān)聽目標(biāo)主機(jī)的UDP,而不是默認(rèn)的TCP端口。盡管在Linux機(jī)器上有時(shí)慢一些,比如,輸入上面的例子:
  # nmap -sU 192.168.12.1
  Starting nmap 5.5 (http://www.insecure.org/nmap/) at 2010-01-24 15:28 CST
  Interesting ports on 192.168.12.1:
  (The 1472 ports scanned but not shown below are in state:closed)
  PORTSTATESERVICE
  135/udp open msrpc
  137/udp open∣filtered netbios-ns
  138/udp open∣filtered netbios-dgm
  445/udp open∣filtered microsoft-ds
  500/udp open∣filtered isakmp
  3456/udp open∣filtered IISrpc-or-vat
  MAC Address: 00:E0:4C:12:FA:44 (Realtek Semiconductor)
  Nmap run completed – 1 IP address (1 host up) scanned in 4.381 seconds
  ◆操作系統(tǒng)探測(cè)
  使用-O選項(xiàng)可推斷目標(biāo)主機(jī)的操作系統(tǒng),既可與上述的命令參數(shù)聯(lián)合使用,也可單獨(dú)調(diào)用。Nmap利用TCP/IP指紋技術(shù)來推測(cè)目標(biāo)主機(jī)的操作系統(tǒng)。還使用前面的例子:
  #nmap -O 192.168.12. 1
  Starting nmap 5.5(http://www.insecure.org/nmap/)at 2010-01-24 16:03 CST
  Interesting ports on 192.168.12. 1:
  (The 1651 ports scanned but not shown below are in state:closed)
  PORTSTATE SERVICE
  25/tcpopen smtp
  80/tcpopen http
  135/tcp open msrpc
  139/tcp open netbios-ssn
  443/tcp open https
  445/tcp open Microsoft-ds
  1025/tcp open NFS-or-IIS
  1033/tcp open netinfo
  1521/tcp open oracle
  2030/tcp open device2
  3372/tcp open msdtc
  8080/tcp open http-proxy
  MAC Address: 00:E0:4C:12:FA:44 (Realtek Semiconductor)
  Device type: general purpose
  Running:Microsoft Windows 95/98/ME∣NT/2K/XP
  OS details:Microsoft Windows Millennium Edition(Me),Windows 2000 Pro or Advanced Server,or Windows XP
  Nmap run completed – 1 IP address(1 host up) scanned in 3.398 seconds
  Nmap提供了一個(gè)OS數(shù)據(jù)庫,上例中檢測(cè)到了該主機(jī)運(yùn)行的操作系統(tǒng)為Windows系列操作系統(tǒng),可能為Windows 98、Windows 2000 Pro,或者為Windews vista/Windows 7等。
  ◆更進(jìn)一步的應(yīng)用
  除了一次只掃描一個(gè)目標(biāo)主機(jī)外,還可以同時(shí)掃描一個(gè)主機(jī)群,比如nmap –sT –O 203.187.1.1-50就可以同時(shí)掃描并探測(cè)IP地址在203.187.1.1到203.187.1.50之間的每一臺(tái)主機(jī)。當(dāng)然這需要更多的時(shí)間,耗費(fèi)更多的系統(tǒng)資源和網(wǎng)絡(luò)帶寬,輸出結(jié)果也可能很長(zhǎng)。所以,可以使用下面命令將結(jié)果重定向輸送到一個(gè)文件中:
  #nmap -sT -O -oN test.txt 202.96.1.1-50
  另外的一些命令參數(shù)選項(xiàng)如下:
  -I 進(jìn)行TCP反向用戶認(rèn)證掃描,可以透露掃描用戶信息;
  -iR 進(jìn)行隨機(jī)主機(jī)掃描;
  -p 掃描特定的端口范圍;
  -v 長(zhǎng)數(shù)據(jù)顯示,-v -v是最長(zhǎng)數(shù)據(jù)顯示;
  -h 快捷幫助。
  下面給一個(gè)綜合了上述參數(shù)的例子:
  #nmap -sS -p 23,80 -oN ftphttpscan.txt 203.187.53.50-100
  ◆Nmap圖形用戶界面
  Nmap有一些圖形用戶前端,比如,NmapFE(GTK界面)網(wǎng)址為
  http://codebox.net/nmapfe.html;Kmap(Qt/KDE前端)網(wǎng)址為
  http://www.edotorg.org/kde/kmap/;KNmap(KDE前端)網(wǎng)址為
  http://pages.infinit.net/rewind/。
  2.Nessus
  Nessus是一個(gè)功能強(qiáng)大而又易于使用的遠(yuǎn)程安全掃描器,它不僅免費(fèi),而且更新極快。安全掃描器的功能是對(duì)指定網(wǎng)絡(luò)進(jìn)行安全檢査,找出該網(wǎng)絡(luò)是否存在有導(dǎo)致對(duì)手攻擊的安全漏洞。該系統(tǒng)被設(shè)計(jì)為Client/Sever模式,服務(wù)器端負(fù)責(zé)進(jìn)行安全檢查,客戶端用來配置管理服務(wù)器端。在服務(wù)端還采用了plug-in的體系,允許用戶加入執(zhí)行特定功能的插件,該插件可以進(jìn)行更快速和更復(fù)雜的安全檢查。在Nessus中還采用了一個(gè)共享的信息接口,稱之知識(shí)庫,其中保存了前面進(jìn)行檢査的結(jié)果。檢查的結(jié)果可以HTML、純文本、LaTeX(一種文本文件格式)等幾種格式保存。在未來的新版本中,Nessus將會(huì)支持速度更快的安全檢查,而且這種檢查將會(huì)占用更少的帶寬,其中可能會(huì)用到集群的技術(shù)以提高系統(tǒng)的運(yùn)行效率。
  Nessus的主要優(yōu)點(diǎn)在于其采用了基于多種安全漏洞的掃描,避免了掃描不完整的情況;它是免費(fèi)的,比起商業(yè)的安全掃描工具,如ISS具有價(jià)格優(yōu)勢(shì);擴(kuò)展性強(qiáng)、容易使用、功能強(qiáng)大,可以掃描出多種安全漏洞。
  Nessus的安全檢查完全是由plug-ins的插件完成的。目前Nessus提供的安全檢查插件已達(dá)18類750個(gè),而且這個(gè)數(shù)量還會(huì)增加。比如,在useless services類中,Echo port open和Chargen插件用來測(cè)試主機(jī)是否易受到已知的echo-chargen攻擊;在backdoors類中,PcAnywhere插件用來檢查主機(jī)是否運(yùn)行了BO、PcAnywhere等后臺(tái)程序。更可喜的是,其中包括了對(duì)最近肆虐一時(shí)的CodeRed及其變種的檢測(cè)。
  在Nessus主頁中不但詳細(xì)介紹了各種插件的功能,還提供了解決問題的相關(guān)方案。有關(guān)plug-in的詳細(xì)說明,請(qǐng)參看http://cgi.nessus.org/plugins/dump.php3?viewby=family。
  除了這些插件外,Nessus還為用戶提供了描述攻擊類型的腳本語言,進(jìn)行附加的安全測(cè)試,這種語言稱為Nessus攻擊腳本語言(NSSL),用它來完成插件的編寫。在客戶端,用戶可以指定運(yùn)行Nessus服務(wù)的機(jī)器、使用的端口掃描器、測(cè)試的內(nèi)容及測(cè)試的IP地址范圍。Nessus本身是工作在多線程基礎(chǔ)上的,所以用戶還可以設(shè)置系統(tǒng)同時(shí)工作的線程數(shù)。這樣用戶在遠(yuǎn)端就可以設(shè)置Nessus的工作配置。安全檢測(cè)完成后,服務(wù)端將檢測(cè)結(jié)果返回到客戶端,客戶端生成直觀的報(bào)告。在這個(gè)過程當(dāng)中,由于服務(wù)器向客戶端傳送的內(nèi)容是系統(tǒng)的安全弱點(diǎn),為了防止通信內(nèi)容受到監(jiān)聽,其傳輸過程還可以選擇加密。19寸顯示器最佳分辨率
  (1)安裝軟件
  Nessus由客戶端和服務(wù)器端兩部分組成。首先看服務(wù)器端的安裝。從http://ftp.nessus.org/nessus/nessus-2.2.2a/src/下載源代碼包,其中包括nasl庫文件libnasl-2.2.2a.tar.gz、nessus核心文件nessus-core-2.2.2a.tar.gz、nessus庫文件nessus-libraries-2.2a.tar.gz和nessus插件文件nessus-plugins-2.2.2a.tar.gz 四個(gè)文件。
  首先用tar xzvf nessus-*將這四個(gè)軟件包解開。第一個(gè)先安裝nessus的lib庫:
  #cd nessus-libaries
  #./configure & make &make install
  然后以同樣的方法按照上面的順序安裝其它三個(gè)軟件包。安裝完畢后,確認(rèn)在etc/ld.so.conf文件加入已安裝庫文件的路徑/usr/local/lib。如果沒有,則只需在該文件中加入這個(gè)路徑,然后執(zhí)行l(wèi)dconfig,這樣nessus運(yùn)行的時(shí)候就可以找到運(yùn)行庫了。
  ◆創(chuàng)建用戶
  Nessus服務(wù)端有自己的用戶資料庫,其中對(duì)每個(gè)用戶都做了約束。用戶可以在整個(gè)網(wǎng)絡(luò)范圍內(nèi)通過nessusd服務(wù)端進(jìn)行安全掃描。用nessus-adduser命令創(chuàng)建用戶,根據(jù)命令提示創(chuàng)建用戶。
  Nessus-adduser是Nessusd的附帶工具,安裝完畢后,在安裝目錄下會(huì)產(chǎn)生這個(gè)程序。
  ◆配置Nessus服務(wù)端程序Nessusd
  Nessusd的配置文件為nessusd.conf,位于/usr/local/etc/nessus/目錄下,一般情況下不需要改動(dòng)。這里還需要運(yùn)行nessus-mkcert來生成服務(wù)器證書,可以按照默認(rèn)設(shè)置。
  ◆啟動(dòng)nessusd
  在上面的準(zhǔn)備工作完成后,以root用戶身份用下面的命令啟動(dòng)服務(wù)端:
  # netssusd –D
  Loading the plugins…3570(out of 5830)
  載入完所有插件后將以系統(tǒng)服務(wù)進(jìn)程的身份運(yùn)行。
  (2)使用
  按照上面的方法啟動(dòng)Nessus的服務(wù)進(jìn)程后,就可以執(zhí)行客戶端程序進(jìn)行安全掃描了。
  首先提示登錄到Nessus服務(wù)器,在Nessus Host后面輸入Nessus服務(wù)器所在的Linux機(jī)器IP地址,端口號(hào)及加密方式不需要做改動(dòng)。輸入用戶名,單擊 Log in登錄。系統(tǒng)會(huì)詢問是否接受服務(wù)器證書,選擇第一項(xiàng),然后單擊YES接受證書。
  一旦登錄成功,Log in按鈕會(huì)變?yōu)長(zhǎng)og out,對(duì)話框的旁邊還會(huì)有connected的提示。登錄后就可以進(jìn)行相應(yīng)的漏洞掃描了。下面通過選擇Plug-in插件來進(jìn)行相應(yīng)的安全掃描。下面是插件所能檢査的攻擊方法,單擊每個(gè)攻擊方法會(huì)彈出一個(gè)對(duì)話框介紹它的危害性及解決方法。然后選擇掃描的目標(biāo)主機(jī),單擊target selection,在窗口中輸入目標(biāo)地址,如上面所輸入的192.168.12. 2。這里作者用的是一個(gè)內(nèi)部地址,還可以用192.168.6.0/24的方式指定掃描192.168.6.1到192.168.6.255整個(gè)網(wǎng)段。
  設(shè)置完畢后,單擊start scan開始進(jìn)行掃描。根據(jù)選擇的插件數(shù)量、掃描的范圍掃描時(shí)間不等。掃描結(jié)束后會(huì)有掃描結(jié)果。
  在窗口的中列出了所有被掃描的網(wǎng)絡(luò)、主機(jī)和主機(jī)相 應(yīng)的端口,Nessus給出了安全漏洞的嚴(yán)重等級(jí)、問題的產(chǎn)生原因及解決方法。最后,掃描結(jié)果還能夠以XML、ASCⅡ、HTML、NSR等多種格式存盤,做為參考資料供以后使用。
  入侵檢測(cè)系統(tǒng)(IDS)
  1、原理
  入侵檢測(cè)系統(tǒng)(Intrusion Detection System,IDS)是一種主動(dòng)保護(hù)自己免受攻擊的一種網(wǎng)絡(luò)安全技術(shù)。作為防火墻的合理補(bǔ)充,入侵檢測(cè)技術(shù)能夠幫助系統(tǒng)監(jiān)測(cè)攻擊行為,擴(kuò)展了系統(tǒng)管理員的安全管理能力(包括安全審計(jì)、監(jiān)視、攻擊識(shí)別和響應(yīng)),提高了信息安全基礎(chǔ)結(jié)構(gòu)的完整性。它從計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中的若干關(guān)鍵點(diǎn)收集信息,并分析這些信息。 入侵檢測(cè)被認(rèn)為是防火墻之后的第二道安全閘門,能夠在不影響網(wǎng)絡(luò)性能的情況下能對(duì)網(wǎng)絡(luò)進(jìn)行監(jiān)測(cè),防止或減輕上述的網(wǎng)絡(luò)威脅。
  入侵檢測(cè)系統(tǒng)有很多種,從部署的位置可以分為以下幾種:
  ◆基于網(wǎng)絡(luò)的系統(tǒng),它放置于網(wǎng)絡(luò)之上,靠近被檢測(cè)的系統(tǒng),它們監(jiān)測(cè)網(wǎng)絡(luò)流量并判斷是否正常。
  ◆基于主機(jī)的系統(tǒng),其經(jīng)常運(yùn)行在被監(jiān)測(cè)的系統(tǒng)之上,用以監(jiān)測(cè)系統(tǒng)上正在運(yùn)行的進(jìn)程是否合法。
  ◆最近出現(xiàn)的一種系統(tǒng),位于操作系統(tǒng)的內(nèi)核之中,并監(jiān)測(cè)系統(tǒng)的最底層行為。
  從檢測(cè)的技術(shù)手段上可以分為以下兩種:
  ◆誤用檢測(cè)是將收集到的數(shù)據(jù)與預(yù)先確定的特征知識(shí)庫里的各種攻擊模式進(jìn)行比較,如果發(fā)現(xiàn)有攻擊特征,則判斷有攻擊。特征知識(shí)庫是將己知的攻擊方法和技術(shù)的特征提取出來建立的一個(gè)知識(shí)庫。
  ◆異常檢測(cè)則是對(duì)收集到的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析。它首先假定所有的攻擊行為與正常行為不同,這樣發(fā)現(xiàn)與正常行為有不同時(shí),則判斷存在攻擊。它需要建立正常行為的標(biāo)準(zhǔn),如登錄時(shí)錯(cuò)誤次數(shù)為多少時(shí)視為正常。
  相比而言,誤用檢測(cè)的原理簡(jiǎn)單,很容易配置,特征知識(shí)庫也容易擴(kuò)充。但它存在一個(gè)致命的弱點(diǎn)――只能檢測(cè)到已知的攻擊方法和技術(shù)。異常檢測(cè)可以檢測(cè)出已知的和未知的攻擊方法和技術(shù),但是其問題在于正常行為標(biāo)準(zhǔn)只能采用人工智能、機(jī)器學(xué)習(xí)算法等來生成,并且需要大量的數(shù)據(jù)和時(shí)間,同時(shí),由于現(xiàn)在人工智能和機(jī)器學(xué)習(xí)算法仍處于研究階段。所以現(xiàn)在的入侵檢測(cè)系統(tǒng)大多采用誤用檢測(cè)的分析方法。
  下面給介紹的Snort就是一個(gè)基于網(wǎng)絡(luò)的、采用誤用分析技術(shù)的入侵檢測(cè)系統(tǒng)。
  2.Snort的安裝、配置和使用
  Snort是一個(gè)開放源碼的網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)。Snort的功能包括采用Libpcap捕獲數(shù)據(jù)鏈路層的分組,并進(jìn)行協(xié)議棧分析(TCP/IP協(xié)議)。Snort在內(nèi)部使用Misused檢測(cè)模型進(jìn)行入侵檢測(cè),即通過一個(gè)完整的入侵規(guī)則庫來實(shí)時(shí)匹配,并探測(cè)入侵行為。這個(gè)規(guī)則庫非常全面,包含了探測(cè)緩沖區(qū)溢出、端口掃描、CGI攻擊等,并處于不斷更新當(dāng)中。Snort可以輕易發(fā)現(xiàn)使用Nmap或Trin00等進(jìn)行的攻擊。Snort也允許用戶方便地編寫和加人自己的規(guī)則。日志可以存儲(chǔ)成Tcpdump二進(jìn)制格式、ASCⅡ格式或數(shù)據(jù)庫格式(包括 MYSQL、PostgreSQL),甚至XML格式。
  (1)安裝
  在http://www.snort.org/可以下載最新版本的Snort,目前最新穩(wěn)定版本是2.8.0,下載文件為Snort-2.8.0RC2.tar.gz。安裝的方法同上面介紹的幾個(gè)軟件類似。依次經(jīng)過解壓縮后運(yùn)行./configure、make和make install。要注意的是,Snort需要libpcap庫支持,如果尚未安裝可以到http://www.tcpdump.org/下載libpcap源代碼進(jìn)行安裝,目前最新版本為0.8.3。
  執(zhí)行文件安裝完畢后還需要下載最新的規(guī)則文件。Snort采用基于誤用的檢測(cè)技術(shù),需要按照預(yù)先定義好的規(guī)則同網(wǎng)絡(luò)當(dāng)中的流量進(jìn)行比對(duì),特征一致時(shí)認(rèn)為有入侵事件發(fā)生,從而釆取相應(yīng)動(dòng)作,因此保持最新的特征庫對(duì)Snort來說尤其重要。將下載到的規(guī)則文件解壓縮,得到rules目錄,其內(nèi)容為按照攻擊類型和攻擊目標(biāo)劃分為不同規(guī)則文件。
  (2)配置
  Snort依靠命令啟動(dòng)時(shí)指定的配置文件進(jìn)行配置,通常是/etc/snort.conf,可以編輯Snort配置文件源文件所在目錄下/etc/snort.conf來進(jìn)行配置。
  # vi /root/snort/snort-2.8.0RC2/etc/
  其中需要修改的地方如下:
  Var HOME_NET yournetwork
  Var RULE_PATH /etc/snort/rules
  Preprocessor http_inspect:global
  此外還可以根據(jù)需要選擇規(guī)則集合當(dāng)中的規(guī)則文件,例如:
  iis_unicode_map /etc/snort/rules/Unicode.map 1252
  Include /etc/snort/rules/reference.config
  Include /etc/snort/rules/classification.config
  yournetwork即為所釆用的IP地址段,規(guī)則文件所在目錄為剛才下載規(guī)則文件解壓縮所在目錄。
  (3)使用
  輸入下面代碼:
  #snort –D –c /root/snort/snort-2.8.0RC2/etc/snort.conf
  其中,-D參數(shù)表明Snort以后臺(tái)進(jìn)程方式運(yùn)行,-c指名所釆用的配置文件位置。啟動(dòng)之后可以查看/var/log/snort/alert內(nèi)容來檢査結(jié)果。
  #vi alert
  [**][1:469:3]ICMP PING NMAP [**]
  [Classification:Attempted Information Leak][Priority:2]
  01/28-17:30:33.813923 192.168.100.122 ->202.12.37.7
  ICMP TTL:50 TOS:0x0 ID:36381 IpLen:20 Dgmlen:28
  Type:8 Code:0 ID:51597 Seq:14292 ECHO
  [Xref=>http://www.whitehats.com/info/IDS162]
  [**][122:1:0](portscan)TCP Portscan[**]
  01/28-17:30:33.916752 192.168.12.1 ->202.12.37.7
  PROTO255 TTL:0 TOS:0x0 ID:0 iplen:20 Dgmlen:182 DF
  由上可以看到,告警文件中記錄了網(wǎng)絡(luò)當(dāng)中一次Nmap端口掃描的行為。
  防火墻系統(tǒng)
  1、基本原理
  防火墻適用于用戶網(wǎng)絡(luò)系統(tǒng)的邊界,屬于用戶網(wǎng)絡(luò)邊界的安全保護(hù)設(shè)備。所謂網(wǎng)絡(luò)邊界即是釆用不同安全策略的兩個(gè)網(wǎng)絡(luò)連接處,比如用戶網(wǎng)絡(luò)和互聯(lián)網(wǎng)之間連接、跟其它業(yè)務(wù)往來單位的網(wǎng)絡(luò)連接及用戶內(nèi)網(wǎng)不同部門之間的連接等。防火墻的目的就是在網(wǎng)絡(luò)連接之間建立一個(gè)安全控制點(diǎn),通過允許、拒絕或重新定向經(jīng)過防火墻的數(shù)據(jù)流,實(shí)現(xiàn)對(duì)進(jìn)、出內(nèi)部網(wǎng)絡(luò)的服務(wù)和訪問的審計(jì)和控制。
  目前,有很多廠商提供各種類型的防火墻平臺(tái),通常有幾種常用的分類方法:
  按照產(chǎn)品形式可分為硬件防火墻和軟件防火墻;
  按照性能可以分為百兆級(jí)和千兆級(jí)防火墻;
  按照操作模式可分為透明模式、路由模式和NET(網(wǎng)絡(luò)地址轉(zhuǎn)換);
  按照部署位置可分為邊界防火墻和主機(jī)/個(gè)人防火墻;
  l按照OSI模型層次可分為包過濾防火墻、狀態(tài)檢測(cè) 防火墻和應(yīng)用代理防火墻。
  其中包過濾防火墻是最基本的防火墻,由一些基本路由設(shè)備通過內(nèi)部的網(wǎng)絡(luò)訪問控制規(guī)則實(shí)現(xiàn)。它一般是工作在網(wǎng)絡(luò)層,但在現(xiàn)代網(wǎng)絡(luò)結(jié)構(gòu)中,為了實(shí)現(xiàn)負(fù)載均衡/高可用性,也可能在網(wǎng)絡(luò)第二層實(shí)現(xiàn)。包過濾防火墻的訪問控制功能由一套規(guī)則集組成,這些規(guī)則集是基于網(wǎng)絡(luò)報(bào)文的以下信息實(shí)現(xiàn)的源地址、目的地址、流量類型、網(wǎng)絡(luò)會(huì)話特征或物理端口。
  下面介紹的iptables就是一款優(yōu)秀的網(wǎng)絡(luò)層防火墻用他能很容易構(gòu)建一個(gè)功能強(qiáng)大、性能優(yōu)異的防火墻系統(tǒng)。
  2.iptables的安裝、配置和使用
  Netfilter/iptables IP數(shù)據(jù)包過濾系統(tǒng)是一個(gè)功能強(qiáng)大的工具,可用于添加、編輯和除去規(guī)則,這些規(guī)則是在做數(shù)據(jù)包過濾決策時(shí)防火墻所遵循和組成的規(guī)則。這些規(guī)則存儲(chǔ)在專用的數(shù)據(jù)包過濾表中,而這些表則集成在Linux內(nèi)核中。Linux 2.4內(nèi)核提供的防火墻系統(tǒng)實(shí)際上由netfilter和iptables組成。netfilter組件是內(nèi)核的一部分,由一些數(shù)據(jù)包過濾表組成、這些表包含內(nèi)核用來控制數(shù)據(jù)包過濾處理的規(guī)則集。iptables組件是一種工具,運(yùn)行在用戶空間, 它用來維護(hù)存儲(chǔ)在內(nèi)核中的數(shù)據(jù)包過濾表中的規(guī)則。通過 iptalbes可以方便地修改、添加和刪除規(guī)則,也可以構(gòu)建自己的定制規(guī)則。內(nèi)核根據(jù)規(guī)則來決定,對(duì)來自某些源、前往某些目的地或具有某些協(xié)議類型的數(shù)據(jù)處理,可以是 ACCEPT(允許該數(shù)據(jù)包通過)、DROP(丟棄該數(shù)據(jù)包),或者是REJECT(阻塞數(shù)據(jù)包)。
  根據(jù)規(guī)則處理的數(shù)據(jù)包類型,可以將規(guī)則分組在不同鏈中。處理入站數(shù)據(jù)包的規(guī)則被添加到INPUT鏈中;處理出站數(shù)據(jù)包的規(guī)則被添加到OUTPUT鏈中;處理正在轉(zhuǎn)發(fā)的數(shù)據(jù)包的規(guī)則被添加到FORWARD鏈中。這三個(gè)鏈?zhǔn)腔緮?shù)據(jù)包過濾表中內(nèi)置的缺省主鏈。
  此外,還有其它許多可用鏈類型,如PREROUTING和POSTROUTING,以及提供用戶定義的鏈。每個(gè)鏈都可以有一個(gè)策略,它定義缺省目標(biāo),也就是要執(zhí)行的缺省操作,當(dāng)數(shù)據(jù)包與鏈中的任何規(guī)則都不匹配時(shí),執(zhí)行此操作。
  建立規(guī)則并將鏈放在適當(dāng)?shù)奈恢弥?,就可以開始進(jìn)行真正的數(shù)據(jù)包過濾工作。這時(shí)內(nèi)核空間從用戶空間接管工作。當(dāng)數(shù)據(jù)包到達(dá)防火墻時(shí),內(nèi)核先檢查數(shù)據(jù)包的頭信息,尤其是數(shù)據(jù)包的目的地,這個(gè)過程稱為路由。
  如果數(shù)據(jù)包源自外界并前往系統(tǒng),而且防火墻是打開的,那么內(nèi)核將它傳遞到內(nèi)核空間數(shù)據(jù)包過濾表的INPUT鏈。如果數(shù)據(jù)包源自系統(tǒng)內(nèi)部或系統(tǒng)所連接的內(nèi)部網(wǎng)上的其它源,并且此數(shù)據(jù)包要前往另一個(gè)外部系統(tǒng),那么數(shù)據(jù)包被傳遞到OUTPUT鏈。類似的,源自外部系統(tǒng)并前往外部系統(tǒng)的數(shù)據(jù)包被傳遞到FORWARD鏈。接下來,將數(shù)據(jù)包的頭信息與它所傳遞到的鏈中的每條規(guī)則進(jìn)行比較,看它是否與某條規(guī)則全匹配,如果數(shù)據(jù)包與某條規(guī)則匹配,那么內(nèi)核就對(duì)該數(shù)據(jù)包執(zhí)行由該規(guī)則的目標(biāo)指定的操作。但是,如果數(shù)據(jù)包與這條規(guī)則不匹配,那么它將與鏈中的下一條規(guī)則進(jìn)行比較。最后,如果數(shù)據(jù)包與鏈中的任何規(guī)則都不匹配,那么內(nèi)核將參考該鏈的策略來決定如何處理該數(shù)據(jù)包。
  (1)安裝
  通常的Linux發(fā)行版本都支持iptalbes,很多情況下它已經(jīng)隨著操作系統(tǒng)而被安裝。如果在安裝操作系統(tǒng)時(shí)沒有選擇防火墻支持,那么需要重新編譯內(nèi)核才能使用iptables。對(duì)于如何重新編譯內(nèi)核,這里就不再贅述。關(guān)于iptables的安裝可以參看iptables使用手冊(cè),或者相應(yīng)How-to文檔http://www.linuxguruz.com/iptables/howto/iptables-HOWTO.html
  (2)配置
  下面介紹iptalbes的常用參數(shù)。
  ◆對(duì)規(guī)則的操作
  加入(append)一個(gè)新規(guī)則到一個(gè)鏈(-A)的最后。
  在鏈內(nèi)某個(gè)位置插入(insert)一個(gè)新規(guī)則(-I),通常是插在最前面。
  在鏈內(nèi)某個(gè)位置替換(replace)一條規(guī)則(-R)。
  在鏈內(nèi)某個(gè)位置刪除(delete)一條規(guī)則(-D)。
  刪除(delete)鏈內(nèi)第一條規(guī)則(-D)。
  ◆指定源地址和目的地址
  通過――source/–src/-s可以指定源地址(這里的/表示或者的意思,下同),通過destination/–dst/-s可以指定目的地址。有四種方法可以指定IP地址:使用完整的域名,如www.buaa.educn;使用IP地址,如192.168.1.1;用X.X.X.X/X.X.X.X指定一個(gè)網(wǎng)絡(luò)地址,如192.168.1.0/255.255.255.0;
  用X.X.X.X/X指定一個(gè)網(wǎng)絡(luò)地址,如192.168.1.0/24,這里的24表明了子網(wǎng)掩碼的有效位數(shù)。
  ◆指定網(wǎng)絡(luò)接口
  使用in-interface/-i或out-interface/-o來指定網(wǎng)絡(luò)接口。
  ◆指定協(xié)議及端口
  通過――protocol/-p選項(xiàng)來指定協(xié)議,如果是UDP和TCP協(xié)議,還可使用source-port/–sport和destination-port/–dport來指明端 口。
  關(guān)于防火墻的具體應(yīng)用,這里限于篇幅就不詳細(xì)介紹,在以后的文章中會(huì)以一個(gè)具體的例子來說明如何利用iptables的防火墻和網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)功能來提供一個(gè)安全、穩(wěn)定、可靠的Internet接入。
  小結(jié)
  Linux系統(tǒng)以其強(qiáng)大的功能和開放的平臺(tái),為許多安全工具提供支持。除了以上列舉到的Nmap、Nessue、Snort、iptables等軟件外,還有諸多的安全工具能夠在Linux平臺(tái)下運(yùn)行。掌握這些工具的原理、配置和使用對(duì)于維護(hù)信息系統(tǒng)的安全性來說是極其重要的。