安全连接方式SSL
通常的連接方式中,通信是以非加密的形式在網(wǎng)絡上傳播的,這就有可能被非法竊聽到,尤其是用于認證的口令信息。為了避免這個安全漏洞,就必須對傳輸過程進行加密。對HTTP傳輸進行加密的協(xié)議為HTTPS,它是通過SSL(Secure socketlayer)進行HTTP傳輸?shù)膮f(xié)議,不但通過公用密鑰的算法進行加密保證傳輸?shù)陌踩?#xff0c;而且還可以通過獲得認證證書CA,保證客戶連接的服務器沒有被假冒。
使用公用密鑰的方式可以保證數(shù)據(jù)傳輸沒有問題,但如果瀏覽器客戶訪問的站點被假冒,這也是一個嚴重的安全問題。這個問題不屬于加密本身,而是要保證密鑰本身的正確性問題。要保證所獲得的其他站點公用密鑰為其正確的密鑰,而非假冒站點的密鑰,就必須通過一個認證機制,能對站點的密鑰進行認證。當然即使沒有經(jīng)過認證,仍然可以保證信息傳輸安全,只是客戶不能確信訪問的服務器沒有被假冒。如果不是為了提供電子商務等方面對安全性要求很高的服務,一般不需要如此嚴格的考慮。
一、SSL協(xié)議工作機制
SSL除了可以用在Web服務器與瀏覽器之間信息交換以外,還可以支持其他我們所熟識的網(wǎng)絡應用。以TCP/IP網(wǎng)絡層來看,SSL是定位在網(wǎng)絡層之上的應用協(xié)議,如圖:
HTTP FTP SMTP
Secure Socket Layer
TCP層
IP層
任何以TCP/IP層以上的網(wǎng)絡協(xié)議SSL都可以支持,因此HTTP、FTP、SMTP等等皆是SSL的保護范圍。SSL協(xié)議一共包含兩個部分:SSLHandshake協(xié)議和SSL Record協(xié)議。前者是負責通信前的一些參數(shù)協(xié)商,后者則是定義SSL的內部數(shù)據(jù)格式。
SSL Handshake協(xié)議
SSL中Handshake協(xié)議可以說是SSL的前置步驟,就好象初次見面的兩個人回先自我介紹一番再開始談話一樣。通信的雙方(商店的服務器與客戶計算機)先進行“溝通”與“協(xié)調”有關SSL通信的參數(shù)設置,其中包括:
※通信中所使用的SSL版本。
※信息加密用的算法
※客戶端的身份驗證要求
※所使用的公開金鑰算法
這個協(xié)議的餓大致步驟如下:
(1)Client Hello:首先,由客戶端計算機向服務器Say Hello,并同時將客戶端計算機所能支持的安全模塊告訴對方,以便溝通。信息內容包括:SSL協(xié)議版本、本次聯(lián)機的餓識別碼以及加密模塊等。
(2)Server Hello:這時商店端服務器在收到這個信息后,立即送出包含以下信息的響應信息給客戶端:
※服務器的數(shù)字證書,讓客戶端可以檢查服務器的身份。
※如果服務器要求雙方相互認證的話,則送出“認證請求”的信息。要求客戶端也提出識別身份的數(shù)字證書。(淘寶的帳單支付就是這樣)
※服務器用來加密的密鑰。
(3)加解密參數(shù):當客戶端收到服務器的信息后,就可根據(jù)要求來響應,并且也將客戶端的公用金鑰也送給對方,作為后續(xù)信息的加解密之用。到這個階段為止,通信雙方都已經(jīng)達成了共識,并準備傳送真正的信息內容。
(4)HTTP數(shù)據(jù)流:協(xié)調的工作已經(jīng)大功告成了!這時雙方就可以HTTP協(xié)議來進行數(shù)據(jù)交換了。
SSL Record協(xié)議
顧名思義Record協(xié)議,是在描述SSL信息交換的過程中的記錄格式。SSL協(xié)議是介于應用層和網(wǎng)絡層之間,因此它回接收來自應用層的信息,并加以包裝后交由下一層(也就是網(wǎng)絡層來傳送)。
二、關于HTTPS SSL證書問題
SSL證書是在SSL通信中驗證通信雙方身份的數(shù)字文件。SSL證書一般分為服務器證書和客戶端證書,我們通常說的SSL證書主要指服務器證書。目前的SSL證書以X.509 V3為標準,每個證書綁定了一個唯一甄別名(DN-Distinguished Name ),還可以包含多個字段和值,還可以支持別名(SAN ,Subject Alternative Name )。
主流瀏覽器:IE、Netscape/Mozilla,Opera和Safari會預先安裝一部分根證書,這些根證書都是受信任的證書認證機構CA,這樣他們頒發(fā)的證書,瀏覽器將可以直接信任。雖然用戶可以刪除或者禁用這些根證書,但事實上,用戶很少這么做。在最新的微軟平臺,甚至會在用戶移除了預先安置的根證書后,當用戶再訪問這些被刪除的根證書網(wǎng)站的時候,會自動將這些根證書恢復到信任列表中。
SSL證書的工作流程
※用戶連接到你的Web站點,該Web站點受服務器證書所保護。(可由查看 URL的開頭是否為"https:"來進行辯識,或瀏覽器會提供你相關的信息)。
※你的服務器進行響應,并自動傳送你網(wǎng)站的數(shù)字證書給用戶,用于鑒別你的網(wǎng)站。(此證書的根證書如果不在瀏覽器中已安裝的受信任機構根證書列表中,則瀏覽器會發(fā)出警告,提示用戶正在訪問一個不安全的網(wǎng)站!)
※用戶的網(wǎng)頁瀏覽器程序產生一把唯一的"會話鑰匙碼",用以跟網(wǎng)站之間所有的通訊過程進行加密。
※使用者的瀏覽器以網(wǎng)站的公鑰對交談鑰匙碼進行加密,以便只有讓你的網(wǎng)站得以閱讀此交談鑰匙碼。
※現(xiàn)在,具有安全性的通訊過程已經(jīng)建立。這個過程僅需幾秒中時間,且使用者不需進行任何動作。依不同的瀏覽器程序而定,使用者會看到一個鑰匙的圖標變得完整,或一個門栓的圖標變成上鎖的樣子,用于表示目前的工作階段具有安全性。
如何申請SSL證書
申請SSL證書主要需要經(jīng)過以下3個步驟:
1、制作CSR文件。CSR就是Certificate Secure Request證書請求文件。這個文件是由申請人制作,在制作的同時,系統(tǒng)會產生2個密鑰,一個是公鑰就是這個CSR文件,另外一個是私鑰,存放在服務器上。要制作CSR文件,申請人可以參考WEB SERVER的文檔,一般APACHE等,使用OPENSSL命令行來生成KEY+CSR2個文件,Tomcat,JBoss,Resin等使用KEYTOOL來生成JKS和CSR文件,IIS通過向導建立一個掛起的請求和一個CSR文件。如果不愿意學習文檔,可以使用一些在線工具,如: https://www.myssl.cn/openssl/createcsr.asp ,通過這些工具會產生2個文件,必須都保存好。
2、CA認證。將CSR提交給CA,CA一般有2種認證方式:1、域名認證,一般通過對管理員郵箱認證的方式,這種方式認證速度快,但是簽發(fā)的證書中沒有企業(yè)的名稱;2、企業(yè)文檔認證,需要提供企業(yè)的營業(yè)執(zhí)照。一般需要3-5個工作日。 也有需要同時認證以上2種方式的證書,叫EV證書,這種證書可以使IE7以上的瀏覽器地址欄變成綠色,所以認證也最嚴格(這個不是免費的,是需要年費的哦。當然也可以自己給自己認證,只不過不受瀏覽器信任)。
3、證書的安裝。在收到CA的證書后,可以將證書部署上服務器,一般APACHE文件直接將KEY+CER復制到文件上,然后修改HTTPD.CONF文件;TOMCAT等,需要將CA簽發(fā)的證書CER文件導入JKS文件后,復制上服務器,然后修改SERVER.XML;IIS需要處理掛起的請求,將CER文件導入。或者可以通過一些網(wǎng)絡工具 https://www.myssl.cn/guide/openssl.asp 將KEY和CER合并為服務器可讀的證書格式,導入服務器。
三、關于SSL VPN
所謂的SSL VPN,指的是使用者利用瀏覽器內建的Secure Socket Layer封包處理功能,用瀏覽器連回公司內部SSL VPN服務器,然后透過網(wǎng)絡封包轉向的方式,讓使用者可以在遠程計算機執(zhí)行應用程序,讀取公司內部服務器數(shù)據(jù)。它采用標準的安全套接層(SSL)對傳輸中的數(shù)據(jù)包進行加密,從而在應用層保護了數(shù)據(jù)的安全性。高質量的SSL VPN解決方案可保證企業(yè)進行安全的全局訪問。在不斷擴展的互聯(lián)網(wǎng)Web站點之間、遠程辦公室、傳統(tǒng)交易大廳和客戶端間,SSL VPN克服了IPSec VPN的不足,用戶可以輕松實現(xiàn)安全易用、無需客戶端安裝且配置簡單的遠程訪問,從而降低用戶的總成本并增加遠程用戶的工作效率。而同樣在這些地方,設置傳統(tǒng)的IPSec VPN非常困難,甚至是不可能的,這是由于必須更改網(wǎng)絡地址轉換(NAT)和防火墻設置。
通過SSL VP N遠程訪問企業(yè)內部網(wǎng)絡的構架
SSL VPN的實現(xiàn)
簡單的來講,SSL VPN一般的實現(xiàn)方式是在企業(yè)的防火墻后面放置一個SSL代理服務器。如果用戶希望安全地連接到公司網(wǎng)絡上,那么當用戶在瀏覽器上輸入一個URL后,連接將被SSL代理服務器取得,并驗證該用戶的身份,然后SSL代理服務器將提供一個遠程用戶與各種不同的應用服務器之間連接。掌握四個關鍵術語的含義有助于理解SSL VPN是如何實現(xiàn)的。即:代理、應用轉換、端口轉發(fā)和網(wǎng)絡擴展。
SSLVPN網(wǎng)關至少要實現(xiàn)一種功能:代理Web頁面。它將來自遠端瀏覽器的頁面請求(采用HTTPS協(xié)議)轉發(fā)給Web服務器,然后將服務器的響應回傳給終端用戶。
對于非Web頁面的文件訪問,往往要借助于應用轉換。SSL VPN網(wǎng)關與企業(yè)網(wǎng)內部的微軟CIFS 或FTP服務器通信,將這些服務器對客戶端的響應轉化為HTTPS協(xié)議和HTML格式發(fā)往客戶端,終端用戶感覺這些服務器就是一些基于Web的應用。
有一些應用,如微軟Outlook或MSN,它們的外觀會在轉化為基于Web界面的過程中丟失。此時要用到端口轉發(fā)技術。端口轉發(fā)用于端口定義明確的應用。它需要在終端系統(tǒng)上運行一個非常小的Java或ActiveX程序作為端口轉發(fā)器,監(jiān)聽某個端口上的連接。當數(shù)據(jù)包進入這個端口時,它們通過SSL連接中的隧道被傳送到SSL VPN網(wǎng)關,SSL VPN網(wǎng)關解開封裝的數(shù)據(jù)包,將它們轉發(fā)給目的應用服務器。使用端口轉發(fā)器,需要終端用戶指向他希望運行的本地應用程序,而不必指向真正的應用服務器。
一些SSL VPN網(wǎng)關還可以幫助企業(yè)實現(xiàn)網(wǎng)絡擴展。它將終端用戶系統(tǒng)連接到企業(yè)網(wǎng)上,并根據(jù)網(wǎng)絡層信息(如目的IP地址和端口號)進行接入控制。雖然犧牲了高級別的安全性,卻也換來了復雜拓撲結構下網(wǎng)絡管理簡單的好處。
SSL VPN的優(yōu)勢
在最重要的安全性方面,由于SSL協(xié)議本身就是一種安全技術,因此SSL VPN就具有防止信息泄漏、拒絕非法訪問、保護信息的完整性、防止用戶假冒、保證系統(tǒng)的可用性的特點,能夠進一步保障訪問安全,從而擴充了安全功能設施。首先SSL VPN可以實現(xiàn)128位數(shù)據(jù)加密,保證數(shù)據(jù)在傳輸過程中不被竊取,確保ERP數(shù)據(jù)傳輸?shù)陌踩浴F浯?#xff0c;多種認證和授權方式的使用能夠只讓“正確”的用戶訪問內部網(wǎng)絡,從而保護了企業(yè)內部網(wǎng)絡的安全性。
在應用性方面,SSL VPN不需要安裝客戶端軟件。遠程用戶只需借助標準的瀏覽器連接Internet,即可訪問企業(yè)的網(wǎng)絡資源。這樣盡管購買軟件和硬件的費用不一定低,但是 SSL VPN的部署成本卻很低。只要安裝了SSL VPN,基本上就不需要IT部門的支持了,所以維護成本可以忽略不計。對于那些只需進入企業(yè)內部網(wǎng)站或者進行E-mail通信的遠程用戶來說,SSL VPN顯然是一個價廉物美的選擇。
此外,SSL VPN連接要比IPSec VPN更穩(wěn)定,這是因為IPSec VPN是網(wǎng)絡層連接,故容易中斷。而SSL協(xié)議只對通信雙方所進行的應用通道進行加密,而不是對從一個主機到另一主機的整個通道進行加密。除此之外,在管理維護和操作性方面,SSL VPN方案可以做到基于應用的精細控制,基于用戶和組賦予不同的應用訪問權限,并對相關訪問操作進行審計。此外,SSL VPN還提高了平臺的靈活性,方便擴展應用和增強性能,尤其是在降低使用成本、最有效地保護用戶投資這一敏感話題上,SSL VPN贏得了用戶最終的好感。
更值得一提的是,當今Web成為標準平臺已勢不可擋,越來越多的企業(yè)開始將系統(tǒng)移植到Web上。而SSL VPN通過特殊的加密通訊協(xié)議,被認為是實現(xiàn)遠程安全訪問Web應用的最佳手段,能夠讓用戶隨時隨地甚至在移動中連入企業(yè)內網(wǎng),將給企業(yè)帶來很高的利益和方便。
無疑,伴隨企業(yè)信息化程度的加深,遠程安全訪問、協(xié)同工作的需求會日益明顯,SSL VPN技術由于擁有全方位的優(yōu)勢,取代傳統(tǒng)的組網(wǎng)技術成為主流已為時不遠。
SSL VPN的應用
SSL VPN可以為企業(yè)提供多種遠程訪問的服務。就下面常用服務進行介紹:
E-mail:對于企業(yè)來說,電子郵件通信是一個很基本的功能。IPSec VPN可以保護郵件系統(tǒng)的安全性,但是IPSec VPN需要安裝客戶端軟件并且連接企業(yè)網(wǎng)絡,然后才能使用內部的郵件系統(tǒng)。如果員工使用他人的電腦設備或者在其他的的網(wǎng)絡中時,就會面臨對方防火墻的地址轉換和安全策略帶來的障礙,無法連接企業(yè)網(wǎng)絡,從而無法使用內部郵件系統(tǒng)。外出的工作人員在酒店里由于這些問題無法連接到企業(yè)內部網(wǎng)絡是非常讓人頭疼的問題。SSL VPN提供了一個比較好的方案,員工使用任何一個帶有瀏覽器的電腦就可以訪問基于Web的電子郵件系統(tǒng),通過SSL VPN建立的安全通道收發(fā)郵件。SSL VPN還會把企業(yè)內部所有的域名和服務器地址隱藏起來,以提高企業(yè)網(wǎng)絡的安全性。
內部網(wǎng)訪問:即使不在辦公室,企業(yè)員工也需要使用內部網(wǎng)中的一些文件資源,但是一般情況下企業(yè)不會開放整個內部網(wǎng)絡以實現(xiàn)文件訪問。SSL VPN可以讓企業(yè)員工在任何地方,使用任何一個包含瀏覽器、連接到Internet的接入設備,實現(xiàn)對內部特定資源的訪問。
面向合作伙伴的網(wǎng)絡資源:為了提高工作效率和加強合作關系,企業(yè)通常會對合作伙伴開放內部站點和網(wǎng)絡資源。考慮到企業(yè)信息的保密性,如何能保證只有指定的合作伙伴才能訪問相應的資源,以及保證信息在網(wǎng)絡上傳遞時不被截獲,就成為企業(yè)必須解決的問題。IPSec VPN在部署時無法保證對最終用戶的訪問限制,即只允許合作伙伴訪問內部網(wǎng)絡中的指定資源,而且部署IPSec VPN會要求更改合作伙伴防火墻的安全策略,這是很難實現(xiàn)的。SSL VPN則完全不存在上述問題,企業(yè)甚至可以限制某一個合作伙伴只能訪問一個站點中的某些頁面和文件夾,并且不需要修改合作伙伴的安全策略,只要合作伙伴能夠訪問Internet即可。
目前形式
隨著Web應用的增多以及遠程接入需求的增長,SSL VPN正在成為一個熱門市場。雖然目前大部分的遠程接入服務都是由IPSec VPN來實現(xiàn)的,不過業(yè)內人士指出,大約90%的企業(yè)利用IPSec VPN只是用來進行電子郵件通信以及訪問Web應用,只有10%的用戶利用IPSec VPN訪問非Web應用。也就是說目前90%的IPSec VPN應用都可以被SSL VPN來實現(xiàn),而SSL VPN更加容易配置和管理,實現(xiàn)成本要比IPSec VPN低很多。 經(jīng)過幾年的發(fā)展,如今許多的大型公司對SSL VPN技術趨之若鶩,吸引著包括思科、諾基亞、Array Networks等在內的國際知名廠商。目前,幾乎所有的主流商業(yè)瀏覽器都集成了SSL,實施SSL VPN不需要再安裝額外的軟件。Infonetics預測,在未來幾年,SSL VPN設備的全球銷售將會出現(xiàn)持續(xù)增長。SSL VPN為運營商提供了新創(chuàng)收機遇,它為運營商及最終用戶創(chuàng)造的優(yōu)勢是以往任何技術都無法比擬的。現(xiàn)在,SSL VPN在一些1級運營商中的部署獲得成功,SSL VPN高速發(fā)展的時機已經(jīng)到來
總結
- 上一篇: MySQL学习笔记——20170811
- 下一篇: HTML信件-一种奇特的实现方式