亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網絡,我們將竭誠為您提供優質的服務! 誠征網絡推廣 | 網站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術文章 >> 文章瀏覽
技術文章

在關閉的Linux機器上實現防火墻功能

添加時間:2011-4-15  添加: admin 
 

一次在網上閑逛,突然看到論壇有一條消息說有一種方法,可以讓已經關閉的Linux機器繼續運行ipchains,并且讓這臺機器繼續實現防火墻的功能。當時我的第一反映是不屑一顧,難道一個防火墻還可以在關機的狀態下工作?依照論壇中所指的鏈接,我找到了一個帖子,上面說在2.0.x內核中,使用Shutdown ?h(關機)命令可以使防火墻仍處于激活狀態,而此時沒有掛載驅動器,也沒有進程在運行。也就是說防火墻將在Level 0下運行,但仍然可以進行包過濾。不過,貼子說該功能在2.2.x系統的內核中已經不具備了。

看到這兒,我有些坐不住了,我決定在內核為2.2.x的機器上也實現類似的功能,并且我希望不在內核中增加任何補丁。事實證明,我做到了。

安全的防火墻

我認為安全意味著這樣一種可能性,也就是假設防火墻已經被完全關閉,并且已經清除了所有進程空間和文件系統,這樣就不會有任何黑客可以對該系統進行訪問。因為該機器上已經完全沒有了進程空間,也沒有掛載驅動器。因此,黑客就無法在系統外使代碼運行在內核空間中。因為這需要寫解釋代碼來產生所需要的結果,而這是一項非常艱苦的工作。

不過需要提請注意的是,該防火墻并不能避免“拒絕服務式”的攻擊。事實上,對于“拒絕服務式”攻擊以及其它的專門耗盡資源的攻擊,該防火墻并不比任何其它的防火墻有效。當然,現實中,一般來說系統并不容易受到這種攻擊。

因為這種方法可以確保沒有一個用戶可以控制該機器,因此可以使安全性大大的提高。這正好應了IT業安全領域常說的一句話,要想讓一臺機器絕對安全,就應該把它關機,然后將其鎖在一間屋子里。

開始實施

我用于測試的是一臺基于x86的Red Hat 6.2機器,它安裝有兩個網卡。整個過程無需特殊的系統或者對內核進行增改。開始,我嘗試著在控制運行的腳本中搜索,希望能找到一點相關的線索。最后,我把焦點定格在rc0(該腳本在機器關閉時運行)腳本上。事實證明,這正是我要找的地方。于是我開始從中刪除一些腳本,并且進行了一系列測試。

經過一段相對較短的時間,我得出結論,對于Red Hat Linux 6.2,刪除以下腳本就可以實現上述的功能:

  /etc/rc.d/rc0.d/S00killall 
  /etc/rc.d/rc0.d/K90network 
  /etc/rc.d/rc0.d/K92ipchains

刪除這三個腳本以后,我們就可以使網絡仍然可以工作,并且使ipchains仍然運行。切記,一定要把killall腳本刪除,因為它的任務是尋找/etc/rc.d/rc0.d/中所有的目錄,并且運行所有以K為開頭的腳本。也就是說該腳本會運行K90網絡和K92ipchains腳本,而這兩個腳本會刪除網絡和ipchains。

 

一些解釋

實際上,我們是把Linux設置成了一個內核子集。當機器暫停時,甚至是機器運行了Shutdown以后,這一部分內核仍駐留在內存中。這種方法可以避免在關機的過程中,機器會中止所有的進程,關閉所有網卡以及卸載所有的文件系統。此外,這種方法使得機器在關閉以后,不能再執行任何內部的任務。然而,內核仍然在運行,內存管理器也還在運行。

由于內核仍然在運行,所以在關機以后,所有我們運行的,基于內核的任務都可以被運行。當然,由于大部分的任務都需要進行一些I/O操作(正如本例一樣)。因此,我們必須讓機器關閉以后,仍然使這些端口存在。這是通過K90network來實現。它使得網卡在關機以后也不會停止工作。

此外,任何需要使用到的基于內核的服務都必須要處于運行狀態(比如ipchains)。在缺省情況下,當系統關閉時,會把所有的ipchains規則都中止。如果這樣的話,在本例中,防火墻將無法工作,所以必須要把清除ipchains規則的腳本刪除。在本例中即要刪除K92ipchains腳本。

局限性

在關閉系統以后,只讓部分程序運行,這顯然會有一些局限性。在本例中,最明顯的局限性就是如果客戶端的IP地址是通過后臺程序(比如PPP、DHCP)等獲得的,那么就將無法實現該功能。這就限制了那些使用動態連接用戶的使用。此外,由于在關系系統過程中,所有的用戶代理空間(比如Socks5)都將被關閉,因此在本例的設置中,只能實現包過慮和NAT功能。

此外要考慮的一點是,由于所有的驅動器都被卸載了,所有的交換空間都從機器上被刪除,所以如果機器的內存足夠大的話,那么在處理的信息量很大時也不會有問題。但是如果使用的是一臺性能比較差的老機器,那么在傳輸的信息量過大時就會出現一些問題。

總結

作為一個Linux愛好者,我覺得這一小發現很有意思。此外,在我們完成特定的安全任務時,這也給了我們一種特定的解決模式。目前,我最想知道的,是否其它的自由Unix(比如OpenBSD)也可以做成功類似的實驗。此外,雖然我是在家中做的實驗,但是如果將其用于中小型公司的話,我想可以為公司提供安全極高的數據包過濾功能。此外,也可以為一些大的商業任務提供一個非常安全的、高帶寬的防火墻或者路由器。

關鍵字:防火墻、網絡

分享到:

頂部 】 【 關閉
版權所有:佛山思海電腦網絡有限公司 ©1998-2024 All Rights Reserved.
聯系電話:(0757)22630313、22633833
中華人民共和國增值電信業務經營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網安 舉報有獎  警警  手機打開網站