基于PowerPC和嵌入式Linux的VPN網(wǎng)關(guān)設(shè)計(jì)
引言
因特網(wǎng)的迅速普及為企事業(yè)、政府、金融機(jī)構(gòu)等部門提供了更為迅捷經(jīng)濟(jì)的通信方式,提高了他們的工作和管理效率;但另一方面,日益不安全的網(wǎng)絡(luò)環(huán)境卻嚴(yán)重威脅到這些用戶的利益。如何保證公網(wǎng)上傳輸數(shù)據(jù)的安全,已成為一個(gè)迫切需要解決的問題。為此,需開發(fā)一種由VPN (Virtual Private Network,簡(jiǎn)稱VPN )安全網(wǎng)關(guān)、VPN 客戶端和VPN安全管理中心三部份組成的VPN安全系統(tǒng)。
目前,國(guó)內(nèi)大部分VPN 網(wǎng)關(guān)在硬件平臺(tái)上使用基于x86 CPU的商用工控機(jī)主板。由于商用工控機(jī)是為一般的工業(yè)控制而設(shè)計(jì)的,作為VPN網(wǎng)關(guān)使用時(shí),存在功能冗余、成本及可靠性難于控制等問題。因此,有必要自己設(shè)計(jì)一款性價(jià)比較高的硬件平臺(tái)供VPN網(wǎng)關(guān)使用。Motorola通信處理器PowerPC在通信業(yè)中使用廣泛,并具有良好的性價(jià)比,可以滿足VPN安全網(wǎng)關(guān)的設(shè)計(jì)需要。另外,安全產(chǎn)品涉及一個(gè)國(guó)家的主權(quán)和敏感的安全信息,作為保證安全極為重要的操作系統(tǒng)和加密算法應(yīng)該完全為自己掌握。因此,采用具有自主知識(shí)產(chǎn)權(quán)的操作系統(tǒng)和加密算法尤為重要。而L inux操作系統(tǒng)源代碼的開放性及其在網(wǎng)絡(luò)產(chǎn)品中的優(yōu)異表現(xiàn),使得我們可以用其構(gòu)建具有自主知識(shí)產(chǎn)權(quán)的VPN安全網(wǎng)關(guān)。
VPN概念
什么是VPN
VPN即虛擬專用網(wǎng),是通過一定的安全機(jī)制在公用的網(wǎng)絡(luò)如因特網(wǎng)中建立起與公網(wǎng)相對(duì)獨(dú)立和封閉的信息通道,以保護(hù)企業(yè)各子網(wǎng)之間、子網(wǎng)和移動(dòng)用戶之間、移動(dòng)用戶和服務(wù)器之間的通信數(shù)據(jù)的安全。VPN利用公網(wǎng)的資源,讓用戶擁有同專網(wǎng)相同的安全性,并享受因特網(wǎng)帶來的經(jīng)濟(jì)實(shí)惠和方便迅捷。
VPN如何保護(hù)通信安全
不同類型的VPN所采用的協(xié)議不同,使用的安全機(jī)制也不同。關(guān)于VPN的協(xié)議比較多,但目前最完善的、安全性最高的應(yīng)屬IPSec協(xié)議。它可使用CA 數(shù)字證書來實(shí)現(xiàn)通信雙方的身份認(rèn)證;使用對(duì)稱加密算法來對(duì)數(shù)據(jù)進(jìn)行加密,保證數(shù)據(jù)的安全性;使用單向散列函數(shù)對(duì)數(shù)據(jù)計(jì)算摘要,并對(duì)摘要進(jìn)行加密來保證數(shù)據(jù)的完整性。此外,VPN節(jié)點(diǎn)之間通信,不可能每次都手工配置密鑰,手工方式既不安全也不方便,可以采用因特網(wǎng)自動(dòng)密鑰交換協(xié)議來進(jìn)行密鑰的協(xié)商,設(shè)置每次會(huì)話密鑰的生命期,在快要結(jié)束生命期時(shí),自動(dòng)協(xié)商下一個(gè)會(huì)話密鑰。
當(dāng)企業(yè)虛擬專網(wǎng)建立時(shí),需要在各個(gè)子網(wǎng)的出口配置安全網(wǎng)關(guān)。安全網(wǎng)關(guān)負(fù)責(zé)對(duì)流出數(shù)據(jù)進(jìn)行加密和計(jì)算校驗(yàn)和,對(duì)進(jìn)入數(shù)據(jù)進(jìn)行檢驗(yàn)和解密,并實(shí)施訪問控制。VPN安全網(wǎng)關(guān)在其中具有舉足輕重的作用。比如,當(dāng)一臺(tái)主機(jī)與另外一臺(tái)主機(jī)通信時(shí),會(huì)首先啟動(dòng)IKE (自動(dòng)密鑰協(xié)商)進(jìn)程協(xié)商各種工作參數(shù),包括加密算法、驗(yàn)證算法、密鑰長(zhǎng)度、密鑰值等,并進(jìn)行雙向的身份認(rèn)證,所有這些成為一個(gè)安全關(guān)聯(lián)( Security Association) 。
VPN的使用
VPN安全網(wǎng)關(guān)與VPN Client軟件配合使用,通過靈活配置隧道策略,不僅可以解決通信的安全問題,還可以解決用戶對(duì)公司總部網(wǎng)絡(luò)的訪問授權(quán)問題。圖1 是一個(gè)VPN安全系統(tǒng)的典型網(wǎng)絡(luò)拓?fù)鋱D。
當(dāng)網(wǎng)關(guān)與網(wǎng)關(guān)相連時(shí),通過VPN管理中心或終端方式為需要相互通信的兩臺(tái)網(wǎng)關(guān)間配置對(duì)應(yīng)的隧道,位于兩臺(tái)私口后的主機(jī)就能通過加密隧道進(jìn)行通信,防止數(shù)據(jù)被丟失、篡改并保證數(shù)據(jù)的完整。
評(píng)論