① 闡述數據包過濾防火牆的工作原理_______.
推薦看一看 朱雁冰 寫的《Windows防火牆與網路封包截獲技術》,上面介紹了三種分別基於用戶態和核心態下的防火牆編譯,雖然他提到的三種技術現在看來都有不足,但是是一本講解詳細的好書~~~!!
防火牆就是一種過濾塞(目前你這么理解不算錯),你可以讓你喜歡的東西通過這個塞子,別的玩意都統統過濾掉。在網路的世界裡,要由防火牆過濾的就是承載通信數據的通信包。
天下的防火牆至少都會說兩個詞:Yes或者No。直接說就是接受或者拒絕。最簡單的防火牆是乙太網橋。但幾乎沒有人會認為這種原始防火牆能管多大用。大多數防火牆採用的技術和標准可謂五花八門。這些防火牆的形式多種多樣:有的取代系統上已經裝備的TCP/IP協議棧;有的在已有的協議棧上建立自己的軟體模塊;有的乾脆就是獨立的一套操作系統。還有一些應用型的防火牆只對特定類型的網路連接提供保護(比如SMTP或者HTTP協議等)。還有一些基於硬體的防火牆產品其實應該歸入安全路由器一類。以上的產品都可以叫做防火牆,因為他們的工作方式都是一樣的:分析出入防火牆的數據包,決定放行還是把他們扔到一邊。
所有的防火牆都具有IP地址過濾功能。這項任務要檢查IP包頭,根據其IP源地址和目標地址作出放行/丟棄決定。看看下面這張圖,兩個網段之間隔了一個防火牆,防火牆的一端有台UNIX計算機,另一邊的網段則擺了台PC客戶機。
當PC客戶機向UNIX計算機發起telnet請求時,PC的telnet客戶程序就產生一個TCP包並把它傳給本地的協議棧准備發送。接下來,協議棧將這個TCP包「塞」到一個IP包里,然後通過PC機的TCP/IP棧所定義的路徑將它發送給UNIX計算機。在這個例子里,這個IP包必須經過橫在PC和UNIX計算機中的防火牆才能到達UNIX計算機。
現在我們「命令」(用專業術語來說就是配製)防火牆把所有發給UNIX計算機的數據包都給拒了,完成這項工作以後,「心腸」比較好的防火牆還會通知客戶程序一聲呢!既然發向目標的IP數據沒法轉發,那麼只有和UNIX計算機同在一個網段的用戶才能訪問UNIX計算機了。
還有一種情況,你可以命令防火牆專給那台可憐的PC機找茬,別人的數據包都讓過就它不行。這正是防火牆最基本的功能:根據IP地址做轉發判斷。但要上了大場面這種小伎倆就玩不轉了,由於黑客們可以採用IP地址欺騙技術,偽裝成合法地址的計算機就可以穿越信任這個地址的防火牆了。不過根據地址的轉發決策機制還是最基本和必需的。另外要注意的一點是,不要用DNS主機名建立過濾表,對DNS的偽造比IP地址欺騙要容易多了。
伺服器TCP/UDP 埠過濾
僅僅依靠地址進行數據過濾在實際運用中是不可行的,還有個原因就是目標主機上往往運行著多種通信服務,比方說,我們不想讓用戶採用 telnet的方式連到系統,但這絕不等於我們非得同時禁止他們使用SMTP/POP郵件伺服器吧?所以說,在地址之外我們還要對伺服器的TCP/ UDP埠進行過濾。
比如,默認的telnet服務連接埠號是23。假如我們不許PC客戶機建立對UNIX計算機(在這時我們當它是伺服器)的telnet連接,那麼我們只需命令防火牆檢查發送目標是UNIX伺服器的數據包,把其中具有23目標埠號的包過濾就行了。這樣,我們把IP地址和目標伺服器TCP/UDP埠結合起來不就可以作為過濾標准來實現相當可靠的防火牆了嗎?不,沒這么簡單。
客戶機也有TCP/UDP埠
TCP/IP是一種端對端協議,每個網路節點都具有唯一的地址。網路節點的應用層也是這樣,處於應用層的每個應用程序和服務都具有自己的對應「地址」,也就是埠號。地址和埠都具備了才能建立客戶機和伺服器的各種應用之間的有效通信聯系。比如,telnet伺服器在埠23偵聽入站連接。同時telnet客戶機也有一個埠號,否則客戶機的IP棧怎麼知道某個數據包是屬於哪個應用程序的呢?
由於歷史的原因,幾乎所有的TCP/IP客戶程序都使用大於1023的隨機分配埠號。只有UNIX計算機上的root用戶才可以訪問1024以下的埠,而這些埠還保留為伺服器上的服務所用。所以,除非我們讓所有具有大於1023埠號的數據包進入網路,否則各種網路連接都沒法正常工作。
這對防火牆而言可就麻煩了,如果阻塞入站的全部埠,那麼所有的客戶機都沒法使用網路資源。因為伺服器發出響應外部連接請求的入站(就是進入防火牆的意思)數據包都沒法經過防火牆的入站過濾。反過來,打開所有高於1023的埠就可行了嗎?也不盡然。由於很多服務使用的埠都大於1023,比如X client、基於RPC的NFS服務以及為數眾多的非UNIX IP產品等(NetWare/IP)就是這樣的。那麼讓達到1023埠標準的數據包都進入網路的話網路還能說是安全的嗎?連這些客戶程序都不敢說自己是足夠安全的。
雙向過濾
OK,咱們換個思路。我們給防火牆這樣下命令:已知服務的數據包可以進來,其他的全部擋在防火牆之外。比如,如果你知道用戶要訪問Web伺服器,那就只讓具有源埠號80的數據包進入網路:
不過新問題又出現了。首先,你怎麼知道你要訪問的伺服器具有哪些正在運行的埠號呢? 象HTTP這樣的伺服器本來就是可以任意配置的,所採用的埠也可以隨意配置。如果你這樣設置防火牆,你就沒法訪問哪些沒採用標准埠號的的網路站點了!反過來,你也沒法保證進入網路的數據包中具有埠號80的就一定來自Web伺服器。有些黑客就是利用這一點製作自己的入侵工具,並讓其運行在本機的80埠!
檢查ACK位
源地址我們不相信,源埠也信不得了,這個不得不與黑客共舞的瘋狂世界上還有什麼值得我們信任呢?還好,事情還沒到走投無路的地步。對策還是有的,不過這個辦法只能用於TCP協議。
TCP是一種可靠的通信協議,「可靠」這個詞意味著協議具有包括糾錯機制在內的一些特殊性質。為了實現其可靠性,每個TCP連接都要先經過一個「握手」過程來交換連接參數。還有,每個發送出去的包在後續的其他包被發送出去之前必須獲得一個確認響應。但並不是對每個TCP包都非要採用專門的ACK包來響應,實際上僅僅在TCP包頭上設置一個專門的位就可以完成這個功能了。所以,只要產生了響應包就要設置ACK位。連接會話的第一個包不用於確認,所以它就沒有設置ACK位,後續會話交換的TCP包就要設置ACK位了。
舉個例子,PC向遠端的Web伺服器發起一個連接,它生成一個沒有設置ACK位的連接請求包。當伺服器響應該請求時,伺服器就發回一個設置了ACK位的數據包,同時在包里標記從客戶機所收到的位元組數。然後客戶機就用自己的響應包再響應該數據包,這個數據包也設置了ACK位並標記了從伺服器收到的位元組數。通過監視ACK位,我們就可以將進入網路的數據限制在響應包的范圍之內。於是,遠程系統根本無法發起TCP連接但卻能響應收到的數據包了。
這套機制還不能算是無懈可擊,簡單地舉個例子,假設我們有台內部Web伺服器,那麼埠80就不得不被打開以便外部請求可以進入網路。還有,對UDP包而言就沒法監視ACK位了,因為UDP包壓根就沒有ACK位。還有一些TCP應用程序,比如FTP,連接就必須由這些伺服器程序自己發起。
FTP帶來的困難
一般的Internet服務對所有的通信都只使用一對埠號,FTP程序在連接期間則使用兩對埠號。第一對埠號用於FTP的「命令通道」提供登錄和執行命令的通信鏈路,而另一對埠號則用於FTP的「數據通道」提供客戶機和伺服器之間的文件傳送。
在通常的FTP會話過程中,客戶機首先向伺服器的埠21(命令通道)發送一個TCP連接請求,然後執行LOGIN、DIR等各種命令。一旦用戶請求伺服器發送數據,FTP伺服器就用其20埠 (數據通道)向客戶的數據埠發起連接。問題來了,如果伺服器向客戶機發起傳送數據的連接,那麼它就會發送沒有設置ACK位的數據包,防火牆則按照剛才的規則拒絕該數據包同時也就意味著數據傳送沒戲了。通常只有高級的、也就是夠聰明的防火牆才能看出客戶機剛才告訴伺服器的埠,然後才許可對該埠的入站連接。
UDP埠過濾
好了,現在我們回過頭來看看怎麼解決UDP問題。剛才說了,UDP包沒有ACK位所以不能進行ACK位過濾。UDP 是發出去不管的「不可靠」通信,這種類型的服務通常用於廣播、路由、多媒體等廣播形式的通信任務。NFS、DNS、WINS、NetBIOS-over-TCP/IP和 NetWare/IP都使用UDP。
看來最簡單的可行辦法就是不允許建立入站UDP連接。防火牆設置為只許轉發來自內部介面的UDP包,來自外部介面的UDP包則不轉發。現在的問題是,比方說,DNS名稱解析請求就使用UDP,如果你提供DNS服務,至少得允許一些內部請求穿越防火牆。還有IRC這樣的客戶程序也使用UDP,如果要讓你的用戶使用它,就同樣要讓他們的UDP包進入網路。我們能做的就是對那些從本地到可信任站點之間的連接進行限制。但是,什麼叫可信任!如果黑客採取地址欺騙的方法不又回到老路上去了嗎?
有些新型路由器可以通過「記憶」出站UDP包來解決這個問題:如果入站UDP包匹配最近出站UDP包的目標地址和埠號就讓它進來。如果在內存中找不到匹配的UDP包就只好拒絕它了!但是,我們如何確信產生數據包的外部主機就是內部客戶機希望通信的伺服器呢?如果黑客詐稱DNS伺服器的地址,那麼他在理論上當然可以從附著DNS的UDP埠發起攻擊。只要你允許DNS查詢和反饋包進入網路這個問題就必然存在。辦法是採用代理伺服器。
所謂代理伺服器,顧名思義就是代表你的網路和外界打交道的伺服器。代理伺服器不允許存在任何網路內外的直接連接。它本身就提供公共和專用的DNS、郵件伺服器等多種功能。代理伺服器重寫數據包而不是簡單地將其轉發了事。給人的感覺就是網路內部的主機都站在了網路的邊緣,但實際上他們都躲在代理的後面,露面的不過是代理這個假面具。
小結
IP地址可能是假的,這是由於IP協議的源路有機制所帶來的,這種機制告訴路由器不要為數據包採用正常的路徑,而是按照包頭內的路徑傳送數據包。於是黑客就可以使用系統的IP地址獲得返回的數據包。有些高級防火牆可以讓用戶禁止源路由。通常我們的網路都通過一條路徑連接ISP,然後再進入Internet。這時禁用源路由就會迫使數據包必須沿著正常的路徑返回。
還有,我們需要了解防火牆在拒絕數據包的時候還做了哪些其他工作。比如,防火牆是否向連接發起系統發回了「主機不可到達」的ICMP消息?或者防火牆真沒再做其他事?這些問題都可能存在安全隱患。ICMP「主機不可達」消息會告訴黑客「防火牆專門阻塞了某些埠」,黑客立即就可以從這個消息中聞到一點什麼氣味。如果ICMP「主機不可達」是通信中發生的錯誤,那麼老實的系統可能就真的什麼也不發送了。反過來,什麼響應都沒有卻會使發起通信的系統不斷地嘗試建立連接直到應用程序或者協議棧超時,結果最終用戶只能得到一個錯誤信息。當然這種方式會讓黑客無法判斷某埠到底是關閉了還是沒有使用。
② 包過濾技術的技術原理
包過濾技術(IP Filtering or packet filtering) 的原理在於利用路由器監視並過濾網路上流入流出的IP包,拒絕發送可疑的包。由於Internet 與Intranet 的連接多數都要使用路由器,所以Router成為內外通信的必經埠,Router的廠商在Router上加入IP 過濾 功能,過濾路由器也可以稱作包過濾路由器或篩選路由器(Packet FilterRouter)。防火牆常常就是這樣一個具備包過濾功能的簡單路由器,這種Firewall應該是足夠安全的,但前提是配置合理。然而一個包過濾規則是否完全嚴密及必要是很難判定的,因而在安全要求較高的場合,通常還配合使用其它的技術來加強安全性。
包過濾技術是指網路設備(路由器或防火牆)根據包過濾規則檢查所接收的每個數據包,做出允許數據包通過或丟棄數據包的決定。包過濾規則主要基於IP包頭信息設置,包括如下內容:
1、TCP/UDP的源或目的埠號
2、協議類型:TCP、UDP、ICMP等
3、源或目的IP地址
4、數據包的入介面和出介面
數據包中的信息如果與某一條過濾規則相匹配並且該規則允許數據包通過,則該數據包會被轉發,如果與某一條過濾規則匹配但規則拒絕數據包通過,則該數據包會被丟棄。如果沒有可匹配的規則,預設規則會決定數據包是被轉發還是被丟棄。
舉例說明:如圖所示,如果我們需要允許IP地址為192.168.0.1的電腦瀏覽網頁(建立HTTP連接),允許IP地址為192.168.0.2的電腦與Internet建立FTP連接,不允許其他電腦與Internet通信,可以在路由器設置如下過濾規則:
1、允許源IP地址為192.168.0.1、目的埠號為80的數據包通過(HTTP的埠號為80)。
2、允許源IP地址為192.168.0.1、目的埠號為53的數據包通過(DNS的埠號為53,在瀏覽網頁時通常需要進行域名解析)。
3、允許源IP地址為192.168.0.2、目的埠號為21的數據包通過(FTP的埠號為21)。
4、預設禁止所有的其他連接。
包過濾規則允許Router取捨以一個特殊服務為基礎的信息流,因為大多數服務檢測器駐留於眾所周知的TCP/UDP埠。例如,Telnet Service 為TCP port 23埠等待遠程連接,而SMTP Service為TCP Port 25埠等待輸入連接。如要封鎖輸入Telnet、SMTP的連接,則Router舍棄埠值為23、25的所有的數據包。
表9.1 一些常用網路服務和使用的埠 服務名稱 埠號 協議 說明 ftp-data 20 tcp FTP數據 ftp 21 tcp FTP控制 telnet 23 tcp 如BBS smtp 25 tcp 發email用 time 37 tcp timserver time 37 udp timserver domain 53 tcp DNS domain 53 udp DNS tftp 69 udp gopher 70 tcp gopher查詢 http 80 tcp www pop3 110 tcp 收email用 nntp 119 tcp 新聞組,usernet netbios-ns 137 tcp NETBIOS 名稱服務 netbios-ns 137 udp NETBIOS 名稱服務 netbios-dgm 138 udp NETBIOS 數據報服務 netbios-ssn 139 tcp NETBIOS Session服務 snmp 161 udp SNMP snmptrap 162 udp SNMP trap irc 194 tcp IRC網路聊天服務 ldap 389 tcp 輕型目錄服務協議 https 443 tcp SSL加密 https 443 udp 典型的過濾規則有以下幾種:允許特定名單內的內部主機進行Telnet輸入對話、只允許特定名單內的內部主機進行FTP輸入對話、只允許所有Telnet 輸出對話、只允許所有FTP 輸出對話、拒絕來自一些特定外部網路的所有輸入信息。
有些類型的攻擊很難用基本包頭信息加以鑒別,因為這些獨立於服務。一些Router可以用來防止這類攻擊,但過濾規則需要增加一些信息,而這些信息只有通過以下方式才能獲悉:研究Router選擇表、檢查特定的IP選項、校驗特殊的片段偏移等。這類攻擊有以下幾種:
源IP地址欺騙攻擊:入侵者從偽裝成源自一台內部主機的一個外部地點傳送一些信息包;這些信息包似乎像包含了一個內部系統的源IP地址。如果這些信息包到達Router的外部介面,則舍棄每個含有這個源IP地址的信息包,就可以挫敗這種源欺騙攻擊。
源路由攻擊:源站指定了一個信息包穿越Internet時應採取的路徑,這類攻擊企圖繞過安全措施,並使信息包沿一條意外(疏漏)的路徑到達目的地。可以通過舍棄所有包含這類源路由選項的信息包方式,來挫敗這類攻擊。
殘片攻擊:入侵者利用IP殘片特性生成一個極小的片斷並將TCP報頭信息肢解成一個分離的信息包片斷。舍棄所有協議類型為TCP、IP片斷偏移值等於1的信息包,即可挫敗殘片的攻擊。
從以上可看出定義一個完善的安全過濾規則是非常重要的。通常,過濾規則以表格的形式表示,其中包括以某種次序排列的條件和動作序列。每當收到一個包時,則按照從前至後的順序與表格中每行的條件比較,直到滿足某一行的條件,然後執行相應的動作(轉發或舍棄)。有些數據包過濾在實現時,「動作」這一項還詢問,若包被丟棄是否要通知發送者(通過發ICMP信息),並能以管理員指定的順序進行條件比較,直至找到滿足的條件。
對流進和流出網路的數據進行過濾可以提供一種高層的保護。建議過濾規則如下:
(1)任何進入內部網路的數據包不能把網路內部的地址作為源地址。
(2)任何進入內部網路的數據包必須把網路內部的地址作為目的地址。
(3)任何離開內部網路的數據包必須把網路內部的地址作為源地址。
(4)任何離開內部網路的數據包不能把網路內部的地址作為目的地址。
(5)任何進入或離開內部網路的數據包不能把一個私有地址(private address)或在RFC1918中 127.0.0.0/8.)的地址作為源或目的地址。
(6)阻塞任意源路由包或任何設置了IP選項的包。
(7)保留、DHCP自動配置和多播地址也需要被阻塞。0.0.0.0/8 、169.254.0.0/16 、192.0.2.0/24 、224.0.0.0/4 、240.0.0.0/4。
③ 防火牆在普通包過濾和狀態檢測時針對ftp協議處理的不同,規則設置有什麼不同
防火牆通常使用的安全控制手段主要有包過濾、狀態檢測、代理服務。 包過濾技專術是一種簡單屬、有效的安全控制技術,它通過在網路間相互連接的設備上載入允許、禁止來自某些特定的源地址、目的地址、TCP埠號等規則,對通過設備的數據包進行檢查,...
④ 什麼是過慮包技術
樓主說的是不是包過濾技術
包過濾技術
包過濾技術(IP Filtering or packet filtering) 的原理在於監視並過濾網路上流入流出的IP包,拒絕發送可疑的包。基於協議特定的標准,路由器在其埠能夠區分包和限制包的能力叫包過濾(Packet Filtering)。由於Internet 與Intranet 的連接多數都要使用路由器,所以Router成為內外通信的必經埠,Router的廠商在Router上加入IP 過濾 功能,過濾路由器也可以稱作包過濾路由器或篩選路由器(Packet Filter Router)。防火牆常常就是這樣一個具備包過濾功能的簡單路由器,這種Firewall應該是足夠安全的,但前提是配置合理。然而一個包過濾規則是否完全嚴密及必要是很難判定的,因而在安全要求較高的場合,通常還配合使用其它的技術來加強安全性。
常用的優秀的個人防火牆有Norman Personal Firewall、天網防火牆等。
路由器逐一審查數據包以判定它是否與其它包過濾規則相匹配。每個包有兩個部分:數據部分和包頭。過濾規則以用於IP順行處理的包頭信息為基礎,不理會包內的正文信息內容。包頭信息包括:IP 源地址、IP目的地址、封裝協議(TCP、UDP、或IP Tunnel)、TCP/UDP源埠、ICMP包類型、包輸入介面和包輸出介面。如果找到一個匹配,且規則允許這包,這一包則根據路由表中的信息前行。如果找到一個匹配,且規則拒絕此包,這一包則被舍棄。如果無匹配規則,一個用戶配置的預設參數將決定此包是前行還是被舍棄。
包過濾規則允許Router取捨以一個特殊服務為基礎的信息流,因為大多數服務檢測器駐留於眾所周知的TCP/UDP埠。例如,Telnet Service 為TCP port 23埠等待遠程連接,而SMTP Service為TCP Port 25埠等待輸入連接。如要封鎖輸入Telnet、SMTP的連接,則Router舍棄埠值為23、25的所有的數據包。
表9.1 一些常用網路服務和使用的埠
服務名稱
埠號
協議
說明
ftp-data
20
tcp
FTP數據
ftp
21
tcp
FTP控制
telnet
23
tcp
如BBS
smtp
25
tcp
發email用
time
37
tcp
timserver
time
37
udp
timserver
domain
53
tcp
DNS
domain
53
udp
DNS
tftp
69
udp
gopher
70
tcp
gopher查詢
http
80
tcp
www
pop3
110
tcp
收email用
nntp
119
tcp
新聞組,usernet
netbios-ns
137
tcp
NETBIOS 名稱服務
netbios-ns
137
udp
NETBIOS 名稱服務
netbios-dgm
138
udp
NETBIOS 數據報服務
netbios-ssn
139
tcp
NETBIOS Session服務
snmp
161
udp
SNMP
snmptrap
162
udp
SNMP trap
irc
194
tcp
IRC網路聊天服務
ldap
389
tcp
輕型目錄服務協議
https
443
tcp
SSL加密
https
443
udp
典型的過濾規則有以下幾種:允許特定名單內的內部主機進行Telnet輸入對話、只允許特定名單內的內部主機進行FTP輸入對話、只允許所有Telnet 輸出對話、只允許所有FTP 輸出對話、拒絕來自一些特定外部網路的所有輸入信息。
有些類型的攻擊很難用基本包頭信息加以鑒別,因為這些獨立於服務。一些Router可以用來防止這類攻擊,但過濾規則需要增加一些信息,而這些信息只有通過以下方式才能獲悉:研究Router選擇表、檢查特定的IP選項、校驗特殊的片段偏移等。這類攻擊有以下幾種:
源IP地址欺騙攻擊:入侵者從偽裝成源自一台內部主機的一個外部地點傳送一些信息包;這些信息包似乎像包含了一個內部系統的源IP地址。如果這些信息包到達Router的外部介面,則舍棄每個含有這個源IP地址的信息包,就可以挫敗這種源欺騙攻擊。
源路由攻擊:源站指定了一個信息包穿越Internet時應採取的路徑,這類攻擊企圖繞過安全措施,並使信息包沿一條意外(疏漏)的路徑到達目的地。可以通過舍棄所有包含這類源路由選項的信息包方式,來挫敗這類攻擊。
殘片攻擊:入侵者利用IP殘片特性生成一個極小的片斷並將TCP報頭信息肢解成一個分離的信息包片斷。舍棄所有協議類型為TCP、IP片斷偏移值等於1的信息包,即可挫敗殘片的攻擊。
從以上可看出定義一個完善的安全過濾規則是非常重要的。通常,過濾規則以表格的形式表示,其中包括以某種次序排列的條件和動作序列。每當收到一個包時,則按照從前至後的順序與表格中每行的條件比較,直到滿足某一行的條件,然後執行相應的動作(轉發或舍棄)。有些數據包過濾在實現時,「動作」這一項還詢問,若包被丟棄是否要通知發送者(通過發ICMP信息),並能以管理員指定的順序進行條件比較,直至找到滿足的條件。
對流進和流出網路的數據進行過濾可以提供一種高層的保護。建議過濾規則如下:
(1)任何進入內部網路的數據包不能把網路內部的地址作為源地址。
(2)任何進入內部網路的數據包必須把網路內部的地址作為目的地址。
(3)任何離開內部網路的數據包必須把網路內部的地址作為源地址。
(4)任何離開內部網路的數據包不能把網路內部的地址作為目的地址。
(5)任何進入或離開內部網路的數據包不能把一個私有地址(private address)或在RFC1918中 127.0.0.0/8.)的地址作為源或目的地址。
(6)阻塞任意源路由包或任何設置了IP選項的包。
(7)保留、DHCP自動配置和多播地址也需要被阻塞。0.0.0.0/8 、169.254.0.0/16 、192.0.2.0/24 、224.0.0.0/4 、240.0.0.0/4。
包過濾路由器的優點:
(1)一個過濾路由器能協助保護整個網路。絕大多數Internet防火牆系統只用一個包過濾路由器;
(2)過濾路由器速度快、效率高。執行包過濾所用的時間很少或幾乎不需要什麼時間,由於過濾路由器只檢查報頭相應的欄位,一般不查看數據報的內容,而且某些核心部分是由專用硬體實現的,如果通信負載適中且定義的過濾很少的話,則對路由器性能沒有多大影響;
(3)包過濾路由器對終端用戶和應用程序是透明的。當數據包過濾路由器決定讓數據包通過時,它與普通路由器沒什麼區別,甚至用戶沒有認識到它的存在,因此不需要專門的用戶培訓或在每主機上設置特別的軟體。
包過濾路由器的局限性:
(1)定義包過濾器可能是一項復雜的工作。因為網管員需要詳細地了解Internet各種服務、包頭格式和他們在希望每個域查找的特定的值。如果必須支持復雜的過濾要求的,則過濾規則集可能會變得很長很復雜,並且沒有什麼工具可以用來驗證過濾規則的正確性。
(2)路由器信息包的吞吐量隨過濾器數量的增加而減少。路由器被優化用來從每個包中提取目的IP地址、查找一個相對簡單的路由表,而後將信息包順向運行到適當轉發介面。如果過濾可執行,路由器還必須對每個包執行所有過濾規則。這可能消耗CPU的資源,並影響一個完全飽和的系統性能。
(3)不能徹底防止地址欺騙。大多數包過濾路由器都是基於源IP地址、目的IP地址而進行過濾的,而IP地址的偽造是很容易、很普遍的。
(4)一些應用協議不適合於數據包過濾。即使是完美的數據包過濾,也會發現一些協議不很適合於經由數據包過濾安全保護。如RPC、X- Window和FTP。而且服務代理和HTTP的鏈接,大大削弱了基於源地址和源埠的過濾功能。
(5)正常的數據包過濾路由器無法執行某些安全策略。例如,數據包說它們來自什麼主機,而不是什麼用戶,因此,我們不能強行限制特殊的用戶。同樣地,數據包說它到什麼埠,而不是到什麼應用程序,當我們通過埠號對高級協議強行限制時,不希望在埠上有別的指定協議之外的協議,而不懷好意的知情者能夠很容易地破壞這種控制。
(6)一些包過濾路由器不提供任何日誌能力,直到闖入發生後,危險的封包才可能檢測出來。它可以阻止非法用戶進入內部網路,但也不會告訴我們究竟都有誰來過,或者誰從內部進入了外部網路,
與圖1封裝過程相反,在網路連接的
獲取數據就由下而上依次把包頭剝離。
另一邊(接收方)的工作是解包。即在另一邊,為了
在數據包過濾系統看來
種將被包過濾路由器檢查的
,包的最重要信息是各層依次加
包的包頭內容。
上的包頭。在下文中將主要介紹各
二、 數據包過濾是怎樣工作的
包過濾技術可以允許或不允許某些包在網路上傳遞,它依據以下的根據:
(1)將包的目的地址作為判斷依據;
(2)將包的源地址作為判斷依據;
(3)將包的傳送協議作為判斷依據。
大多數包過濾系統判斷是否傳送包時
讓我們進行類似以下情況的操作:
都不關心包的具體內容。作為防火牆包過濾系統只能
(1)不允許任何用戶從外部網用Telnet登錄;
(2)允許任何用戶使用SMTP往內部網發電子郵件;
(3)只允許某台機器通過NNTP往內部網發新聞。
但包過濾不能允許我們進行如下操作:
(1)允許某個用戶從外部網用Telnet登錄而不允許其它用戶進行這種操作;
(2)允許用戶傳送一些文件而不允許用戶傳送其它文件。
數據包過濾系統不能識
的文件信息。包過濾系統的
為例,假定不讓客戶使用Te
現有的條件下可以作到,但
其它用戶就永遠不在重新安
行設置,也就無所謂機器中
別數據包中的用戶信息。同樣數
主要特點是讓用戶在一台機器上
lnet而將網路中現有機器上的Te
是不能保證在網路中新增機器時
裝Telnet服務。如果有了包過濾
的Telnet服務是否存在的問題了
據包過濾系統也不能識別數據包中
提供對整個網路的保護。以Telnet
lnet服務關閉,作為系統管理員在
,新機器的Telnet服務也被關閉或
系統,由於只要在包過濾中對此進
。
路由器為所有用戶進出
絡中的特定位置的過濾路由
內部郵件的包——就是那種
常被作為地址偽裝入侵的一
濾路由器來實現我們設計的
在這種位置上的包過濾路由
網還是來自於外部網。
網路的數據流提供了一個有用的
器來提供。比如,我們考慮這樣
看起來好象來自於內部主機而其
部分。入侵者總是用這種包把他
安全規則,唯一的方法是通過參
器才能通過查看包的源地址,從
阻塞點。而對有關的保護只能由網
的安全規則,讓網路拒絕任何含有
實是來自於外部網的包,這種包經
們偽裝成來自於內部網。要用包過
數網路上的包過濾路由器。只有處
而辨認出這個包到底是來自於內部
三、 包過濾的優缺點
1.包過濾的優點
包過濾方式有許多優點
就可保護整個網路。如果站
這台路由器上設定合適的包
,而其主要優點之一是僅用一個
點與網際網路間只有一台路由器,
過濾,我們的站點就可以獲得很
放置在戰略要津上的包過濾路由器
那麼不管站點規模有多大,只要在
好的網路安全保護。
包過濾不需要用戶軟體的支撐,也不
何培訓。當包過濾路由器允許包通過時,
甚至感覺不到包過濾功能的存在,只有在
器的不同。包過濾工作對用戶來講是透明
下完成包過濾。
要求對客戶機做特別的設置,也沒有必要對用戶做任
它看起來與普通的路由器沒有任何區別。此時,用戶
有些包在禁入和禁出時,用戶才認識到它與普通路由
的。這種透明就是可在不要求用戶作任何操作的前提
包過濾產品比較容易獲得。在市場上
從網上免費下載的都提供了包過濾功能。
。Drawbrige、KralBrige以及Screened也
。
有許多硬體和軟體的路由器產品不管是商業產品還是
比如,Cisco公司的路由器產品就包含有包過濾功能
都具有包過濾功能,而且還能從Internet上免費下載
2. 包過濾的缺點
盡管包過濾系統有許多優點,但是它仍有缺點和局限性:
1) 在機器中配置包過濾規則比較困難;
2) 對包過濾規則設置的測試也很麻煩;
3) 許多產品的包過濾
。
功能有這樣或那樣的局限性,要
找一個比較完整的包過濾產品很難
包過濾系統本身就存有
系統的安全性的影響。因為
些平常應該拒絕的包也能進
某些缺陷,這些缺陷對系統的安
代理服務的缺陷僅僅會使數據無
出網路,這對系統的安全性是一
全性的影響要大大超過代理服務對
法傳送,而包過濾的缺陷會使得一
個巨大的威脅。
即使在系統中安裝了比較完整的包過
太合適。比如,對Berkeley的「r"命令(
,用包過濾系統就不太合適。有些安全規
來自於哪台主機的信息而無來自於哪個用
濾系統,我們也會發現對有些協議使用包過濾方式不
rcp、rsh、rlogin)和類似於NFS和NIS/YS協議的RPC
則是難以用包過濾規則來實現的。比如,在包中只有
戶的信息。因此,若要過濾用戶就不能使用包過濾。
⑤ 關於FTP被動模式與主動模式中防火牆過濾情況!
主動模式和被動模式是針對伺服器而言。ftp需要建立兩個連接(命令連接和數據連接),主動方式的命令連接由客戶機發起,數據連接由伺服器發起,這樣客戶端的防火牆可能會阻攔;被動連接的兩個連接都由客戶機發起,客戶機的防火牆不會阻攔(就像設置一個門不是為了關自己)。這是主體思想,具體的怎麼連接你上網搜一下,很多的。
回答問題:
不會,一般伺服器都是先前設置好的。
這里考慮的防火牆主要是在建立連接時的作用。
見上。
⑥ 某公司使用包過濾防火牆控制進出公司區域網的數據
包過濾防火牆通常直接轉發報文,它對用戶完全透明,速度較快。包過濾防火回牆一
般有一個包檢答查模塊 (通常稱為包過濾器) , 數據包過濾可以根據數據包中的各項信息來
控制站點與站點、站點與網路、網路與網路之間的相互訪問,但無法控制傳輸數據的內
容,因為內容是應用層數據,而包過濾器處在傳輸層和網路層。無論是源 IP 地址還是目
的 IP 地址,都是網路層的 IP 地址,都在包過濾防火牆的控制范圍內,因此,通過配置
目的 IP 和源 IP,可以實現 A 和 D。默認情況下,FTP 協議開放的埠號是 21,它是傳
輸層的 TCP 協議的埠號。因此,雖然 FTP 是應用層協議,但是通過包過濾防火牆限
制 TCP 埠號,可以實現 C。HTTP 協議是超文本傳輸協議,它是應用層協議,包過濾
防火牆無法實現對應用層協議的限制,所以無法實現 B。
⑦ 什麼是包過濾技術其特點是什麼
一、定義:
包過濾(Packet Filtering)技術:是基於協議特定的標准,路由器在其埠能夠區分包和限制包的技術。
基於協議特定的標准,路由器在其埠能夠區分包和限制包的能力叫包過濾(Packet Filtering)。其技術原理在於加入IP過濾功能的路由器逐一審查包頭信息,並根據匹配和規則決定包的前行或被舍棄,以達到拒絕發送可疑的包的目的。過濾路由器具備保護整個網路、高效快速並且透明等優點,同時也有定義復雜、消耗CPU資源、不能徹底防止地址欺騙、涵蓋應用協議不全、無法執行特殊的安全策略並且不提供日誌等局限性。包過濾技術的二、特點
1、優點 :對小型的、不太復雜的站點包過濾較容易實現。
(1)一個過濾路由器能協助保護整個網路。絕大多數Internet防火牆系統只用一個包過濾路由器;
(2)過濾路由器速度快、效率高。執行包過濾所用的時間很少或幾乎不需要什麼時間,由於過濾路由器只檢查報頭相應的欄位,一般不查看數據報的內容,而且某些核心部分是由專用硬體實現的,如果通信負載適中且定義的過濾很少的話,則對路由器性能沒有多大影響;
(3)包過濾路由器對終端用戶和應用程序是透明的。當數據包過濾路由器決定讓數據包通過時,它與普通路由器沒什麼區別,甚至用戶沒有認識到它的存在,因此不需要專門的用戶培訓或在每主機上設置特別的軟體。
2、缺點及局限性:
他們很少有或沒有日誌記錄能力,所以網路管理員很難確認系統是否正在被入侵或已經被入侵了。這種防火牆的最大缺陷是依賴一個單一的部件來保護系統。
(1)定義包過濾器可能是一項復雜的工作。因為網管員需要詳細地了解Internet各種服務、包頭格式和他們在希望每個域查找的特定的值。如果必須支持復雜的過濾要求的,則過濾規則集可能會變得很長很復雜,並且沒有什麼工具可以用來驗證過濾規則的正確性。
(2)路由器信息包的吞吐量隨過濾器數量的增加而減少。路由器被優化用來從每個包中提取目的IP地址、查找一個相對簡單的路由表,而後將信息包順向運行到適當轉發介面。如果過濾可執行,路由器還必須對每個包執行所有過濾規則。這可能消耗CPU的資源,並影響一個完全飽和的系統性能。
(3)不能徹底防止地址欺騙。大多數包過濾路由器都是基於源IP地址、目的IP地址而進行過濾的,而IP地址的偽造是很容易、很普遍的。
(4)一些應用協議不適合於數據包過濾。即使是完美的數據包過濾,也會發現一些協議不很適合於經由數據包過濾安全保護。如RPC、X- Window和FTP。而且服務代理和HTTP的鏈接,大大削弱了基於源地址和源埠的過濾功能。
(5)正常的數據包過濾路由器無法執行某些安全策略。例如,數據包說它們來自什麼主機,而不是什麼用戶,因此,我們不能強行限制特殊的用戶。同樣地,數據包說它到什麼埠,而不是到什麼應用程序,當我們通過埠號對高級協議強行限制時,不希望在埠上有別的指定協議之外的協議,而不懷好意的知情者能夠很容易地破壞這種控制。
(6)一些包過濾路由器不提供任何日誌能力,直到闖入發生後,危險的封包才可能檢測出來。它可以阻止非法用戶進入內部網路,但也不會告訴我們究竟都有誰來過,或者誰從內部進入了外部網路。