在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于嵌入式Linux操作系統實現VPN安全網關的設計方案

電子設計 ? 來源:計算機工程與科學 ? 作者:梅挺, 俞力,羅萬伯 ? 2020-10-09 10:36 ? 次閱讀

隨著對因特網通信安全性需求的日益增加,VPN安全網關已廣泛應用于企事業單位。高安全性、可靠性和高性價比是提高VPN網關競爭力的有力手段。本文根據VPN的基本概念,提出了VPN安全網關設計方案、嵌入式Linux操作系統的構建方法,并簡述了硬件加密模塊的實現方法。

因特網的迅速普及為企事業、政府、金融機構等部門提供了更為迅捷經濟的通信方式,提高了他們的工作和管理效率;但另一方面,日益不安全的網絡環境卻嚴重威脅到這些用戶的利益。如何保證公網上傳輸數據的安全,已成為一個迫切需要解決的問題。為此,需開發一種由VPN (Virtual Private Network,簡稱VPN )安全網關、VPN 客戶端和VPN安全管理中心三部份組成的VPN安全系統。

目前,國內大部分VPN 網關在硬件平臺上使用基于x86 CPU的商用工控機主板。由于商用工控機是為一般的工業控制而設計的,作為VPN網關使用時,存在功能冗余、成本及可靠性難于控制等問題。因此,有必要自己設計一款性價比較高的硬件平臺供VPN網關使用。Motorola通信處理器PowerPC在通信業中使用廣泛,并具有良好的性價比,可以滿足VPN安全網關的設計需要。另外,安全產品涉及一個國家的主權和敏感的安全信息,作為保證安全極為重要的操作系統和加密算法應該完全為自己掌握。因此,采用具有自主知識產權的操作系統和加密算法尤為重要。而L inux操作系統源代碼的開放性及其在網絡產品中的優異表現,使得我們可以用其構建具有自主知識產權的VPN安全網關。

VPN概念

什么是VPN

VPN即虛擬專用網,是通過一定的安全機制在公用的網絡如因特網中建立起與公網相對獨立和封閉的信息通道,以保護企業各子網之間、子網和移動用戶之間、移動用戶和服務器之間的通信數據的安全。VPN利用公網的資源,讓用戶擁有同專網相同的安全性,并享受因特網帶來的經濟實惠和方便迅捷。

VPN如何保護通信安全

不同類型的VPN所采用的協議不同,使用的安全機制也不同。關于VPN的協議比較多,但目前最完善的、安全性最高的應屬IPSec協議。它可使用CA數字證書來實現通信雙方的身份認證;使用對稱加密算法來對數據進行加密,保證數據的安全性;使用單向散列函數對數據計算摘要,并對摘要進行加密來保證數據的完整性。此外,VPN節點之間通信,不可能每次都手工配置密鑰,手工方式既不安全也不方便,可以采用因特網自動密鑰交換協議來進行密鑰的協商,設置每次會話密鑰的生命期,在快要結束生命期時,自動協商下一個會話密鑰。

當企業虛擬專網建立時,需要在各個子網的出口配置安全網關。安全網關負責對流出數據進行加密和計算校驗和,對進入數據進行檢驗和解密,并實施訪問控制。VPN安全網關在其中具有舉足輕重的作用。比如,當一臺主機與另外一臺主機通信時,會首先啟動IKE (自動密鑰協商)進程協商各種工作參數,包括加密算法、驗證算法、密鑰長度、密鑰值等,并進行雙向的身份認證,所有這些成為一個安全關聯( Security Association) 。

VPN的使用

VPN安全網關與VPN Client軟件配合使用,通過靈活配置隧道策略,不僅可以解決通信的安全問題,還可以解決用戶對公司總部網絡的訪問授權問題。圖1 是一個VPN安全系統的典型網絡拓撲圖。

基于嵌入式Linux操作系統實現VPN安全網關的設計方案

