三生總結(jié)上半年open的原理_第1頁
三生總結(jié)上半年open的原理_第2頁
三生總結(jié)上半年open的原理_第3頁
三生總結(jié)上半年open的原理_第4頁
三生總結(jié)上半年open的原理_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

引技術(shù)通過密鑰交換、封裝、認(rèn)證、加密在公共網(wǎng)絡(luò)上建立起私密的隧道,保障傳輸數(shù)據(jù)的完整性、私密性和有效性。Open是近年來新出現(xiàn)的開放源碼項(xiàng)目,實(shí)現(xiàn)了SSL的一種傳統(tǒng)SSL通過端口的方法實(shí)現(xiàn),服務(wù)器根據(jù)應(yīng)用協(xié)議的類型(如http,net等)做相應(yīng)的端口,客戶端與服務(wù)器之間建立SSL安全連接,客戶端與應(yīng)用服務(wù)器之間的所有數(shù)據(jù)傳輸通過服務(wù)器轉(zhuǎn)發(fā)。這種實(shí)現(xiàn)方式煩瑣,應(yīng)用范圍也比較窄:僅適用TCP固定協(xié)議都必須重新開發(fā),且在中解析應(yīng)用協(xié)議才能實(shí)現(xiàn),如FTP協(xié)議;不能對(duì)TCP以外的其它網(wǎng)絡(luò)通信協(xié)議進(jìn)行;服務(wù)器前端的也要根據(jù)端口的配置變化進(jìn)行相應(yīng)調(diào)整Open以一種全新的方式實(shí)現(xiàn)了SSL的功能,克服了傳統(tǒng)SSL的一些缺陷,擴(kuò)展了應(yīng)用領(lǐng)域,并且上只需開放TCP或UDP協(xié)議的一個(gè)端口。Open的工作原Linux2.4版本以上,操作系統(tǒng)支持一個(gè)名為tun的設(shè)備,tun設(shè)備的驅(qū)動(dòng)程序中包含兩個(gè)部分,一部分是字符設(shè)備驅(qū)動(dòng),一部分是網(wǎng)卡驅(qū)動(dòng)。網(wǎng)卡的驅(qū)動(dòng)把從TCP/IP協(xié)議棧收到的數(shù)據(jù)包結(jié)構(gòu)skb放于tun設(shè)備的隊(duì)列,用戶進(jìn)程通過調(diào)用字符設(shè)備接口read獲得完整的IP數(shù)據(jù)包,字符驅(qū)動(dòng)read函數(shù)的功能是從設(shè)備的隊(duì)列數(shù)據(jù),將態(tài)的skb傳遞給用戶;反過來字符驅(qū)動(dòng)write函數(shù)給用戶提供了把用戶態(tài)的數(shù)據(jù)寫入態(tài)的接口,write函數(shù)把用戶數(shù)據(jù)寫入空間并穿入TCP/IP協(xié)議棧。該設(shè)備既能以字符設(shè)備的方式被讀寫,作為系統(tǒng)的虛擬網(wǎng)卡,也具有和物理網(wǎng)卡相同的特點(diǎn):能夠配置IP地址和路由。對(duì)虛擬網(wǎng)卡的使用是Open實(shí)現(xiàn)其SSL功能的關(guān)鍵。Open服務(wù)器一般需要配置一個(gè)虛擬IP地址池和一個(gè)自用的靜態(tài)虛擬IP地址(靜態(tài)地址和地址池必須在同一個(gè)子網(wǎng)中),然后為每一個(gè)成功建立SSL連接的客戶端動(dòng)態(tài)分配一個(gè)虛擬IP地址池中未分配的地址。這樣,物理網(wǎng)絡(luò)中的客戶端和Open服務(wù)器就連接成一個(gè)虛擬網(wǎng)絡(luò)上的星型結(jié)構(gòu)局域網(wǎng),Open服務(wù)器成為每個(gè)客戶端在虛擬網(wǎng)絡(luò)上的網(wǎng)關(guān)。Open服務(wù)器同時(shí)提供對(duì)客戶端虛擬網(wǎng)卡的路由管理。當(dāng)客戶端對(duì)Open服務(wù)器后端的應(yīng)用服務(wù)器的任何訪問時(shí),數(shù)據(jù)包都會(huì)經(jīng)過路由流經(jīng)虛擬網(wǎng)卡,Open程序在虛擬網(wǎng)卡上截獲數(shù)據(jù)IP報(bào)文,然后使用SSL協(xié)議將這些IP報(bào)文封裝起來,再經(jīng)過物理網(wǎng)卡發(fā)送出去。Open的服務(wù)器和客戶Open的服務(wù)器和客戶端支持tcp和udp兩種連接方式,只需在服務(wù)端和客戶端預(yù)先定義好連接過程包括SSL的握手以及虛擬網(wǎng)絡(luò)上的管理信息,Open將虛擬網(wǎng)上的網(wǎng)段、地址、路入虛擬網(wǎng)卡做SSL的處理,再在tcpudp的連接上從物理網(wǎng)卡發(fā)送出去。應(yīng)用層的外出數(shù)據(jù),經(jīng)過系統(tǒng)調(diào)用接口傳入TCP/IP層做處理,在TCP/IP經(jīng)過路由到虛數(shù)據(jù)包從區(qū)到用戶區(qū)的,Open調(diào)用虛擬網(wǎng)卡的字符處理程序tun_read(),到設(shè)備上的數(shù)據(jù)包,對(duì)的數(shù)據(jù)包使用SSL協(xié)議做封裝處理后,通過socket系統(tǒng)調(diào)用發(fā)送出物理網(wǎng)卡接收數(shù)據(jù)包,經(jīng)過TCP/IP上傳到Open,Open通過link_socket_read()接收數(shù)據(jù)包,使用SSL協(xié)議進(jìn)行解包處理,經(jīng)過處理的數(shù)據(jù)包Open調(diào)用虛擬網(wǎng)卡的字符處理程序tun_write()寫入虛擬網(wǎng)卡的字符設(shè)備,設(shè)備驅(qū)動(dòng)程序完成數(shù)據(jù)從用戶區(qū)到區(qū)的 ,并將數(shù)據(jù)寫入skb鏈表,然后調(diào)用網(wǎng)卡netif_rx()接收程序,數(shù)據(jù)包再次進(jìn)入系統(tǒng)TCP/IP協(xié)議棧,傳到上層應(yīng)用程序。如圖1所示。圖 數(shù)據(jù)在系統(tǒng)中的處理過Open提供tun和tap兩種工作模式。在tun模式下,從虛擬網(wǎng)卡上收到的是不含物理幀頭IP數(shù)據(jù)包,SSL處理模塊對(duì)IP包進(jìn)行SSL封裝;在tap模式下,從虛擬網(wǎng)卡上收到的是包含物理幀頭的數(shù)據(jù)包,SSL處理模塊對(duì)整個(gè)物理幀進(jìn)行SSL封裝。Tap模式稱為網(wǎng)橋模式,整Open與Open軟件包需要和openssl軟件一起安裝,因?yàn)镺pen調(diào)用了Openssl函數(shù)庫,Open的客戶端和服務(wù)端建立SSL的過程是通過調(diào)用Openssl來實(shí)現(xiàn)的。通過bio_write()/函數(shù)把數(shù)據(jù)寫入Openssl的狀態(tài)機(jī)通道,bio_read()從Openssl果。Open還調(diào)用Openssl的加 Open的應(yīng)用系統(tǒng)結(jié)構(gòu)介交換機(jī)再經(jīng)SSL網(wǎng)關(guān)連接到公共的網(wǎng)絡(luò)。用戶A和用戶B是部門一的用戶,用戶X和用戶Y是部門二的用戶,用戶可以本部門服務(wù)器,但不能直接其它部門的服務(wù)器。系統(tǒng)中設(shè)備的基本配服務(wù)器SSL1、SSL2上安裝Open以服務(wù)器方式啟動(dòng)用戶A、B和服務(wù)器SSL2上啟動(dòng)Open以客戶端方式向服務(wù)器SSL1申請(qǐng)建立連接,連接建立成功后分配到的虛擬地址分別為、、。用戶X、Y上啟動(dòng)Open以客戶端方式向服務(wù)器SSL2申請(qǐng)建立連接,連接建立成功后分配到的虛擬地址分別為、。各設(shè)備上的地址如下:服務(wù)器SSL1:eth1(內(nèi)口 用戶A:eth0:4,tap0:,用戶服務(wù)器SSL2:eth1(內(nèi)口 用戶C:eth0:9,tap0五種形用 push 客戶端向SSL1服務(wù)器請(qǐng)求建立成功后,客戶端上產(chǎn)生如下路 …用戶A和用戶B就安全的能SSL1服務(wù)器的內(nèi)網(wǎng)同部門用戶點(diǎn)到點(diǎn)通用戶A和用戶B分別和SSL1服務(wù)器建立連接,服務(wù)器使用參數(shù)-,用戶A和用戶B之間就能通過:用戶A---SSL 用戶B這樣的安全途徑通圖 系統(tǒng)結(jié)SSL2做為客戶端和SSL1建立連接(或者1做為客戶端和2建立連接)*… …服務(wù)器1、2和服務(wù)器3和4的數(shù)據(jù)交換,由SSL1和SSL2建立起來的安全隧道保用戶跨部門服務(wù)當(dāng)用戶有跨部門服務(wù)器的需求時(shí),必須經(jīng)過SSL網(wǎng)關(guān)的接力,即先連接到本部門的網(wǎng)關(guān),再轉(zhuǎn)發(fā)到其它部門SSL網(wǎng)關(guān),然后 到它部門內(nèi)部的服務(wù)器。用戶A和SSL1服務(wù)器建立連接,SSL2做為客戶端和SSL1建立連接(或者1做為客端和2建立連接)SSL1配置文件中使用參數(shù)-to-,并添加如下選項(xiàng)push 客戶端向 …上增加路 用戶和服務(wù)器間數(shù)據(jù)安全傳輸路徑是:用戶A---SSL1---SSL2用戶A和SSL1建立連接,用戶X和SSL2建立連接,2做為客戶端和1建立連接(或者1做為客戶端和2建立連接)。用戶A的系統(tǒng)**…用戶X系統(tǒng)內(nèi)產(chǎn)生如下路由 … 上的路由如下 在2上,流入tap1的數(shù)據(jù)進(jìn)入2與1建立的安全隧道,流入tap0的數(shù)據(jù)進(jìn)2和2的客戶端建立的安全隧道。用戶A與用戶X間數(shù)據(jù)安全傳輸路徑是:用戶A---SSL1---SSL2 用戶X。Open是一款基于SSL的開源軟件,它實(shí)現(xiàn)了利用SSL來保證網(wǎng)絡(luò)通訊安全性的目的,同時(shí)避免了傳統(tǒng)SSL僅提供簡(jiǎn)單的Web應(yīng)用的不足,它具有支持各種應(yīng)用協(xié)議,支持Windows,Linux,B

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論