GB | BIG5
|
| 首頁 > 安全技術 > 網絡 > 正文 |
 |
| 網路安全--3.火牆 |
| http://www.study-area.net/menu1.htm (2001-06-04 17:04:00) |
我們已經知道如果保護自己的密碼和如何使用資料加密的手段來保護資料。但是如果您的電腦遭到入侵密碼檔案和私有鍵值都被盜竊了我們所作的努力不就白費了嗎所以一般的網路系統都會使用“火牆(Fire Wall)”來保護自己的網路不被入侵。
何為火牆
哈~~~我挺喜歡這個詞呢火牆顧名思義就是用火做的牆(雖然這解析和真正的出處汽車部件有點望文生義了)能通得過此牆的不是真金白銀就是火中之鳳其它廢銅爛鐵或飛娥爬一早就給燒成灰燼了。網路的火牆就是這麼用途的啦讓您想要的東西進入網路而擯棄您不想要的東西在網路之外。而我們通常說的火牆有兩種過濾性火牆和連接性火牆。嚴格來說後者應該不能稱為火牆的稱之為代理服務器(Proxy)更準確些因為它只負責替您建立連接而已。而我們這裡要說的火牆是指過濾性火牆。
不過proxy也有其非常好用的地方我們可以利用單一的連線如使用modem允許整個網路獲取外部資源不僅節省硬體成本而也無需支付多個ISP戶口和電話線路。它的功能就是“代理”proxy可以分為“程式代理”和“socks代理”。
前者可以說是為你代理所有工作當您需要連接外部資源的時候您的請求是直接送給proxy然後proxy會幫您到真正的目的地去獲取然後再轉送給您。而每一次的代理動作它都會將資料保留一個備份存在它的快取區去如果再接獲相同的請求(不管是原來的機器還是另外別的機器發出的)它就將存於快取裡面的資料做為回覆。有些聰明的proxy還能知道快取裡面的資料是否和實際目的地的資料同步呢如果發現實際目的地的資料經過更新它就會再次進自己的快取去。
從上面的這個過程我們可以看得出proxy還可以提高網路的存取速度哦因為如果資料已經在快取裡面了其傳送都在LAN裡面進行而無需經過雜的路由程序。同時因為資料無需從外面重傳遞實際上也令到網路的流量減少許多。而且通過proxy我們也可以省下許多IP地址因為其他機器盡可以使用私有IP就行了。目前正時興的網吧(Internet Cafe)許多就是利用proxy來降低成本和提高速度的了。另外proxy還可以再經由上proxy(或proxy陣列)連接internet從而再可以提高效率和安全性。
而socks代理呢就好像接線生那樣僅是將您的TCP連接由裡面的接口搭至外面的接口而且。還記得在“網路概念”裡面提到的API嗎socks代理其實就是代理API請求而已而真正處理工作的還是發出請求的主機本身。
這裡還要一提的是“IP偽裝(Masquerading)”它的工作原理也非常近似socks proxy不過它是利用轉換封包的地址來達到目的。如果本地網路主機要將一個封包送到外面網路當火牆收到這個封包的時候就會啟動IP偽裝功能將來源地址暫時轉換成其本身地址然後等到接到回復封包之後再將地址進行還原(demasquerading)。在裡面的機器根本就無需知道這個動作一切都由火牆處理好了。這和Proxy一樣也可以節省大量的IP地址而讓使用私有IP位址的主機也能夠存取internet了。
火牆的運作
如果您對IP協定已經相當了解了也明白到IP封包和TCP封包格式您將會更容易了解火牆的運作火牆會對所有經過的封包進行檢查按照一系列原則(policy)和規則(rule)來決定封包的處理方式。火牆一般都會根據封包的來源和目的地址協定port界面等因素進行判斷決定是否讓封包通過和要傳去那裡。
我們可以為火牆建立一些基本原則來定義好各種的鏈(chain)傳入(input)傳出(output)轉遞(forward)重導(redirect)等來決定封包的處理動作接受(accept)拒絕(deny)反彈(reject)轉遞(forward)偽裝(masquerade)等。在此基礎上然後再配合實際情形設定更多規則加以限制。
我們設定規則的時候是非常多樣性的也可以由一個chain導向另一個chian直到符合我們的要求為止。下面讓我們看一看一個非常陽春的規則設定例子
當我們從一個chain跳到另一個自定義的chain的時候如果自定義的chain沒有將封包剔除的話就會回到剛才的chain的下一個規則去繼續其後的規則檢查。從上例中我們可以看到只有從192.168.1.1傳給192.168.1.2的TCP封包才能過關其它諸如ICMP和UDP封包和其他地址的封包一律會被擋掉。只要我們精心設計好不難設定出一個適合自己情形的不太鬆也不太緊的火牆的。
設定火牆的技巧
從上面的火牆運作來看我們可以通過設定規則將一些重要的主機保護起來讓其只允許特定的網路存取也就可以將大部份的網路入侵者擯於門外。不過對於那些絕頂駭客高手而言還是會從您的設定漏洞攻破您的把守的例如他們通常會使用“取道”的方法繞過那些被禁止的地址以及通過不斷改變位址來逃避追蹤。有些較優秀的火牆程式可以自動檢測一些駭客常用的攻擊方法除了會對網路管理員發出預警之外還可以即時切斷該等連線和追查路徑等動作。
同時利用不同系統來設定多個火牆也能提高防能力除非駭客對所有系統都熟悉否則過了一道火牆還是過不了第二道火牆而且由於第一道火牆的屏隔要探測第二道火牆的難度也高許多。當然要設定的規則就更為雜了通常都會造成過於嚴厲而令到一些網路資源無法使用或降低了網路的效能。
所以設計一套完善的規則其實是件極具挑戰性的事情其後也需要不斷的測試以修補漏洞這也是非常耗時的工作。如果對一個繁忙的網路來說事先的測試工作就顯得非常重要了您總不能在收到一大堆不能連線的投訴之後而關閉火牆作調試吧
通常我們在設定火牆的時候劃分一個“邊際網路(DMZ - Demilitarized Zone)”是非常好用的
我們可以設定火牆允許外部直接傳入到DMZ上面的伺服器但僅限制於某些特定的協定如DNSWWWFTPMAIL等同時也允許內部網路使用這些服務。但外部網路是完全禁止進入內部網路的而內部網路則可以通過Proxy存取外部資源我們也允許內部伺服器使用rsync協定來和DMZ上面的機器進行資料同步。一般我們不會將重要的資料存放在DMZ上面的機器而且郵件也會在DMZ接收後由內部伺服器提取進來。這樣就算那裡的機器被攻破了也不至於損失太多。
至於如何一一設定恐怕不是這裡能夠詳細論述的了。
(http://www.fanqiang.com)
進入【UNIX論壇】
|
|
| 相關文章 |
網路安全--3.火牆 (2001-06-04 17:04:00) 網路安全--2.資料加密 (2001-06-04 16:10:01) 網路安全--1.保護密碼 (2001-06-04 15:00:00)
|
|
|
|
 |
★ 樊強制作 歡迎分享 ★ |