當網關與Client相連時,遠程用戶通過因特網訪問公司總部時會首先通過VPN安全網關,安全網關會對用戶進行身份驗證、協商密鑰,最終建立安全隧道并實現訪問控制。不同的用戶可能有著不同的訪問權限。例如, Client1作為公司的主管,可以訪問服務器A、B、C,而Client2作為普通員工,只能訪問服務器A。通過中心管理員為不同的Client配置不同的策略,可以實現用戶訪問服務器的權限。此種應用適合移動用戶接入公司內網。

當網關與網關相連時,通過VPN管理中心或終端方式為需要相互通信的兩臺網關間配置對應的隧道,位于兩臺私口后的主機就能通過加密隧道進行通信,防止數據被丟失、篡改并保證數據的完整。

VPN安全網關設計方案概述

VPN系統體系結構

VPN的主要作用是采用加密、認證和網絡技術在公共互聯網上構建相互信任方之間的安全加密信息傳輸通道,以期達到專用網絡的效果。VPN網關在其中將發揮非常重要的核心作用。

由圖1可知,VPN網關工作在本地局域網及與其通信的遠程局域網的網關位置,具有加密和認證功能。相互信任的局域網間進行通信時,仍然使用互聯網作為中間信道。但是,通過VPN網關的加密功能確保信息在不安全的互聯網上流通時是密文形式。這樣,即便信息被截取,也無法偷窺或篡改其內容,保證通過互聯網連接的局域網間通信的安全性、機密性、可認證性和完整性等安全性能。

VPN安全網關的設計目標

(1) 完整實現IPSec協議簇,完全支持VPN的要求。

(2) 要建立在具有自主版權的、安全性完全控制在自己手中的內核操作系統之上。

(3) 要確保自身的安全、協議的安全和信息通道的安全。采用國密辦批準的加密算法,由硬件實現數據加解密。

(4) 要具有較高的性價比,滿足低端網絡的要求。明文吞吐率10Mbp s;啟用IPSec協議,以隧道方式加密傳輸時,吞吐率大于4Mbp s。

(5) 設計與實現要采用先進的硬、軟件技術和方法。

(6) 盡可能方便管理、靈活配置和界面友好。

技術思想

(1) 軟件: ①自主開發的嵌入式安全操作系統內核;②由于L inux OS的源代碼的開放性及其在網絡產品中的優異表現,因而可以用其構建具有自主知識產權的VPN安全網關(采用嵌入式L inux 2. 4. 4 For PowerPC,內核根據需要裁減,并加入相應的硬件驅動程序,完成對FlashMemory和DOC文件系統的支持) ;③網絡協議和IPSec協議層; ④數據加/解密算法由采用國密辦批準的硬件加密芯片SSF10B實現; ⑤管理系統層需支持手工和通過SMC (安全管理中心)配置IPSec策略。

(2) 硬件:根據設計要求,該VPN網關將用于10Mbp s以太網環境中,設計采用目前在通信業中使用較廣的Mo2torola通信處理器PowerPC MPC8xx作為主CPU,選用其中一款性價比較高的控制器MPC855T。在硬件平臺的設計中,本著滿足性能要求,保證高可靠性和高性價比的原則,采用有多種硬件選項的設計,來滿足設計要求。嵌入式L inux操作系統的構建

通常的嵌入式系統開發大致可以分為硬件設計、裝載或引導嵌入式系統、在嵌入式系統上建立開發平臺以及開發應用等四個步驟。

利用ppcboot引導

ppcboot是德國Denk軟件工程中心開發的引導程序,我們在研究開發中使用了其中的ppcboot-1. 1. 5作為開發藍本,對其代碼進行了修改,以滿足硬件設計的要求。

ppcboot源碼樹的目錄結構

CHANGELOG/ /記錄歷次版本升級時的修改內容

COPYING

CRED ITS

MAKEALL

Makefile/ /制作文件

README/ /必讀的文件

System. map/ /當編譯連接完成后,所生成的ppcboot二進

/ /制中所有函數、數據的地址信息

board/ /各種與板子硬件關聯的。 c模塊

common/ /一些通用ppcboot命令集的。 c模塊

config. mk

cpu/ /與MPC8xx硬件關聯的系統初始化。 c代碼

