防火墙、防病毒网关、IDS以及该类安全产品开发
轉(zhuǎn)貼:
防火墻的會(huì)話性能標(biāo)稱是什么意思- -
??????????????????????????????????????
防火墻的會(huì)話標(biāo)稱是一個(gè)僅與防火墻建制內(nèi)存多少有關(guān)的指標(biāo),因此,也成為一些廠商胡弄用戶的竅門,注意一個(gè)特點(diǎn):國(guó)產(chǎn)防火墻的會(huì)話標(biāo)稱總是遠(yuǎn)遠(yuǎn)超過進(jìn)口的防火墻。某種程度上,也說明國(guó)產(chǎn)軟件業(yè)在技術(shù)上的虛弱,缺乏嚴(yán)謹(jǐn)?shù)木瘛?br />防火墻能支持多少數(shù)量的會(huì)話標(biāo)稱,本來是標(biāo)示防火墻性能的一個(gè)重要指標(biāo)。但近來有些廠家利用部分消費(fèi)者,特別是政府部門的購(gòu)買者不了解參數(shù)含義的機(jī)會(huì),對(duì)該指標(biāo)進(jìn)行任意撥高,已經(jīng)令會(huì)話指標(biāo)對(duì)許多防火墻產(chǎn)品的選購(gòu),在很大程度上失去了參考意義。那么,防火墻的會(huì)話,到底是一種怎么樣的性能呢?
????如果是普通的包過濾防火墻,無所謂會(huì)話。這種防火墻通常見第一代的國(guó)產(chǎn)防火墻,很多就是用 ipchains改造過來的。對(duì)于這種防火墻,重要的性能指標(biāo)是防火墻的吞吐量,或稱濾通量;以及包過濾的時(shí)延。會(huì)話,只對(duì)提供狀態(tài)檢測(cè)的防火墻才有意義。
????但現(xiàn)在的防火墻都要求提供網(wǎng)絡(luò)連接檢測(cè)。眾所周知,TCP是有狀態(tài)的連接,狀態(tài)檢測(cè)的防火墻能根據(jù)該 IP包所屬的連接是新的還是舊的,決定該IP包是否符合防火墻的政策約定。因此,防火墻必須在內(nèi)存中保留這一記錄,這就是會(huì)話的由來,每一個(gè)連接,就是一個(gè)會(huì)話。由于目前的防火墻一般工作中轉(zhuǎn)接網(wǎng)關(guān),存在著大轉(zhuǎn)小這樣的情況,如內(nèi)部網(wǎng)是百兆,而上網(wǎng)的ADSL撥號(hào)是500K這種。因此,由于網(wǎng)絡(luò)變窄,部分連接請(qǐng)求不能馬上實(shí)施,只能在內(nèi)部隊(duì)列中一個(gè)個(gè)地招待,這樣,對(duì)于沒有連接狀態(tài)的部分請(qǐng)求,在保持在防火墻內(nèi)存排隊(duì)時(shí),目前也算是一個(gè)會(huì)話。大部分防火墻都是由linux或類似的操作系統(tǒng)發(fā)展來的,包括screen OS和checkpoint,因此,他們的原理有共通性。這里就以netfilter作一個(gè)例子進(jìn)行說明。只要在netfilter中編譯進(jìn) mod_conntrack模塊,防火墻就具備了進(jìn)行狀態(tài)檢測(cè),或稱狀態(tài)跟蹤的功能。
????防火墻支持多少會(huì)話,僅取決于防火墻的內(nèi)存多少,系統(tǒng)會(huì)自動(dòng)采用所有內(nèi)存,直接內(nèi)存用光,系統(tǒng)崩潰為止。因此,許多防火墻根據(jù)自已的內(nèi)存的多少,設(shè)定一個(gè)參數(shù)ip_conntrack_max的大小。有這個(gè)限制,一旦系統(tǒng)記錄的會(huì)話達(dá)到這個(gè)數(shù)值,系統(tǒng)就不再建立新的會(huì)話。所以,一個(gè)防火墻如果單純希望增大這個(gè)參數(shù),僅需要增加內(nèi)存(10萬會(huì)話約消耗45M內(nèi)存),然后不顧一切地把 ip_conntrack_max設(shè)定大大的,別說一百萬,就是算一千萬也是可以達(dá)到的。
????那么一般防火墻需要多少會(huì)話呢?用兩種應(yīng)用舉個(gè)例子。象http,每一個(gè)href都將是一個(gè)連接,包括每一個(gè)的圖片,因此,瀏覽一個(gè)網(wǎng)頁(yè),常常是同時(shí)出現(xiàn)二十個(gè)連接以上。這種連接迅速而來,又迅速完成(網(wǎng)頁(yè)下載都有一個(gè)速度要求)。而ftp和telnet 就是另一個(gè)例子,就算下載上百兆的文件,也只是一個(gè)連接;而使用多線程下載工具,象netant,每一個(gè)線程都是一個(gè)連接。因此,假設(shè)是一個(gè)500人的網(wǎng)絡(luò)需要上網(wǎng),其中同時(shí)瀏覽的有100人(平均20秒刷新一次),另外200人打QQ,50人使用十個(gè)線程下載文件,還有50 人進(jìn)行如telnet,數(shù)據(jù)庫(kù)訪問這樣的會(huì)話;如果沒有出口瓶頸,那么,實(shí)際的會(huì)話數(shù)估計(jì)是在千以上附近。但如果有出口限制,那么就可能升級(jí)到萬以上。但無論是多大的網(wǎng),達(dá)到幾萬以上的也是極為罕見的,真的出現(xiàn)了這種情況,很可能是感染了如沖擊波這類的病毒。
????防火墻最通常鐵使用是內(nèi)部的子網(wǎng)分隔,這部分也會(huì)產(chǎn)生一部分會(huì)話請(qǐng)求。對(duì)于百兆/千兆這種一般的網(wǎng)絡(luò)環(huán)境來說,大致有十萬以上的會(huì)話能力的防火墻,也基本上足夠了。保持太多的會(huì)話對(duì)防火墻沒有必要,相反,當(dāng)系統(tǒng)資源過多地用在會(huì)話保持的話,會(huì)相應(yīng)損害每秒生成會(huì)話的能力,這是一個(gè)同樣重要的性能指標(biāo)。設(shè)定過高的會(huì)話數(shù)量,卻降低了每秒生成會(huì)話的能力,其結(jié)果,只能是保留一些永遠(yuǎn)用不到的會(huì)話虛數(shù)而已。每秒生成會(huì)話能力,也稱會(huì)話速率,主要與CPU處理能力/寄存器的數(shù)量,以及操作系統(tǒng)內(nèi)核是否利用這一處理能力有關(guān)。相對(duì)而言,這是使用X86的系統(tǒng)比較弱的部分,包括nokia,而使用RISC的系統(tǒng),速動(dòng)會(huì)話的能力就比較高,相應(yīng)地,保持最大會(huì)話的能力也比較弱。
????對(duì)于X86/Linux/BSD的防火墻來說,會(huì)話最大保持在10萬到30萬是比較合理的。如果使用非常強(qiáng)大的主板,而且linux針對(duì)這種主板進(jìn)行了一些底層優(yōu)化(主要是優(yōu)化對(duì)寄存器-內(nèi)存之間訪問的過程),可以在不損害會(huì)話速率等性能的情況下把會(huì)話達(dá)到50萬到60萬。這是目前本人所知的最大極限。
????會(huì)話的性能需要內(nèi)存,如果考慮防火墻和操作系統(tǒng)本身展開需要128M內(nèi)存左右的話,那么40萬會(huì)話就要消耗約180M,意味著是300M內(nèi)存以上才有可能。由此,也可以知道一些產(chǎn)品的標(biāo)稱是否有弄虛作假的成分。
?
為什么單機(jī)防病毒不能確保局域網(wǎng)不受侵?jǐn)_- -
??????????????????????????????????????
對(duì)于防病毒來說,單機(jī)防病毒軟件更象是急救醫(yī)生,而不是預(yù)防針,至于病毒已經(jīng)造成多少損害,實(shí)在只能是各安天命
當(dāng)前企業(yè)局域網(wǎng)的防病毒措施主要是單機(jī)防病毒軟件和網(wǎng)絡(luò)防病毒軟件。相對(duì)而言,一般用戶或多或少都會(huì)使用單機(jī)防病毒,而使用網(wǎng)絡(luò)防病毒的比例就并不高。其中一個(gè)重要原因是用戶并沒有認(rèn)識(shí)到防病毒軟件是一個(gè)和管理密切相關(guān)的產(chǎn)品,換句話說,沒有多少用戶,尤其是企業(yè)的領(lǐng)導(dǎo)人,愿意承認(rèn)自已公司的IT管理水平是不夠的,需要使用更強(qiáng)大的保護(hù)措施確保企業(yè)網(wǎng)絡(luò)的正常運(yùn)轉(zhuǎn)。
????大家都知道,要保證一臺(tái)電腦不受病毒侵害,需要安裝一種防病毒軟件,至于牌子反而不是重要的,更重要的是要保證定期升級(jí)病毒碼,并為運(yùn)行的操作系統(tǒng)和程序打上最新的補(bǔ)丁,要想對(duì)抗蠕蟲病毒,單機(jī)而言還需要安裝單機(jī)防火墻。的確,對(duì)于一個(gè)具備良好電腦防護(hù)知識(shí)的使用者來說,象公司的電腦部技術(shù)員和網(wǎng)管等,使用單機(jī)防病毒軟件,并定時(shí)升級(jí)病毒碼,打上新的補(bǔ)丁,可以有效地保護(hù)自已的電腦不受病毒的侵?jǐn)_。但同時(shí)也必須認(rèn)識(shí)到,現(xiàn)實(shí)生活中,并不是所有企業(yè)員工都具備電腦的保護(hù)意識(shí)的,即使有些員工有一定的安全意識(shí),一旦遇到特殊的情況,象防病毒軟件不能升級(jí)等等,除非是電腦部的服務(wù)性員工,否則就會(huì)不了了之;更多的員工只是電腦的使用者而不是維護(hù)者,有問題就把電腦往電腦部一送了事,就這樣,盡管一個(gè)公司內(nèi)似乎每臺(tái)電腦都有防病毒軟件,事實(shí)是,大部分的是電腦是處于完全不設(shè)防狀態(tài)。 ????一般員工并不理解,維護(hù)一臺(tái)電腦的軟硬件,特別是維護(hù)軟件系統(tǒng)正常運(yùn)行是一項(xiàng)艱巨、枯燥、極耗時(shí)間和精力的工作。別的不說,光是完整安裝好一臺(tái)WINDOWS就需要至少小半天的時(shí)間。如果這個(gè)員工完全不動(dòng)電腦里面的設(shè)置還好辦,偏偏大部分員工卻是喜歡在自已的電腦上搞點(diǎn)"個(gè)性化"之類,這就令網(wǎng)管人員的維護(hù)工作更顯復(fù)雜化。實(shí)際上,一個(gè)網(wǎng)管人員能夠維護(hù)25臺(tái)主機(jī)軟硬件就很已經(jīng)是超負(fù)荷了,而在現(xiàn)實(shí)企業(yè)網(wǎng)絡(luò)環(huán)境中,平均一個(gè)網(wǎng)管人員要照顧的主機(jī)數(shù)目通常上百臺(tái)。這就進(jìn)一步造成了使用單機(jī)防病毒軟件的局域網(wǎng),只要達(dá)到二三十臺(tái)主機(jī)以上,對(duì)病毒侵?jǐn)_就基本上處于不設(shè)防狀態(tài)。
????因此,對(duì)于局域網(wǎng)的防病毒,使用網(wǎng)絡(luò)防病毒是非常重要的,它可以大大減輕網(wǎng)管人員的工作負(fù)擔(dān)。 這不是偷懶,而是由于這樣一個(gè)事實(shí):絕大多數(shù)人都不是電腦專家。
????使用網(wǎng)絡(luò)防病毒軟件是必要的,但仍不足夠,因?yàn)榻鼇硗{最大的病毒,是連網(wǎng)絡(luò)防病毒軟件也對(duì)付不了的蠕蟲病毒,需要使用防火墻才能抵御。
?
為什么防病毒軟件不能抵御蠕蟲病毒- -
??????????????????????????????????????
蠕蟲病毒本質(zhì)上并非病毒,而是一種基于被攻陷主機(jī)陷害其它主機(jī)的黑客程序,因此,基于傳統(tǒng)文件IO流掃描的防病毒軟件對(duì)之無能為力
近一年內(nèi),在電腦病毒造成的危害中,蠕蟲病毒越來越成為最具危害性的病毒種類,象尼姆達(dá),到?jīng)_擊波等,相比之下,普通的文件型病毒相對(duì)顯得如此古老,"溫和"。與最新病毒特點(diǎn)看,目前用戶,特別是企業(yè)局域網(wǎng)的防病毒措施顯得相當(dāng)落后且不足。
????無論是單機(jī)防病毒,還是網(wǎng)絡(luò)防病毒,其核心都是電腦主機(jī)的文件防病毒。簡(jiǎn)單地說,它工作在文件的開啟和存儲(chǔ)過程中,通常是在fopen()文件操作函數(shù)中形成一個(gè)文件流時(shí),使用預(yù)設(shè)地病毒特征數(shù)值與流中的值進(jìn)行匹配,從而確認(rèn)該文件是否含有已知的病毒特征。由這個(gè)工作過程可以知道,存在一個(gè)確定的文件,是這類防病毒軟件工作的前提。所以目前象沖擊波這類的蠕蟲病毒,由于它不是基于文件工作而是基于溢出漏洞工作的,直到主機(jī)受到感染仍沒有執(zhí)行任何fopen()操作,因此,無論是國(guó)產(chǎn)的如瑞星,還是進(jìn)口的如諾頓,對(duì)于這類病毒都是鞭長(zhǎng)莫及,只有在病毒要保存到硬盤上,如諾頓這樣的防病毒軟件的實(shí)時(shí)保護(hù)才會(huì)有所動(dòng)作,因?yàn)?#xff0c;這時(shí)他調(diào)用了fopen()這樣的文件流操作了。
????有朋友可能會(huì)問,那么為什么裝了防病毒軟件,過一段時(shí)間后,病毒的確消失了呢?原因就在于這類病毒感染后是保留在內(nèi)存中,只要一關(guān)機(jī),就會(huì)消失。如果它存在硬盤上,防病毒軟件就會(huì)有反應(yīng);即使由于病毒碼更新問題沒有察覺,當(dāng)電腦再次開啟時(shí),總會(huì)經(jīng)過文件讀操作,只要這個(gè)操作在在防病毒軟件初始化之后,防病毒軟件就可以阻止病毒再次讀入內(nèi)存。顯然,這是因?yàn)殚_機(jī)、關(guān)機(jī)造成的強(qiáng)制性病毒清空、重載造成。部分感染沖擊波的電腦在關(guān)機(jī)開機(jī)幾天后就自動(dòng)好轉(zhuǎn),就是這個(gè)道理。
????但即使是這樣,仍然存在明顯的漏洞,只要病毒設(shè)計(jì)上開機(jī)時(shí)初始化時(shí)搶在防病毒軟件啟動(dòng)前重載,就可以主動(dòng)地避開防病毒軟件,甚至故意令防病毒軟件失效。在這場(chǎng)較量中,傳統(tǒng)的基于文件的防病毒軟件處于非常被動(dòng)的地位。
????傳統(tǒng)的基于文件的防病毒軟件無法應(yīng)付蠕蟲病毒,原因就在于這類病毒的機(jī)理并不是基于文件讀寫的和執(zhí)行的,它的本質(zhì)是一種程序化的黑客程序,針對(duì)已知的某種系統(tǒng)漏洞編寫,一般通過網(wǎng)絡(luò)對(duì)外服務(wù)的端口進(jìn)行感染;象尼姆達(dá)主要針對(duì)wiindows,沖擊波通過微軟的RPC服務(wù)溢出漏洞等。整個(gè)感染過程與文件讀寫執(zhí)行完全沒有關(guān)系,因此,傳統(tǒng)的防病毒軟件自然是無能為力了。
????要有效抵御蠕蟲病毒,唯一的辦法就是使用防火墻,在單機(jī)而言,可以使用單機(jī)型的防火墻,在網(wǎng)絡(luò)看,可以使用硬件防火墻。防火墻的作用就是控制主機(jī)向外開放的端口服務(wù),從而切斷蠕蟲病毒病毒傳播的主要途徑。一般而言,如果主機(jī)數(shù)量不多,只有幾臺(tái),象托管服務(wù)器,使用單機(jī)防火墻更經(jīng)濟(jì),反之,如果接受保護(hù)的主機(jī)比較多,象局域網(wǎng),使用硬件防火墻會(huì)經(jīng)濟(jì)得多和方便得多,其中一個(gè)不算太重要但卻很實(shí)際的原因是易于管理。道理和必須使用網(wǎng)絡(luò)防病毒而不能依靠單機(jī)防病毒軟件一模一樣。而且,按筆者的經(jīng)驗(yàn),防病毒軟件和單機(jī)防火墻在一臺(tái)電腦上工作時(shí),出現(xiàn)異常錯(cuò)誤的機(jī)會(huì)很大,會(huì)大大增加管理員的工作負(fù)擔(dān)。
?
防火墻集成IDS對(duì)性能影響- -
??????????????????????????????????????
防火墻中集成IDS,理論上可以大幅度加強(qiáng)網(wǎng)絡(luò)的防入侵能力,但一般在netfielter擴(kuò)展過濾涵數(shù)的實(shí)現(xiàn)方式對(duì)性能的影響也是不可小視的
許多客戶和技術(shù)人員認(rèn)為,防火墻中集成IDS即IDP,就是把IDS和防火墻"串聯(lián)"起來,(這個(gè)比喻很形象),因此必然影響網(wǎng)絡(luò)處理性能,并大大消耗防火墻的系統(tǒng)資源,導(dǎo)致防火墻的"本職工作"反而不象專門的單一防火墻那樣專業(yè)。這種看法有一定的道理,因?yàn)樵S多入侵防御加強(qiáng)型的防火墻就是通過這個(gè)辦法宣稱自已也是IDP的。
????接觸過防火墻營(yíng)銷商的顧客很多都聽過這些營(yíng)銷商常常聲稱自已的防火墻帶有IDS,其實(shí),那更多的是防火墻內(nèi)核函數(shù)中防有限攻擊的功能,而不是真正的基于模式匹配的IDS。下面就用netfilter和iptables作為例子說明一下,要知道絕大部分防火墻是基于netfilter防火墻內(nèi)核的,大致也就只有Netscreen,Pix,CheckPoint這幾家的中高檔產(chǎn)品才例外.
??iptables并不是防火墻,而是用戶與防火墻內(nèi)核(netfilter)交互的接口工具,(簡(jiǎn)易型的防火墻常常是把 iptables通過php和web圖型界面化開發(fā)出來,這也是許多國(guó)產(chǎn)防火墻的通用開發(fā)模式),在iptables中就有一項(xiàng) --string的參數(shù),可以把諸如病毒碼、一些特征碼放進(jìn)去,形成簡(jiǎn)易的IDS。這種形式用在病毒擴(kuò)展上比較多,而用在IDS就不太合適,主要是網(wǎng)絡(luò)入侵不象文件型病毒,是不帶字符串型的特征碼的。
????在netfilter直接添加IDS功能,一般是在NF_HOOK宏中注冊(cè)自已的函數(shù),抵御已知的幾十種攻擊形式。參看netfilter 的高級(jí)應(yīng)用舉例。這就是通常人們理解的"串聯(lián)"的由來,這樣處理,由于每個(gè)包都必須經(jīng)過這樣的檢測(cè)才能使用ip_forward_finish函數(shù)完成轉(zhuǎn)發(fā),所以防火墻的性能是隨著這類函數(shù)增多而迅速下降的,所謂IDP低性能的傳說,就是這樣來的。netfilter另有一個(gè)邊緣的工程,叫hogwash。該工程結(jié)合了Snort IDS規(guī)則模式匹配引擎,以便于iptable能夠響應(yīng)帶有攻擊信號(hào)的數(shù)據(jù)包。其實(shí)就是把snort的匹配規(guī)則自動(dòng)換換成上述的函數(shù),然后更新。但這個(gè)工程一直沒有進(jìn)展,關(guān)鍵就在于,"串聯(lián)"的函數(shù)不能多,而且這樣等同于動(dòng)態(tài)修改內(nèi)核,極大地消弱了防火墻內(nèi)核工作的穩(wěn)定性。所以,通過這種方式提供IDS是行不通的,盡管仍有一些方式可以相對(duì)緩解這個(gè)矛盾,象CheckPoint的 smart defense,但畢竟可發(fā)展空間很有限。
????要有效地讓防火墻同時(shí)具備IDS的功能,方法只有一個(gè),就是讓IDS作為一個(gè)獨(dú)立的實(shí)體線程工作在FW 的同一個(gè)系統(tǒng)中。這樣做,盡管表面上仍分薄了防火墻的CPU/內(nèi)存系統(tǒng)資源,實(shí)際上,目前防火墻產(chǎn)品的系統(tǒng)瓶頸并不是CPU/內(nèi)存,而是PCI的總線交換速率;相反,除非是同時(shí)使用高強(qiáng)度的VPN加密,否則,CPU/內(nèi)存等一般資源是大大綽余的,對(duì)于X86的ASIC(冗余指令集)系統(tǒng)來說,更是如此。
????這時(shí)侯,IDS其實(shí)是與防火墻"并聯(lián)"工作。另一方面,防火墻的轉(zhuǎn)發(fā)要求實(shí)時(shí)性遠(yuǎn)遠(yuǎn)超過IDS,大致在微秒數(shù)量級(jí)(us),相反,IDS的實(shí)時(shí)性要求充其量只在毫秒級(jí)(ms),更多是在秒分甚至是小時(shí)這樣的數(shù)量級(jí);而防火墻基于更高的實(shí)時(shí)性要求而擁有更高的系統(tǒng)優(yōu)先級(jí);因此,防火墻基本上可以不受IDS的影響而性能受到損害(在千分之一以下)。對(duì)于系統(tǒng)來說不是IDS是否會(huì)影響防火墻的性能的問題,而是防火墻需要準(zhǔn)備多少的緩沖內(nèi)存從事IDS的問題,以減少IDS可能因包丟失而造成的漏報(bào)問題。
????因此,合理集成IDS,是可以不對(duì)防火墻造成任何實(shí)質(zhì)性影響的。這正是IDP的技術(shù)基礎(chǔ)。
?
防毒墻(防病毒網(wǎng)關(guān))與防火墻的異同- -
??????????????????????????????????????
拒病毒于國(guó)門之外是防病毒墻的初衷,但在第三層工作環(huán)境的防火墻中建立相當(dāng)于第七層過濾 所帶來的資源消耗,以及隨之而來的不可靠,卻讓人覺得得不償失
?防毒墻即通常所說的防病毒網(wǎng)關(guān)。目前市場(chǎng)上對(duì)防毒墻的概念仍未達(dá)到共識(shí)。一般認(rèn)為,防毒墻包括以病毒掃描為首要目的的代理服務(wù)器;以及需要與防火墻配合使用的專用防毒墻;而以防火墻功能為主,輔有部分防病毒過濾功能的產(chǎn)品,一般不認(rèn)為是防毒墻。因此,包括象Fortigate和德科安軟的圖騰防火墻,以至它們的OEM衍生防火墻產(chǎn)品,都不算是正式的防毒墻產(chǎn)品。如此分割的一部分原因,是因?yàn)檫@種以防火墻功能為主的防火墻,不可能因?yàn)樾枰啦《径淖鰧iT的病毒墻,在經(jīng)濟(jì)上不劃算;而且,使用防病毒功能后,防火墻的性能會(huì)遭受大幅度的削弱,也使這部分功能只適合在較小的網(wǎng)絡(luò)范圍內(nèi)使用。
????防毒墻與防火墻的最大區(qū)別在于,前者主要基于協(xié)議棧工作,或稱工作在OSI的第七層;而后者基于IP棧工作,即OSI的第三層。因此決定了防火墻必須以管理所有的TCP/IP通訊為已任,而防毒墻卻是以重點(diǎn)加強(qiáng)某幾種常用通訊的安全性為目的。因此,對(duì)于用戶而言,兩種產(chǎn)品并不存在著互相取代的問題,防毒墻是對(duì)防火墻的重要補(bǔ)充,而防火墻是更為基本的安全設(shè)備。在實(shí)際應(yīng)用中,防毒墻的作用在于對(duì)所監(jiān)控的協(xié)議通訊中所帶文件中是否含有特定的病毒特征,防毒墻并不能象防火墻一樣阻止攻擊的發(fā)生,也不能防止蠕蟲型病毒的侵?jǐn)_,相反,防毒墻本身或所在的系統(tǒng)有可能成為網(wǎng)絡(luò)入侵的目標(biāo)(如 趨勢(shì)的Interscan安裝在windows上的時(shí)侯);而這一切的保護(hù),必須由防火墻完成。
????防毒墻和防火墻的共同之處是兩者都是工作在網(wǎng)關(guān)。在小范圍的網(wǎng)絡(luò)中,與互聯(lián)網(wǎng)聯(lián)網(wǎng)的需求相對(duì)簡(jiǎn)單,一般就是SMTP和HTTP等少數(shù)幾種協(xié)議,這時(shí),防毒墻只要所基于的操作系統(tǒng)沒有明顯的漏洞,作用與防火墻基本相同。
????無論是那一種防毒墻,由于工作的OSI層次較高,因此,過濾速度比較低;或者高速度的成本較高。但即便是高帶寬的防毒墻,對(duì)于網(wǎng)絡(luò)通訊所造成的延時(shí)也是比一般防火墻大得多。因此,防毒墻在大型網(wǎng)關(guān)節(jié)點(diǎn)的布署是一個(gè)值得管理員慎重對(duì)待的問題。筆者認(rèn)為,把防毒墻布置在第二防火墻,即部門網(wǎng)關(guān)這一層較為合理。
????正因?yàn)檫@個(gè)原因,如果防火墻與防毒墻集成在一起,就會(huì)形成一個(gè)相對(duì)尷尬的局面:要么防火墻只能用在小型網(wǎng)段,要么就是大材小用,或者干脆就不用。
?
網(wǎng)關(guān)防病毒(防毒墻)的實(shí)現(xiàn)方式- -?
?????????????????????????????????????
防火墻集成防病毒功能,即網(wǎng)關(guān)防病毒,與平常常見的基于主機(jī)的傳統(tǒng)防病毒有很大的不同。傳統(tǒng)的防病毒軟件通常是在類似fopen()這樣的文件操作函數(shù)中
形成一個(gè)文件流時(shí),使用預(yù)設(shè)地病毒特征數(shù)值與流中的值進(jìn)行匹配,從而確認(rèn)該文件是否含有已知的病毒特征。而在網(wǎng)關(guān)環(huán)境中,根本就不存在一個(gè)"文件"的概
念,有的只是分屬于不知那里來的那個(gè)文件的成千上萬的IP包,因此,網(wǎng)關(guān)防病毒需要完全不同的防病毒引擎。
防火墻集成防病毒功能,即網(wǎng)關(guān)防病毒,與平常常見的基于主機(jī)的傳統(tǒng)防病毒有很大的不同。傳統(tǒng)的防病毒軟件通常是在類似fopen()這樣的文件操作函數(shù)中形成一個(gè)文件流時(shí),使用預(yù)設(shè)地病毒特征數(shù)值與流中的值進(jìn)行匹配,從而確認(rèn)該文件是否含有已知的病毒特征。而在網(wǎng)關(guān)環(huán)境中,根本就不存在一個(gè)"文件"的概念,有的只是分屬于不知那里來的那個(gè)文件的成千上萬的IP包,因此,網(wǎng)關(guān)防病毒需要完全不同的防病毒引擎。
????網(wǎng)關(guān)防病毒同樣是基于特征字符串匹配。固然可以直接在防火墻過濾內(nèi)核中匹配每個(gè)IP包的內(nèi)容是否包含指定的ASII字符串,但這樣很不可靠,因?yàn)樵S多文件在以太網(wǎng)傳輸過程中是分成許多IP包的,如果特征碼剛好在分割界限上,這種字符串匹配就無能為力,因此,就要求防火墻使用IP碎片重組技術(shù),即必須由防火墻內(nèi)核辟出一個(gè)新的緩沖區(qū)重組IP包,然后再繼續(xù)轉(zhuǎn)發(fā)。另外,全面匹配每個(gè)IP包的每一段內(nèi)容,對(duì)防火墻的通量性能危害極大,性能的損害可以達(dá)千倍以上。正是由于這個(gè)原因,使用這種方式進(jìn)行防火墻的防病毒對(duì)性能的損害的極大的,防火墻變慢不足為奇。也正是由于這個(gè)原因,使用這種方法是不可能達(dá)到傳統(tǒng)的殺毒作用,在防火墻上,只能是查毒,一旦發(fā)現(xiàn),就把該IP或該會(huì)話丟棄,顯然,這時(shí)涉及的文件也不會(huì)有用,因此,防火墻的操作就是把文件丟棄,也即一般用戶在如fortigate防火墻上看到的病毒文件的"被屏蔽"。除Fortigate外,象熊貓的 PAA防毒墻,也是能通過這種方式實(shí)現(xiàn)的,只不過,它把系統(tǒng)默認(rèn)設(shè)定在透明模式上工作而已。
????網(wǎng)關(guān)防病毒的另一個(gè)實(shí)現(xiàn)方式就是使用代理服務(wù)器。眾所周知,防火墻工作在OSI第三層,部分工作會(huì)在第四層會(huì)話層完成;而代理服務(wù)器則工作在OSI第七層,也就是應(yīng)用程序?qū)由稀_@時(shí),防火墻實(shí)際上起到的是一個(gè)二傳手中介的作用,發(fā)起聯(lián)接的主機(jī)和目標(biāo)主標(biāo)根本沒有建立起真正的聯(lián)接。在代理服務(wù)器作為二傳手是時(shí),代理服務(wù)器進(jìn)程就會(huì)在內(nèi)存中建立起一個(gè)文件緩沖區(qū),從而形成一個(gè)可檢測(cè)的流。這時(shí)的檢測(cè)就與普通的傳統(tǒng)防病毒方式是一樣的,同樣是使用fopen的文件操作,只不過,傳統(tǒng)防病毒軟件是在文件系統(tǒng)中的調(diào)用fopen();而網(wǎng)關(guān)防病毒則是在socket 中調(diào)用這個(gè)函數(shù)。恰好,在UNIX中,是把網(wǎng)絡(luò)socket看作是文件中的一種。使用這種網(wǎng)關(guān)防病毒方式的包括象諾頓的防火墻(本質(zhì)上是代理服務(wù)器), NAI的防毒墻,還有圖騰防火墻的防病毒功能,以及東軟防火墻的流過濾技術(shù),都是這樣實(shí)現(xiàn)的。使用代理服務(wù)器可以實(shí)現(xiàn)比防火墻內(nèi)核過濾要復(fù)雜得多的過濾操作,(這是OSI第七層應(yīng)用程序較之OSI第三層操作的先天優(yōu)勢(shì)),代價(jià)是負(fù)出的性能損耗也是極大的,同樣的通量,代理服務(wù)器需要成百上千倍于普通防火墻的資源消耗。
?
什么防火墻集成防病毒會(huì)很慢- -
??????????????????????????????????????
由網(wǎng)關(guān)防病毒的兩種實(shí)現(xiàn)方式可以看出,無論采用那一種,實(shí)時(shí)性和網(wǎng)關(guān)通量與一般的防火墻相比都是大為不及的。
由網(wǎng)關(guān)防病毒的兩種實(shí)現(xiàn)方式可以看出,無論采用那一種,實(shí)時(shí)性和網(wǎng)關(guān)通量與一般的防火墻相比都是大為不及的。另一方面,任何一個(gè)終端主機(jī)產(chǎn)生如文件下載請(qǐng)求時(shí),防毒墻都需要專門辟出一段專門的內(nèi)存保存用作檢測(cè)的臨時(shí)文件。盡管不需要把整個(gè)文件都保存在緩存當(dāng)中,但肯定比單純進(jìn)行IP轉(zhuǎn)發(fā)要大得多??梢韵胂?#xff0c;如果同時(shí)有多人下載或傳遞大文件時(shí)侯,防毒墻/代理服器的負(fù)擔(dān)到底有多大。要知道,文件傳遞,這包括到象HTTP,FTP,SMTP,POP3這些協(xié)議,是經(jīng)常執(zhí)行的。這時(shí)侯,防火墻的負(fù)擔(dān)比最大負(fù)載的文件服務(wù)器恐怕還要大得多,要知道,標(biāo)準(zhǔn)的工業(yè)防火墻是連系統(tǒng)硬盤也沒有的啊!!這就是為什么防火墻激活防病毒后會(huì)很慢的原因。也正是由于這個(gè)原因,指望在大網(wǎng)絡(luò)的網(wǎng)關(guān)把病毒完全切斷是不現(xiàn)實(shí)的,否則,在中國(guó)電訊的國(guó)際出口設(shè)個(gè)防病毒墻豈不是更干脆?事實(shí)上,網(wǎng)關(guān)防病毒,無論是代理服務(wù)器還是IP內(nèi)容檢測(cè),都很難對(duì)50臺(tái)主機(jī)以上的網(wǎng)絡(luò)服務(wù)。這同樣是象諾頓這樣的防火墻(代理服務(wù)器)不能在企業(yè)大型網(wǎng)絡(luò)工作的原因。
????與防病毒相似的是內(nèi)容過濾,道理也是一樣的,而且實(shí)現(xiàn)起來還相對(duì)會(huì)簡(jiǎn)單一些。
????畢竟,防火墻的天然工作僅是地址和端口的轉(zhuǎn)發(fā)控制,在小網(wǎng)絡(luò)它可以多干些其他的事情,而在大網(wǎng)絡(luò),還是激活功能單一一點(diǎn)為好。
?
開發(fā)硬件防火墻的主要步驟- -??
????????????????????????????????????
這里說的雖然是硬件防火墻,但幾乎所有的工作都是軟件工作。硬件防火墻的核心是軟件。
這里說的雖然是硬件防火墻,但幾乎所有的工作都是軟件工作。硬件防火墻的核心是軟件。
????在開發(fā)前,首先要清楚知道自已要需要的是什么類型的防火墻。同為硬件防火墻,大致可以分為高端以千兆為代表的主火墻,中端的百兆企業(yè)防火墻,以及低端家庭-小辦公室的防火墻(SOHU-SMB)。這三個(gè)級(jí)別的防火墻的開發(fā)方式有很大的不同。高端千兆防火墻的代表產(chǎn)品包括Netscreen的5000系列防火墻,以及Nodia-CheckPoint的IP720以上的產(chǎn)品,這級(jí)防火墻能夠適應(yīng)千兆要求的作業(yè),吞吐量至少在600M以上。作為國(guó)內(nèi)生產(chǎn)商目前要推出真正的千兆防火墻是很困難的,詳情請(qǐng)參考:為什么實(shí)現(xiàn)千兆防火墻很困難
????而作為低端家庭-小辦公室產(chǎn)品的防火墻,主要受的是硬件成本的壓力。這一級(jí)產(chǎn)品包括如 Netscreen的50/25/5X系列,Fortigate的FG200和FG300,以及一些市場(chǎng)上的撥號(hào)器、寬帶路由器都可以歸屬這檔防火墻。工作特點(diǎn)多是單進(jìn)單出,主要用在小局域網(wǎng)進(jìn)出互聯(lián)網(wǎng)的控制。考慮到一般公司出入互聯(lián)網(wǎng)的通道充其量也就幾兆,即使是LAN用戶或CABLE MODEM,公共出口也仍是幾兆。因此,自適應(yīng)十兆/百兆的單進(jìn)出小防火墻基本上可以滿足要求。事實(shí)上有些幾百人的公司使用win98+sysgate撥號(hào),也是自我感覺良好,可見這一檔次的上網(wǎng)防火墻性能要求并不高;價(jià)格也是維持在兩萬元以下。但對(duì)于使用X86架構(gòu)的防火墻來說,要求再低硬件也是有幾千元的;連上軟件成本,這兩萬元簡(jiǎn)直無法維持。因此,這一級(jí)防火墻的主要開發(fā)方式,是選擇合適的嵌入式系統(tǒng),通常是Linux,連硬件和軟件整套買進(jìn)來,自已添加其中的防火墻應(yīng)用程序。這種防火墻主要的系統(tǒng)開發(fā)工作由各嵌入系統(tǒng)的供應(yīng)商完成,而系統(tǒng)功能也弱,留給生產(chǎn)商的軟件施展空間也不大,所以更象是一項(xiàng)硬件采購(gòu)項(xiàng)目。連同最低采購(gòu)限額(一般是一千)和軟件開發(fā),大致在一百萬左右就可以拿下一個(gè)產(chǎn)品。這種防火墻,雖然也是"硬件防火墻",但不是我們本文的重點(diǎn)。
????本文介紹的,是中檔的企業(yè)級(jí)百兆防火墻的開發(fā)的主要步驟。這一級(jí)防火墻,是目前企業(yè)采購(gòu)的主要對(duì)象,也是最需要的產(chǎn)品類型。國(guó)產(chǎn)防火墻,基本上集中在這個(gè)區(qū)間,操作系統(tǒng)一般選用開源的Linux或者BSD;相比之下,BSD的應(yīng)用程序升級(jí)速度不算快,所以大部分防火墻選用的是Linux。
????要決定開發(fā)一個(gè)百兆的防火墻,需要選定一款合適的服務(wù)器主板,或者工控機(jī),另外就是要選定一個(gè)好的網(wǎng)卡,通常是服務(wù)器專用網(wǎng)卡。雖然象Linux這樣的操作系統(tǒng)可以自動(dòng)適應(yīng)不同的主板,(只要它符合象PC2000這樣的標(biāo)準(zhǔn)),Linux的最新內(nèi)核也總能支持較新的主板的性能,(如PIII的超線程);但每個(gè)主板和CPU之間還是有少許不同的;作為一個(gè)防火墻,除非對(duì)極端性能要求不是太嚴(yán)格,否則,需要針對(duì)主板和CPU的一些特性,如寄存器,SMP,超線程等等對(duì)內(nèi)核進(jìn)行針對(duì)性的修改和優(yōu)化,否則,默認(rèn)的內(nèi)核就只能使用這些主板/CPU最基本的部分。舉個(gè)例子說,防火墻有一個(gè)重要的性能指標(biāo)叫最大會(huì)話數(shù)速率,或稱每秒最大生成會(huì)話數(shù),如果使用普適形的內(nèi)核用到P3CPU上,能夠達(dá)到的最大數(shù)值大致也就只有幾千;但經(jīng)過對(duì)針對(duì)主板設(shè)計(jì)(這種說明可以從主板和CPU廠商獲取)進(jìn)行優(yōu)化,可以把性能提高到3-5萬左右。同樣,單純升級(jí)主板和CPU不見得能提高性能,象把防火墻從P3升級(jí)到P4,如果沒有支持P4的特殊性能,如超線程,最大會(huì)話能力就仍與P3沒有區(qū)別,不如不升值,還可以減點(diǎn)成本。而專門的優(yōu)化,則可以把性能達(dá)到50萬,這也是這類防火墻的使用Intel架構(gòu)主板目前所能達(dá)到的極限。針對(duì)選定硬件的優(yōu)化工作盡管獨(dú)立于防火墻開發(fā)的主體軟件工作,一般情況下也不會(huì)顯出它的必要性,但當(dāng)防火墻進(jìn)行極端的使用環(huán)境或評(píng)測(cè)環(huán)境時(shí),顯出的差距就非常大。針對(duì)網(wǎng)卡的開發(fā)驅(qū)動(dòng)程序除了優(yōu)化性能外,另一個(gè)目的就是要把防火墻與網(wǎng)關(guān)綁定在一起,以免被盜版。這個(gè)驅(qū)動(dòng)程序與定造的防火墻內(nèi)核一起,就令盜版顯得困難得多了。
????防火墻軟件的開發(fā)工作主體就是防火墻管理軟件的開發(fā)。對(duì)此,架構(gòu)師要明白自已到底要開發(fā)那一種防火墻,防火墻的管理思路是什么。在幾年前這種開發(fā)顯得簡(jiǎn)單,就是用一些web調(diào)用的程序,(另一種辦法是用dephi寫windows程序,通過特定端口服務(wù)控制防火墻,調(diào)用預(yù)設(shè)程序,原理也是一樣的),直接調(diào)用Linux的防火墻管理工具如ipchains;其余的工作主要就是預(yù)先編好若干類的默認(rèn)配置(相當(dāng)于template)。因此開發(fā)難度不算大,十來個(gè)人一年半載總能完成;大批國(guó)產(chǎn)防火墻就是這樣開發(fā)出來的。這種防火墻,對(duì)于熟悉Linux防火墻的高手來說是不必要的,自已用Ipchains就可以達(dá)到同樣的目的。因此,今天這種防火墻已經(jīng)擺不上臺(tái)面了。今天的防火墻主要是從便于管理著手,著眼于管理員可以較易對(duì)大量、復(fù)雜、多半的政策進(jìn)行維護(hù),這就需要開發(fā)"面向?qū)ο蠊芾淼姆阑饓?#34;。這樣一來,使用把 ipchains/iptables單純用PHP或delphi圖形化是不足夠的,事實(shí)上,這時(shí)侯單純使用如iptables已經(jīng)很難滿足要求,開發(fā)者常常必須開發(fā)自已的象iptables那樣的防火墻管理工具。這部分的工作非常龐大。
????作為防火墻的載體的操作系統(tǒng)和防火墻的內(nèi)核也是一個(gè)工作重點(diǎn)。防火墻作為網(wǎng)絡(luò)的第一道防線,不可以使用默認(rèn)設(shè)置的操作系統(tǒng),除了最必要的服務(wù)以外,所有東西都必須刪除。因此,企業(yè)級(jí)防火墻基本上是使用的是嵌入式操作系統(tǒng)的開發(fā)方式,通通常是形成一個(gè)在內(nèi)存中運(yùn)行的安全操作系統(tǒng),如同一個(gè)無盤的工作站。防火墻必須長(zhǎng)時(shí)間無故障工作,還要應(yīng)付可能有的突然斷電等現(xiàn)象,所以,一般情況下禁止連接系統(tǒng)硬盤,以免造成斷電損壞。防火墻的固存一般都不大,16M到32M就綽綽有余了。有些防火墻廠商沒有能力做到這一步,就使用大容易的FLASH作為系統(tǒng)盤,其實(shí)是非常危險(xiǎn)的。原因在于flash的寫性能差,可寫次數(shù)只在千次數(shù)量級(jí),而Unix類的文件系統(tǒng)讀與頻繁,因此極易造成flash上數(shù)據(jù)的丟失;而且一旦發(fā)生斷電關(guān)機(jī),如果仍然有系統(tǒng)盤安裝在目錄上,很可能造成文件系統(tǒng)的損壞,最終結(jié)果,即使最后可以搶救過來,也會(huì)給用戶防火墻質(zhì)量不過關(guān)的印象。
????防火墻的內(nèi)核也是一項(xiàng)不可少的工作內(nèi)容。目前一般的防火墻都是使用netfilter作為防火墻的內(nèi)核,而且都要求添加一定數(shù)量的防攻擊性能。參考netfilter的深入應(yīng)用舉例。但有些防火墻產(chǎn)品把這項(xiàng)工作擴(kuò)大化,希望由內(nèi)核完成如IDS、防病毒的工作,盡管可以辦到,但對(duì)防火墻的基本性能會(huì)造成嚴(yán)重的損害。
????企業(yè)級(jí)的防火墻需要有多種遠(yuǎn)程管理工具,方法一般有三種,ssl+http,遠(yuǎn)程的secure shell,或者使用專用客戶端工具。無論是那一種,都是基于同樣的在防火墻預(yù)定的用戶管理程序工作,這些管理程序被調(diào)用后,就與防火墻的接口管理程序(象iptables,或自編寫的接口程序,象圖騰ObjectMgr)互動(dòng),完成防火墻的管理工作。這部分的工作也是比較大的。象防火墻可以允許用戶用 ssh登錄,但卻不可能允許直接返回root shell(太危險(xiǎn)了),于是就必須開發(fā)一個(gè)安全的shell作為第一重接口,這樣,開發(fā)者就相當(dāng)于自已開發(fā)了一個(gè)BASH一類的解釋程序了。對(duì)遠(yuǎn)程訪問的安全控制是防火墻的一處重點(diǎn),常常要結(jié)合管理機(jī)限制,IP/MAC限制,密碼、證書認(rèn)證等多重安全手段。否則,否許所有人都試圖登錄防火墻,防火墻本身就很危險(xiǎn),根本談不上網(wǎng)絡(luò)的安全性。
????完成以上的工作后,再完成最先談到的web-ssl管理界面,或者是delphi(或C++)的客戶端管理工具。防火墻就基本上成形了,區(qū)別只在于用戶是不是覺得你的管理工具好用不好用而已。(許多程序員認(rèn)為防火墻工程不大,其實(shí)是他們的腦海中以為防火墻的研發(fā)只有這個(gè)圖形管理界面一項(xiàng)而已)。但即使這樣,作為防火墻的研發(fā)工程還遠(yuǎn)遠(yuǎn)沒有完成。開發(fā)者常常還必須向防火墻添加VPN(這也是一個(gè)巨大的工程),代理服務(wù)器(如是要加,就要寫多種協(xié)議的代理服務(wù)器),如PPPOE撥號(hào),是否還要加會(huì)話認(rèn)證;以及HA和負(fù)載平衡,以及支持透明模式接入;是否支持外部帳號(hào)管理,等等。
????前文這些工作終于都完成了,大概可以松一口氣交功課了吧?的確是這樣,假如您不介意你的防火墻有BUG 的話!否則,這個(gè)工程頂多只完成了一半。下面的工作就是編寫測(cè)試實(shí)例進(jìn)行測(cè)試。硬件防火墻由于對(duì)軟件硬化處理,而且長(zhǎng)時(shí)間無間斷運(yùn)行,因此,對(duì)軟件的質(zhì)量要求非常高。測(cè)試者至少要編寫以下三種測(cè)試實(shí)例進(jìn)行測(cè)試:1)程序中是否有內(nèi)存對(duì)象沒有清除;程序中殘留有對(duì)沒有clear是經(jīng)常的事,象windows 的程序就有這個(gè)毛病,所以windows 開了一段時(shí)間后就要重啟以便空出內(nèi)存;在防火墻中這個(gè)要求嚴(yán)格得多,一個(gè)半個(gè)的對(duì)象殘留對(duì)普通的軟件項(xiàng)目沒什么大不了的,但對(duì)于防火墻是致命的;防火墻的系統(tǒng)資源會(huì)在很短的時(shí)間內(nèi)就完全被這個(gè)BUG吃光。2)使用防火墻的管理工具生成每指定的政策實(shí)例時(shí),是否做到該放行的包放行,不該放行的包不放行;3)防火墻的極限工作條件;也不是如最大會(huì)話這樣的測(cè)試,這些需要專門的測(cè)試工具如smartbit;高性能的防火墻還需要外包測(cè)試,因?yàn)樵O(shè)備太貴。如果防火墻集成了如VPN,IDS,防病毒等功能,還必須進(jìn)一步編寫測(cè)試實(shí)例,測(cè)試在啟動(dòng)這些功能時(shí)防火墻的其他性能的下降情況。
????防火墻軟件系統(tǒng)的測(cè)試是一項(xiàng)最耗時(shí)最耗力的工作,占了整個(gè)開發(fā)成本至少一半以上,任何一個(gè)測(cè)試通不過,都要重新debug,重新測(cè)試,直到測(cè)試完全通過為止。如果一個(gè)模塊測(cè)試返工三次就通過,那個(gè)程序員一定是很優(yōu)秀的;如果通過六七次,實(shí)在很正常;就算十次才通過,也不算是丟臉的。在這種反反復(fù)復(fù)的工作中,開發(fā)者就會(huì)發(fā)現(xiàn),象前文說的那樣把程序分成幾個(gè)獨(dú)立的層面分別開發(fā),分別測(cè)試,文檔完整,具有無可比擬的優(yōu)勢(shì)。否則,這樣的開發(fā)工程那怕一千人做,做一百年都做不完。
????只有完成測(cè)試工作,防火墻就算過關(guān)了。整個(gè)工程100人如果能夠在一年里做完,就要謝天謝地了。開發(fā)一個(gè)企業(yè)級(jí)防火墻需要上千萬人民幣,各位朋友現(xiàn)在是不是理解一點(diǎn)了?同樣,在幾年前幾個(gè)人做個(gè)管理界面調(diào)用ipchains,當(dāng)然也是一個(gè)防火墻,的確也不是弄虛作假。只不過,在于各個(gè)廠商的選擇而已。
?
為什么實(shí)現(xiàn)千兆防火墻很困難- -
??????????????????????????????????????
千兆防火墻的代表產(chǎn)品包括Netscreen的5000系列防火墻,以及Nodia-CheckPoint的IP720以上的產(chǎn)品。這種防火墻的特點(diǎn)是網(wǎng)
絡(luò)吞吐性能要求高(即帶寬要求高),普通的硬件主板不能承受,市場(chǎng)出貨量又少。因此,在世界上能夠?qū)崿F(xiàn)的廠家很少,而且必須是世界級(jí)的進(jìn)行市場(chǎng)推廣的公司
才能推出真正的千兆防火墻。其他的,即使是名為千兆,實(shí)際上也只是假千兆,說穿了就是把千兆卡用到百兆防火墻的內(nèi)核上,實(shí)際上達(dá)不到千兆性能。要了解個(gè)中
因由,首先要了解防火墻的工作原理。
千兆防火墻的代表產(chǎn)品包括Netscreen的5000系列防火墻,以及Nodia-CheckPoint的IP720以上的產(chǎn)品。這種防火墻的特點(diǎn)是網(wǎng)絡(luò)吞吐性能要求高(即帶寬要求高),普通的硬件主板不能承受,市場(chǎng)出貨量又少。因此,在世界上能夠?qū)崿F(xiàn)的廠家很少,而且必須是世界級(jí)的進(jìn)行市場(chǎng)推廣的公司才能推出真正的千兆防火墻。其他的,即使是名為千兆,實(shí)際上也只是假千兆,說穿了就是把千兆卡用到百兆防火墻的內(nèi)核上,實(shí)際上達(dá)不到千兆性能。要了解個(gè)中因由,首先要了解防火墻的工作原理。
????大家都知道,防火墻的工作核心其實(shí)就是對(duì)IP包頭與預(yù)定政策的匹配控制。防火墻在工作的時(shí)侯,首先從內(nèi)存讀出政策鏈的第一條放進(jìn)寄存器,然后經(jīng)系統(tǒng)總線(pci0),再經(jīng)pci-pci橋,再經(jīng)pci1到pci網(wǎng)卡讀取IP包的頭信息,把它與寄存器中的政策進(jìn)行匹配,然后決定該IP包的處理。一來一去需要兩次經(jīng)過PIC總線。如果IP包比較大,那么這個(gè)包頭信息與包的大小比較就相對(duì)小得多,這時(shí)侯系統(tǒng)帶寬的瓶頸就是網(wǎng)卡的內(nèi)存暫存能力,也就是我們所說的百兆網(wǎng)卡和千兆網(wǎng)卡的區(qū)別,或者稱為線速的限制(wirespeed).但如果IP包很小,那么IP包頭所占的比例就相當(dāng)高,這時(shí),瓶頸就是PCI總線的交換能力了。
????任何來往于該P(yáng)CI的其他傳輸,都將由于總線爭(zhēng)奪而受到限制。在這一數(shù)據(jù)交換中,數(shù)據(jù)通過 Hubink,從ICH(I/O Controller Hub))到MCH(Memory Controller Hub)的傳輸有四次,經(jīng)過PCI總線的傳輸有兩次。由于HubLink的最大數(shù)據(jù)吞吐量是266MB,約2.2Gbps;但由于32位PCI總線以 33MHz運(yùn)行,所以數(shù)據(jù)傳輸率被限制到1.06Gbps左右。而且還要連接運(yùn)行各種系統(tǒng)數(shù)據(jù)交換。由于PCI總線的帶寬限制,PCI網(wǎng)卡永遠(yuǎn)也不能實(shí)現(xiàn)真正的全雙工的2Gbps帶度,最高理論速度是單向1Gbps,而實(shí)際達(dá)到的不超過一半,即500M。
????換句話說,對(duì)于硬件確定的系統(tǒng),每秒能夠處理IP包的數(shù)量是一個(gè)相對(duì)的常數(shù)。這個(gè)常數(shù)與CPU處理能力和寄存器數(shù)目,以及系統(tǒng)總線的交換速度形成的整體能力密切相關(guān)。對(duì)于使用PIII處理器和 X86服務(wù)器主板(或工控主板,32位PCI總線)的防火墻,這個(gè)數(shù)字大致在五十萬到一百萬之間。(注意不要把它和最大的會(huì)話保持這個(gè)標(biāo)稱參數(shù)混淆,最大會(huì)話主要與系統(tǒng)的可分配內(nèi)存有關(guān)系)。因此,基于Intel X86主板的防火墻的極限吞吐量在IP包大小為512比特時(shí),大致是三百兆左右。顯然,這個(gè)吞吐能力很符合百兆防火墻的環(huán)境,也符合低流量的千兆網(wǎng)環(huán)境的要求。但對(duì)于高流量的千兆網(wǎng),就無能為力了,必須在硬件上整體改進(jìn)才可能滿足這個(gè)階梯的升級(jí)要求。
????從前文也可以看出,防火墻的吞吐量是與IP包的大小密切相關(guān)的,所以談?wù)撏掏铝咳绻撾x包的大小是毫無意義的,任何防火墻都可以達(dá)到百兆線速,只不過是在包大到什么程度才能達(dá)到線速而已。另一方面,Intel X86主板架構(gòu)的服務(wù)器,即我們通常說的英特服務(wù)器,ASIC服務(wù)器(冗余指令集服務(wù)器),或PC服務(wù)器盡管不能完全滿足千兆環(huán)境的防火墻吞吐要求,但一般的千兆環(huán)境還是可以應(yīng)付的。因?yàn)橐蕴W(wǎng)中的設(shè)備不止防火墻一個(gè),還有交換機(jī)、路由器等等,這些產(chǎn)品全部都可以形成瓶頸,因此,一個(gè)局域網(wǎng)段的極限流量不是它的線速,而大約是線速的25%以下。即千兆約250兆,百兆約25兆??紤]到目前國(guó)內(nèi)一般千兆網(wǎng)的實(shí)際流量都不高(很少超過十兆的),所以這種基礎(chǔ)的防火墻還是可以承擔(dān)一般千兆網(wǎng)的流量要求的。但如果千兆干網(wǎng)達(dá)到100兆以上流量,幾個(gè)千兆口累加的吞吐量就超過了這種防火墻的內(nèi)部極限,這種防火墻就會(huì)大量丟包,成為網(wǎng)絡(luò)系統(tǒng)的瓶頸了。
????因此,要克服這個(gè)瓶頸,就只有一個(gè)辦法,提高系統(tǒng)每秒能夠匹配的IP包的能力。其中的關(guān)鍵是擴(kuò)寬PCI 總線的交換速度,反而CPU速度并不是系統(tǒng)的瓶頸,相對(duì)而言,今天的CPU能力大得驚人,處理防火墻過濾如同牛刀殺雞,所以大量防火墻把多余的處理能力用到VPN的強(qiáng)密解密處理上。而PCI速度實(shí)際上從問世到今天,也已經(jīng)從33M提升到133M,只是與CPU的摩爾速度相比,顯得慢得多了,偏偏一個(gè)桶能裝的水是以最短的桶條來衡量的。到今天,要解決硬件瓶頸,已經(jīng)形成了幾種相對(duì)可行的方案。
????一種就是使用專門設(shè)計(jì)的多總線服務(wù)器。如Nokia IP740雖然也是X86,但內(nèi)置三條PCI總線,這樣就可以提高防火墻的極限吞吐量,滿足一般的千兆環(huán)境。第二種是使用專門的處理插卡,換方之,就是把千兆的網(wǎng)卡和專門的過濾處理器做到一起,形成新的千兆網(wǎng)卡,大部分工作無需再經(jīng)PCI總線到CPU才返回,直接在PCI1就交換完畢了。這是 CheckPoint曾經(jīng)使用的方法。第三種方法與第二種相似,所不同的不是使用專門的PCI集成網(wǎng)卡,而是使用一個(gè)前置在Pci1總線上的單片機(jī),直接處理防火墻的過濾轉(zhuǎn)發(fā)要求。這樣同樣可以克服總線限制。使用這種方法的就是著名的netscreen公司的ASIC處理器。最后一種辦法目前仍沒有確定可行。就是使用英特的NP處理器。它的缺點(diǎn)是把整個(gè)防火墻變成了一個(gè)過濾器??墒欠阑饓﹄m然主要工作是過濾轉(zhuǎn)發(fā),但并不是過濾轉(zhuǎn)發(fā)就是防火墻,其他功能也是很重要的。否則就與路由器沒有什么區(qū)別了。另一個(gè)簡(jiǎn)單的辦法就是使用RISC-SCSI的架構(gòu),也即通常所說的高檔UNIX主機(jī),由于使用64位總線,也是可以克服32位PCI總線形成的瓶頸;這也幾乎是普通防火墻廠商滿足千兆要求的唯一辦法了,就是把防火墻軟件裝到UNIX主機(jī)上面,成本可想而知。
????無論是那一種方式,無不與一定量的市場(chǎng)需求密切相關(guān)。設(shè)計(jì)定制專門的硬件成本很高,動(dòng)輒以千萬美元計(jì)算,任何公司都不可能為區(qū)區(qū)一百幾十臺(tái)的出貨量去搞什么專門的硬件。而且,千兆防火墻需求量只是百兆防火墻的幾十分之一(只有敗家子式的蠢才才會(huì)清一色用千兆防火墻),這就決定了即使是年出貨量上千臺(tái)的防火墻生產(chǎn)商也不能承受定制專門的千兆級(jí)硬件的成本。要知道,即使是盡得中國(guó)官方采購(gòu)天時(shí)的天融信也遠(yuǎn)達(dá)不到這個(gè)出貨水平。所以,世界上除非是在全世界范圍內(nèi)成功銷售自已產(chǎn)品的公司,否則,推出真正的千兆防火墻是非常困難的。除非出現(xiàn)64位的PCI總線,否則百兆和千兆就是一個(gè)難以超越的等級(jí);反之,一旦64位總線成為主流,那時(shí)千兆就象今天的百兆和十兆一樣,很容易就成為一個(gè)可以自動(dòng)適應(yīng)的網(wǎng)絡(luò)帶寬等級(jí)。到那時(shí),瓶頸制約的就是萬兆了。不過說老實(shí)話,除非是實(shí)時(shí)看高清晰度電影和電視轉(zhuǎn)播,否則我的想像力根本想不出拿著萬兆到底干什么好。
????目前英特正在研發(fā)新一代的網(wǎng)絡(luò)系統(tǒng)總線CSA,(傳輸流架構(gòu)),這一接口的投入,將為L(zhǎng)OM(LAN on Motherborad)打下基礎(chǔ)。介時(shí),國(guó)產(chǎn)千兆防火墻產(chǎn)品就可以無需特別定制的硬件而揚(yáng)帆四海了。
?
為什么子網(wǎng)分隔是至關(guān)重要的安全措施- -??
????????????????????????????????????
有些單位在把局域網(wǎng)最終連上互聯(lián)網(wǎng)時(shí),考慮到的安全措施就是在網(wǎng)關(guān)上加一個(gè)防火墻。顯然,這是很必要的,但光在內(nèi)網(wǎng)外網(wǎng)之間進(jìn)行過濾,實(shí)際上是很不夠的,對(duì)內(nèi)部組網(wǎng)進(jìn)行合理的邏輯、物理的分割,要比單純購(gòu)買一個(gè)網(wǎng)關(guān)防火墻更為重要。
有些單位在把局域網(wǎng)最終連上互聯(lián)網(wǎng)時(shí),考慮到的安全措施就是在網(wǎng)關(guān)上加一個(gè)防火墻。顯然,這是很必要的,但光在內(nèi)網(wǎng)外網(wǎng)之間進(jìn)行過濾,實(shí)際上是很不夠的,對(duì)內(nèi)部組網(wǎng)進(jìn)行合理的邏輯、物理的分割,要比單純購(gòu)買一個(gè)網(wǎng)關(guān)防火墻更為重要。
????很多用戶在購(gòu)買防火墻時(shí)常常以局域網(wǎng)內(nèi)有多少電腦作為購(gòu)買網(wǎng)關(guān)防火墻的重要指標(biāo),其實(shí)這是一個(gè)很大的誤會(huì)。外網(wǎng)接口與內(nèi)網(wǎng)接口實(shí)在是不一樣的。內(nèi)網(wǎng)通常是局域網(wǎng)的百兆接口,而外網(wǎng),一般公司的真正可用帶寬通常只有幾兆,象ADSL用戶,其實(shí)只是500K左右;就算是寬帶LAN的用戶,表面看來是100兆接入,其實(shí),在公共出口出也只是幾兆的帶寬。所以,單純用作上網(wǎng)防火墻的話,無論是國(guó)產(chǎn)還是進(jìn)口的產(chǎn)品,根本不存在性能會(huì)不夠的情況。僅僅是因?yàn)?#xff0c;僅僅使用一個(gè)單進(jìn)單出的防火墻在網(wǎng)關(guān)處把關(guān)是遠(yuǎn)遠(yuǎn)不夠的,使用防火墻對(duì)內(nèi)部網(wǎng)進(jìn)行分隔才是最根本的解決之道。
????實(shí)事求事地說,防火墻并不能保障企業(yè)的網(wǎng)絡(luò)安全,僅僅是減少了發(fā)生危險(xiǎn)的機(jī)會(huì),并且在險(xiǎn)發(fā)生的時(shí)侯能夠加以控制。這有點(diǎn)象造船,僅僅讓船浮起來不夠,船的生存力取決于"萬一"漏水后能有多大的浮航機(jī)會(huì),把船艙分隔成若干個(gè)水密艙可以說是造船業(yè)上最重大的發(fā)明(也是中國(guó)人自已的發(fā)明,據(jù)說得益于古代中國(guó)人使用竹子做船的啟發(fā))。用戶使用防火墻保護(hù)企業(yè)網(wǎng)絡(luò),不就是為了防這個(gè)"萬一"嗎?把企業(yè)網(wǎng)絡(luò)劃分成一個(gè)個(gè)的子網(wǎng),通過防火墻控制它們間的訪問,就好象把船分隔成若干個(gè)水密艙,即使某一網(wǎng)段被成功入侵,(這種情況遲早會(huì)發(fā)生),企業(yè)管理員也可以足夠的時(shí)間作出反應(yīng)和處理;最起碼可以把損害控制在有限的范圍。
????現(xiàn)在的網(wǎng)絡(luò)入侵手段是很多的,沒有防火墻無疑是自殺,有了防火墻也不能說就已經(jīng)是保險(xiǎn)。設(shè)想一下,郵件可以越過防火墻,如果某個(gè)用戶不小心激活了某個(gè)郵件中的木馬,防火墻也就失去了效用;或者單位里有些部門自已可以撥號(hào)上網(wǎng),他們自已上網(wǎng)的電腦被沖擊波感染了,然后就可以成為在局域網(wǎng)內(nèi)自由傳播的源頭,這時(shí)防火墻同樣失去了作用;或者是部分員的電腦沒有打補(bǔ)丁,僅僅是上網(wǎng)瀏覽就感染了尼姆達(dá)病毒,如果沒有作網(wǎng)絡(luò)分隔,同樣是會(huì)迅速在企業(yè)網(wǎng)內(nèi)擴(kuò)散。......
????因此說,企業(yè)對(duì)內(nèi)部進(jìn)行合理的網(wǎng)絡(luò)分隔,是比單純?cè)O(shè)一個(gè)網(wǎng)關(guān)防火墻重要得多的安全措施。這還沒有包括企業(yè)本身特殊的安全要求,如財(cái)務(wù)、人資、關(guān)鍵技術(shù)資料、合同等部門,相信不是所有人都希望完全透明公開的。企業(yè)防火墻正是為此可造,而不是僅僅為了上網(wǎng)而用的。
????筆者認(rèn)為,局域網(wǎng)內(nèi)電腦在50臺(tái)左右是否需要進(jìn)行子網(wǎng)分隔的臨界點(diǎn),同時(shí)也是能否使用代理服務(wù)器的臨界點(diǎn)。在50臺(tái)電腦以下的網(wǎng)絡(luò)規(guī)模,可以使用代理服務(wù)器如諾頓或ISA2000;或者是SOHU/SMB類型的防火墻,如Fortigate 300;超過50臺(tái)電腦,繼續(xù)使用代理服務(wù)器,或者不進(jìn)行子網(wǎng)分隔是非常不明智的。
????用戶在規(guī)則子網(wǎng)分隔時(shí),也要注意另一個(gè)不正確的取向,也就是子網(wǎng)分隔也并不是越細(xì)越好的。過分的分割,除了增加管理的復(fù)雜程度,和增加用戶布署成本以外,沒有帶外太大的好處。因此,用戶可以按自已的網(wǎng)絡(luò)規(guī)模,分割成干個(gè)數(shù)十到100臺(tái)主機(jī)一個(gè)的子網(wǎng)區(qū)間。一般的防火墻除外網(wǎng)外還會(huì)有三個(gè)左右的自由定義接口,如果覺得不夠,可以考慮使用小型的防火墻分隔電腦數(shù)量不多的子網(wǎng)(如財(cái)務(wù)這類只有幾臺(tái)電腦卻又不得不分割的子網(wǎng)),如果采購(gòu)的防火墻支持的話,還可以采用增加網(wǎng)絡(luò)接口的辦法。但不要采用把防火墻當(dāng)成廉價(jià)交換機(jī)的做法,一味用防火墻代替所有的交換機(jī)和路由器。畢竟同等吞吐量的防火墻要比交換機(jī)或路由器貴得多,速度也要慢得多。
?
?
為什么說國(guó)產(chǎn)防火墻不可靠- -????
??????????????????????????????????
只要接觸信息安全行業(yè),總能聽到、看到大量如此傳播的信息,就是國(guó)產(chǎn)防火墻都是不行的,只有進(jìn)口產(chǎn)品才是合格的。可事情真的是這樣嗎?我把這些文章都仔細(xì)讀一下,卻發(fā)現(xiàn)沒有一份是詳實(shí)有據(jù)地說明國(guó)產(chǎn)防火墻是不可靠的,充其量只是局部現(xiàn)象,編編成為國(guó)產(chǎn)防火墻不可靠的證明,這到底是什么回事?
只要接觸信息安全行業(yè),總能聽到、看到大量如此傳播的信息,就是國(guó)產(chǎn)防火墻都是不行的,只有進(jìn)口產(chǎn)品才是合格的??墒虑檎娴氖沁@樣嗎?我把這些文章都仔細(xì)讀一下,卻發(fā)現(xiàn)沒有一份是詳實(shí)有據(jù)地說明國(guó)產(chǎn)防火墻是不可靠的,充其量只是局部現(xiàn)象,編編成為國(guó)產(chǎn)防火墻不可靠的證明,這到底是什么回事?
????象有一份已經(jīng)碾轉(zhuǎn)轉(zhuǎn)貼了三年多的文章,名為《我眼中的某國(guó)產(chǎn)防火墻》,作者顯然是一位售后工程師,說出了他看見國(guó)產(chǎn)防火墻內(nèi)部后的感受。這位先生沒有點(diǎn)名(恐怕這是中國(guó)傳媒的最大特點(diǎn),批評(píng)時(shí)不敢點(diǎn)名,全是某人,某廠,某公司,某局,......,在國(guó)個(gè)外,不敢點(diǎn)名的批評(píng)是造謠,是犯法的),所以很容易被所有讀者理解成這就是指所有的國(guó)產(chǎn)防火墻,(這偏偏也是中國(guó)人的習(xí)慣思維),他指出他所經(jīng)手的這款防火墻,實(shí)際上是一臺(tái)中檔PC,裝個(gè)RedHat Linux后弄出來的。作為過來人,我可以理解一位初出道的大學(xué)生剛剛理解某樣開始以為神秘莫測(cè)的東西時(shí),突然感到的那種"噢,原來只是這樣"的心情;但同時(shí)也要指出,這是在三年多以前,那時(shí)侯的國(guó)產(chǎn)防火墻技術(shù)和今天如天壤之別。而且,從描述看,那臺(tái)防火墻明顯是裝機(jī)出貨的產(chǎn)品,即每出一臺(tái)防火墻就裝 Linux裝apache......這樣一臺(tái)臺(tái)出貨的產(chǎn)品,而不是總體研發(fā)批量生產(chǎn)的防火墻。
????另一份類似的文章,那是重慶《電腦報(bào)》在今年四月份左右出版的名為《看不懂的硬件防火墻》,同樣轉(zhuǎn)得滿世界都是。別以為此文說的是硬件防火墻,實(shí)際上說的仍然是國(guó)產(chǎn)的硬件防火墻。與前一篇的作者親歷親聞相比,該文作者顯得似內(nèi)行又似外行。說他外行,是因?yàn)樗C明國(guó)產(chǎn)防火墻不可靠的理由,是因?yàn)樗l(fā)現(xiàn)國(guó)產(chǎn)防火墻中用的是他熟悉的CPU(英特),(也許還有硬盤網(wǎng)卡什么的),于是他一算:俺DIY一臺(tái)PC才多少錢?媽的這防火墻瞧著不也象俺家的電腦嗎?干嗎賣這么貴?他根本沒有算軟件的錢!!要知道,防火墻主要價(jià)值是軟件,對(duì)于防火墻生產(chǎn)商來說(中間商不算),硬件甚至是可以白送的,只要軟件賣得物有所值!但他有些地方又說得象是內(nèi)行(估計(jì)是抄回來的),說:網(wǎng)關(guān)產(chǎn)品是最關(guān)鍵的地方,需要超級(jí)穩(wěn)定,國(guó)外都是使用芯片級(jí)技術(shù)實(shí)現(xiàn)硬件防火墻的;象國(guó)產(chǎn)防火墻使用LInux是不可靠的。這樣,這位作者就得出結(jié)論,國(guó)產(chǎn)防火墻都沒有使用他說的芯片級(jí)防火墻技術(shù),都是騙人的。
????這樣一份似是而非的文章登在全國(guó)知名的IT大報(bào)上,然后在各種媒體包括互聯(lián)網(wǎng)傳來傳去,會(huì)造成什么影響,可想而知。為什么我說他是似是而非呢?就因?yàn)槭澜缟喜捎?#34;芯片級(jí)防火墻技術(shù)"的,只有一家,就是Netscreen,說穿了,就是ASIC。但我想說的是,世界上除了Netscreen還有上百家的知名防火墻,包括PIX,CISCO還有上百家防火墻廠商,他們都沒有"芯片級(jí)"什么玩意,包括象 Netsonic(19萬臺(tái)出貨量),watchguard這些知名的防火墻,使用的都是Linux;幾乎所有的廠商,或多或少都是基于X86主機(jī)架構(gòu)的。而這位作者所說的話,實(shí)際上相當(dāng)于這樣的意思:只有Netscreen才是合格的防火墻,其他的都是騙人的,(所以我猜說原話的是一個(gè) Netscreen的代理商一類,Netscreen自已是不會(huì)這樣說話的)。
????以上兩份是最具代表性的兩份文章。那么國(guó)產(chǎn)防火墻的真實(shí)情況到底如何呢?
????應(yīng)該看到,國(guó)產(chǎn)防火墻是一個(gè)很廣泛的概念,可以說大林子里什么鳥都有。因此很難用一句國(guó)產(chǎn)防火墻是好的還是壞的、可靠還是不可靠以蔽之的。事實(shí)上,目前所謂的國(guó)產(chǎn)防火墻,至少超過一半以上是貼牌的進(jìn)口防火墻。舉個(gè)例子,如果用戶注意一下,有許多"國(guó)產(chǎn)"防火墻的產(chǎn)品說明中常常有"ASIC",防病毒這類的話,這就說明這些防火墻很可能就是用Fortigate來貼牌的,因?yàn)?#xff0c;ASIC是Netscreen 的專利硬件技術(shù),不可能被國(guó)內(nèi)產(chǎn)品商引用的。這種防火墻充其量只是價(jià)格混亂,服務(wù)不能保障,而不會(huì)比原裝原廠的產(chǎn)品不穩(wěn)定,或者更便宜。
????中國(guó)目前的軟件業(yè)仍是一個(gè)個(gè)人英雄主義時(shí)代,很少有超過十人的團(tuán)隊(duì)可以有效合作的。這大大限制了國(guó)內(nèi)開發(fā)象高級(jí)防火墻這樣復(fù)雜的軟件項(xiàng)目。早幾年,當(dāng)用戶要求還相對(duì)簡(jiǎn)單時(shí),很多公司使用將Linux(或BSD)的內(nèi)置防火墻管理工具,一般是 ipchains,用Web+ssl調(diào)用或者是遠(yuǎn)程服務(wù)管理的方式,開發(fā)出第一代的簡(jiǎn)易型防火墻。由于利潤(rùn)的確可觀(可以想像幾千元請(qǐng)幾個(gè)"高手"奮戰(zhàn)幾個(gè)月的php編程,卻可以賣每臺(tái)十幾萬元是什么滋味),許多原來只做個(gè)人電腦的廠商,也隨便買個(gè)不知名的產(chǎn)品貼上自已的牌子,然后利用自已的渠道和品牌 "進(jìn)軍"防火墻市場(chǎng),一躍而為前幾名的國(guó)產(chǎn)防火墻廠商。上文《我眼中的國(guó)產(chǎn)防火墻》相信就是這一代產(chǎn)品。但這個(gè)等級(jí)的防火墻今天在中國(guó)已經(jīng)沒有生存的余地,(太落后了),有些廠家雖然靠這個(gè)級(jí)次的產(chǎn)品出了名,但現(xiàn)在能夠提供的卻是個(gè)人防火墻,或者就是干脆找個(gè)進(jìn)口防火墻貼個(gè)牌(OEM),繼續(xù)賺剩下的錢。剔除掉這一部分的廠家后,按保守估計(jì),中國(guó)目前真正擁有知識(shí)產(chǎn)權(quán)的企業(yè)級(jí)防火墻生產(chǎn)商,不會(huì)超過十家,甚至不超過五家。
????開發(fā)一個(gè)完整的企業(yè)級(jí)防火墻產(chǎn)品,從規(guī)劃、設(shè)計(jì)到開發(fā)、軟件硬件的定制、優(yōu)化,到完成各種測(cè)試,投資遠(yuǎn)遠(yuǎn)超過《看不懂的硬件防火墻》作者的想象,至少需要1000萬元人民幣。在目前中國(guó)的軟件產(chǎn)業(yè)水平而言,接近于是最大、最復(fù)雜的軟件項(xiàng)目。這也是為什么擁有自已開發(fā)的國(guó)產(chǎn)防火墻如此少的原因。這些防火墻與大量如netsonic等的進(jìn)口防火墻的方案、架構(gòu)甚至軟件成熟度都是非常接近的。事實(shí)上,除非英特處理器不穩(wěn)定,除非PC服務(wù)器不穩(wěn)定,除非Linux不穩(wěn)定,否則,這些防火墻不存在不穩(wěn)定不可靠的地方。這不同于依靠個(gè)人高手開發(fā)的防火墻。而兩種防火墻的不同,很多時(shí)侯看看操作界面和命令行接口就可以看出其成熟度的差別。這種防火墻在百兆環(huán)境,與進(jìn)口產(chǎn)品相比,不會(huì)有任何問題。
????另一方面,由于我國(guó)市場(chǎng)出貨量的限制,我國(guó)的國(guó)產(chǎn)防火墻廠商極難定制自已的專用硬件。這就極大的抑制了國(guó)產(chǎn)防火墻在千兆級(jí)產(chǎn)品的發(fā)展?jié)摿?。因?yàn)樵谇д准?jí)防火墻,依靠的主要已經(jīng)不是軟件功能,而是硬件系統(tǒng)的潛能,象眾所周知的PCI系統(tǒng)總線對(duì)吞吐量的限制。因此,國(guó)產(chǎn)防火墻目前基本上不可能推出自已的千兆級(jí)專用硬件,充其量只能使用通用的服務(wù)器,象Nokia的IP系列。這就是目前國(guó)產(chǎn)千兆防火墻性能不及使用專用硬件的進(jìn)口防火墻的原因,但就穩(wěn)定性和可靠性而已,兩者仍是處于同一個(gè)等級(jí)的。
????因此,國(guó)產(chǎn)防火墻,特別是百兆防火墻是完全可以信賴的,部分產(chǎn)品的性能價(jià)格比明顯超過進(jìn)口品牌。如果用戶對(duì)使用國(guó)產(chǎn)防火墻有過不愉快的經(jīng)歷,也只能說是選錯(cuò)了廠家(可以對(duì)號(hào)入座看看是上述那一類國(guó)產(chǎn)防火墻),而不能稱為國(guó)產(chǎn)防火墻不可靠。所以,國(guó)產(chǎn)防火墻不可靠,更多是一個(gè)公關(guān)形象的問題。但這恐怕不僅僅是國(guó)產(chǎn)防火墻,而是國(guó)產(chǎn)的高科技產(chǎn)品,整體公關(guān)形象都不容樂觀。
?
?
IDS入侵檢測(cè)的種類和特點(diǎn)- -
??????????????????????????????????????
IDS入侵檢測(cè)的種類很多,遠(yuǎn)不象防火墻那樣顯得規(guī)整劃一。聲稱是IDS,其實(shí)并不是IDS的產(chǎn)品的產(chǎn)品還不少,有些還是知名的品牌。所以我們這里首先給IDS入侵檢測(cè)下一個(gè)定義,那就是通過可更新的入侵特征匹配,實(shí)時(shí)地報(bào)告所有的入侵事件,并可與相關(guān)的安全產(chǎn)品協(xié)同終止入侵的產(chǎn)品??梢?#xff0c;IDS的核心是可更新的入侵特征,實(shí)時(shí)性,所有的事件,和其他產(chǎn)品的互動(dòng)等四個(gè)基本要素。
| ||||||||||||||||||||||||||||||||||||
轉(zhuǎn)貼:?zwwwxy.blogchina.com
總結(jié)
以上是生活随笔為你收集整理的防火墙、防病毒网关、IDS以及该类安全产品开发的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java基础视频教程 学习笔记
- 下一篇: 最新黑客攻防实战从入门到精通(第二版)_