disk/ /磁盤分區支持

doc/ /技術文檔目錄

examp les/ /一些簡單的、無需操作系統的應用程序

fs/ /ppcboot中對文件系統的支持

include/ /頭文件

net/ /網絡協議支持

ppc PowerPC/ /處理器運行時環境支持

ppcboot/ / elf32格式的ppcboot二進制執行文件

ppcboot. bin/ / raw二進制格式的ppcboot執行文件

ppcboot. map/ / s2record格式的ppcboot執行文件

rtc/ /實時時鐘支持

tools/ /與ppcboot相關的一些工具軟件ppcboot的特點

經修改后, ppcboot-1. 1. 5 具有如下特性: ( 1 ) 支持bootm,直接從flash引導L inux,并提供軟件工具集,可構建出最終燒結用的影像; (2) 支持從doc或flash memory引導L inux,并提供工具集,可構建出最終燒結用的影像; (3) 板上flash /doc讀、寫、擦除功能; (4) 支持串行口kermit協議下載代碼或數據; (5) 支持scc1以太網口啟動tftp下傳數據:如內核、ramdisk、autoscrip t等影像; ( 6) 支持串行口srecord下載代碼或數據; (7) 支持autoscrip t; (8) 提供板上內存讀寫,格式化顯示,可進行簡單測試。

當完成ppcboot-1. 1. 5的改寫后,對其進行編譯,得到二進制的ppcboot. bin代碼,然后將其燒錄在板上的BOOTEPROM中,這樣就可以在上電后完成對系統的引導。

建立L inux開發平臺

修改和編譯嵌入式L inux內核

Linux內核有自己的結構體系,進程管理、內存管理和文件系統是其最基本的三個子系統。圖2 為L inux 內核的結構。圖中虛線框中部分可以看成是Linux內核的單內核結構,因此修改內核必須注意各子系統間的協調。

Linux開發平臺使用內核版本為2. 4. 4的PowerPC嵌入式L inux操作系統作為VPN 網關的基本軟件平臺。為了支持硬件平臺,需要對內核進行修改,并增加相應設備的驅動程序。

(1) 驅動程序列表。

DOC 驅動程序源碼: /home / sjw01 / linux/drivers/mtd /devices/ doc2000. c;

以太網驅動程序源碼: / home / sjw01 / linux/ arch /ppc /8xx _ io / enet_scc1. c fec. c;

RTC 驅動程序源碼: /home / sjw01 / linux/drivers/unis _ rtc / rtc8xx. h rtc8xx. c setrtc8xx. cMkaefile setrtc8xx;

串口驅動程序源碼: /home / sjw01 / linux/ arch /ppc /8xx_ io / uart. c;

flash memory 驅動程序源碼: /home / sjw01 / linux/drivers/mtd / map s/unis. c。

(2) 交叉編譯環境。

使用hardhat CDK2. 0作為開發工具,需將下面的路徑加入用戶環境變量$PATH 中: /op t/hardhat/devkit/ppc /8xx/bin; #export PATH = $PATH: /op t/hardhat/devkit/ppc /8xx/bin或編輯“。 bash_p rofile”文件的PATH行。對于應用軟件,一般情況下只要替換編譯器cc為ppc_8xx-gcc,重新編譯一下源代碼即可。構建目標文件系統

配置DOC或FlashMemory中的文件系統是件很講究的事情,主要是因為DOC /Flash容量有限,在保證正常功能的前提下,要盡可能地少占用資源。

總體上,文件分成如下幾類: (1)共享庫類:這類文件必不可少。(2) L inux/GNU系統實用工具:盡量用busybox、tinylogin代替,能減則減。(3)配置文件:多出現在/ etc下,不太占地方,但要注意協調關系。(4)用戶應用程序:編譯時盡量使用動態連接,編譯后strip一下,放到固定位置。

目標文件系統列表如表1所示。

所有配置文件、可執行文件、庫文件的位置均符合L inux操作系統的慣例。

IPSec實現中的硬件加密算法

在VPN安全網關中,加密算法的安全、高效,是VPN網關安全性和有效性的重要保證。為此,在設計中采用了一種硬件加密模塊的方式,使得我們的VPN網關可以在硬件上使用不同的加密算法。在我們的默認配置中,使用國密辦批準的分組加密算法芯片SSF10。

為了使用硬件加密模塊,需要在L inux內核的IPSec實現中添加和修改相應的代碼,下面對其簡單說明。由于IPSec實現在內核中的特殊位置,并且MPC855T的主頻較低(80MHz) ,采用訪問設備驅動文件的方式訪問硬件SSF10加密模塊會造成速率大幅降低。因此,我們采用I/O直接訪問硬件SSF10芯片。這需要將模塊驅動中的操作分散到IPSec實現的相關部分,替換原來的軟件加密算法。同理,可以使用硬件DES/3DES、硬件AES算法和其他國密辦批準的算法,用硬件實現數據加密。對IPSec的一個實現freeswan算法部分進行修改,使其可以實現硬件算法。與硬件加密算法有關的文件如下:

freeswan-1. 94 /klip s/net/ ip sec /Config. in;

freeswan-1. 94 / libdes/des_enc. c;

freeswan-1. 94 /klip s/net/ ip sec / ip sec_sa. h;

freeswan-1. 94 /klip s/net/ ip sec / ip sec_tunnel. c;

freeswan-1. 94 /klip s/net/ ip sec / ssf10. h;

freeswan-1. 94 /klip s/net/ ip sec / ip sec_init. c;

freeswan-1. 94 /klip s/net/ ip sec /pfkey_v2_parser. c;

freeswan-1. 94 /klip s/net/ ip sec_rcv. c。

完成修改后, 使用內核make menuconfig 命令, 選中Networking op tions→[* ] IPSEC: Use SSF10.。,重新編譯即可使用SSF10硬件算法模塊。

結束語

為了滿足VPN安全網關設計的目標,本文在基于Motorola PowerPC和嵌入式L inux的VPN網關設計中使用Motorola通信處理器PowerPC、采用L inux和加密算法,構建出了具有自主知識產權的VPN安全網關。理論分析表明,本文提出的VPN安全網關設計方案、嵌入式L inux操作系統的構建方法以及硬件加密模塊的實現方法能夠滿足10Mbp s的網絡環境中提供虛擬專用網的安全服務。但是,由于其定位在低端,不適合在100Mbp s的網絡環境中使用。如果要在100Mbp s的環境中使用VPN網關,就要考慮使用基于PowerPCMPC82xx的硬件平臺。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19384

    瀏覽量

    230512
  • 嵌入式
    +關注

    關注

    5088

    文章

    19158

    瀏覽量

    306496
  • Linux
    +關注

    關注

    87

    文章

    11329

    瀏覽量

    209972
  • 網關
    +關注

    關注

    9

    文章

    4561

    瀏覽量

    51311
  • VPN
    VPN
    +關注

    關注

    4

    文章

    294

    瀏覽量

    29785
收藏 人收藏

    評論

    相關推薦

    如何利用PowerPC和嵌入式Linux設計VPN網關

    ,已成為一個迫切需要解決的問題。為此,需開發一種由VPN (Virtual Private Network,簡稱VPN )安全網關VPN 客戶端和
    發表于 08-05 06:34

    Linux嵌入式操作系統有什么優勢?

    嵌入式linux 是將日益流行的Linux操作系統進行裁剪修改,使之能在嵌入式計算機系統上運行的一種操作
    發表于 08-20 07:42

    什么是汽車安全網關

    汽車安全網關的主要功能是在車載網絡和各種電子控制單元之間提供安全的無縫通信,并且能夠在車內網絡和外界網絡之間建起一座橋梁。安全網關作為中心樞紐,通過不同網絡間的物理隔離和不同通信協議間的轉換,在各個
    發表于 03-24 12:10

    求一種IPv4/IPv6安全網關解決方案

    IPv4/IPv6安全網關原理是什么?一種IPv4/IPv6安全網關解決方案
    發表于 05-28 06:21

    嵌入式Linux操作系統

    ARM+LINUX路線,主攻嵌入式Linux操作系統及其上應用軟件開發目標:(1)掌握主流嵌入式微處理器的結構與原理(初步定為arm9)(2
    發表于 10-27 10:22

    基于Linux嵌入式操作系統

    2.2 實時操作系統的評價指標三、基于Linux嵌入式操作系統3.1 ARMLinux簡介3.2 uCLinux簡介四、嵌入式
    發表于 11-08 09:05

    基于Linux操作系統嵌入式網關實現

    基于Linux操作系統嵌入式網關實現
    發表于 03-28 09:48 ?29次下載

    基于嵌入式系統安全網關的設計

    本文在研究網絡安全技術的基礎上,提出了一種嵌入式安全網關的解決方案。本文重點介紹了安全網關的硬件平臺及軟件
    發表于 09-16 10:01 ?14次下載

    一個基于Linux操作系統嵌入式網關實現

    本文介紹了一種基于Linux 操作系統嵌入式網關實現方案。具體講述了基于ARM9的軟硬件平臺的
    發表于 09-25 16:11 ?14次下載

    基于IXP2400的安全網關實現研究

    基于IXP2400的安全網關實現研究 摘  要: 討論了在IXP2400上應用IPSec實現安全網關的一種方案,可為通
    發表于 09-19 09:14 ?883次閱讀
    基于IXP2400的<b class='flag-5'>安全網關</b><b class='flag-5'>實現</b>研究

    嵌入式linux系統GUI設計方案

    嵌入式linux系統GUI設計方案 嵌入式linux操作系
    發表于 05-08 08:32 ?888次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b><b class='flag-5'>系統</b>GUI<b class='flag-5'>設計方案</b>

    跨平臺嵌入式安全網關設計

    摘要:隨著信息安全技術的發展,一種跨平臺的、可進行遠程控制的、通用的、支持嵌入式平臺的安全網關控制系統必不可少。本文就是在這種背景下提出了關于跨平臺
    發表于 04-19 15:49 ?23次下載
    跨平臺<b class='flag-5'>嵌入式</b><b class='flag-5'>安全網關</b>設計

    嵌入式ARM芯片及linux操作系統

    關于嵌入式和arm的一些介紹,包括嵌入式概念和linux操作系統的若干概念。
    發表于 04-05 16:20 ?7次下載

    基于FPGA的嵌入式Linux操作系統解決方案

    的傳輸。結合FPGA和Linux雙方優勢,可以很好地滿足嵌入式系統設計需求,量體裁衣,去除冗余。本文給出了一種基于Xilinx FPGA的嵌入式Li
    發表于 11-24 17:24 ?6309次閱讀

    Linux嵌入式操作系統有哪些優勢

    嵌入式Linux操作系統是將Linux操作系統進行裁剪,使Linux
    發表于 07-10 16:34 ?5138次閱讀
    主站蜘蛛池模板: 欧美黑人性xxx猛交| 100000免费啪啪18免进| 男人日女人视频在线观看| 精品看片| 大桥未久加勒比女热大陆在线| 国产视频分类| 性欧美丰满xxxx性久久久| h黄网站| 免费看男女做好爽好硬视频| 又黄又涩的视频| 久久男人视频| 又黄又湿又爽| 中文字幕人成不卡一区| 在线电影亚洲| 色婷婷影视| 噜噜噜噜噜噜色| 国产精品激情综合久久| 午夜国产精品久久影院| 狠狠干狠狠操| 天堂8在线天堂资源在线| 宅男色视频| 日本色片视频| 日本国产视频| 黄色污网站在线观看| 综合网激情五月| 九九精品国产兔费观看久久| kkk4444免费观看| 亚洲综合色一区| 欧美日韩中文字幕在线| 成人xxxxx| 久久久夜| 视频一区二区在线播放| 特级中国aaa毛片| 狠狠色噜噜狠狠狠| 深夜视频免费看| 57pao强力打造免费高清高速| 一个色亚洲| 久久综合五月婷婷| 天天射天天操天天干| 狼狼鲁狼狼色| 婷婷久久久五月综合色|