390 likes | 551 Views
教育部資通訊人才培育先導型計畫 寬頻有線教學推動聯盟中心. 第八章 遠端存取與身份識別. 前言. 現今的企業網路不可能為一封閉式的架構,通常需要透過公用 (Public) 網路 ( 如 Internet) 將企業分佈在世界各地的網路連接起來;為了安全地交換企業資料,管理者必須在公用網路虛擬建立企業專用的通訊管道,稱為 Virtual Private Network (VPN) 。本章先介紹目前建立 VPN 最常被使用的技術 - IPSec ,接著說明如何在企業網路上建立 Site-to-Site VPN 及 Remote Access VPN 。
E N D
教育部資通訊人才培育先導型計畫 寬頻有線教學推動聯盟中心 第八章 遠端存取與身份識別
前言 第八章 遠端存取與身份識別 • 現今的企業網路不可能為一封閉式的架構,通常需要透過公用(Public)網路(如Internet)將企業分佈在世界各地的網路連接起來;為了安全地交換企業資料,管理者必須在公用網路虛擬建立企業專用的通訊管道,稱為Virtual Private Network (VPN)。本章先介紹目前建立VPN最常被使用的技術 - IPSec,接著說明如何在企業網路上建立Site-to-Site VPN及Remote Access VPN。 • 通常要保護企業網路的安全,可以要求通訊雙方在交換訊息前必須先確認彼此的身份。身份確認,最簡單也是最不安全的作法就是只要求使用者輸入名稱(user name)及密碼(password);這種作法在開放式的網路,很容易遭到有心人士盜取合法使用者的密碼。也許你會說將密碼加密後再送出就可以避免上述的盜取行為;沒錯,這樣的作法是可以阻止有心人士直接得知使用者密碼的內容,但是卻沒有辦法阻止有心人士進行重現(replay)的假冒行為。本章將介紹目前被廣為使用的身份認證方式:one-time passwords & token cards、digital certificates及biometricsauthentication。 8.1 VPN技術 8.1.1 IPSec之介紹 8.1.2 Site-to-Site VPN 8.1.3 Remote Access VPN 8.2 身份識別技術 8.2.1 one-time passwords and token cards 8.2.2 digital certificates 8.2.3 biometrics authentication
虛擬私有網路(Virtual Private Network,VPN) VPN主要是在網際網路利用軟體技術(如加解密演算法、Hash function等)來虛擬建立一個企業專屬的通道(tunnel),目的是用來取代傳統專線式的私有(Private)網路,降低企業網路建構的成本亦保障企業資料在公用(Public)網路被傳送的安全性。 如左圖所示,若企業有二個分公司位於不同的城市,每個分公司內部都有自己的私有內部網路,可以建立一條專線將此二個私有網路連接起來,或者利用VPN的方式連接,管理者利用現有的網際網路架構,在二個公司內部分別架設VPN伺服器,虛擬建立一個專屬的通道。 目前支援建立VPN的網路通訊協定相當的多,例如資料連結層(Data Link)有Layer 2 Tunneling Protocol(L2TP)、Cisco‘s Layer 2 Forwarding (L2F)、Microsoft’s Point-to-Point Tunneling Protocol (PPTP)等;網路層(Network)則有IPSec;傳輸層(Transport)則有SSL/TLS等等。以下將針對網路層(Network)的IPSec通訊協定作介紹。 8.1 VPN技術 第八章 遠端存取與身份識別 Tunnel VPN (Virtual Private Network) 美國分公司 台灣總公司 在網際網路虛擬建立企業專用的通訊管道,保障資料交換的安全性
8.1.1 IPSec 之介紹 第八章 遠端存取與身份識別 • IP安全通訊協定(IP Security,簡稱IPSec)是IETF所制定的一套可以在網路層安全通訊的協定;IPSec是TCP/IP通訊協定IPv4的延伸,亦相容IPv6,左圖所示為相關的IPSec標準規範。 • IPSec可以提供IP封包的來源認證性(防止IP來源位址被假冒)、亦保證IP封包在網路傳送的私密性及完整性。 • IPSec通訊協定可分為 • Authentication Header (AH) 協定 提供來源確認性及資料完整性等安全功能。 • Encapsulating Security Payload (ESP) 協定 提供資料私密性的安全功能。 AH、 ESP可以單獨使用或相互結合使用。 • IPSec操作模式可分為 • 運輸模式(Transport Mode) • 隧道模式(Tunnel Mode) • IPSec金匙管理可分為 • 手動式的管理(Manual management) • 自動化的管理(Automated management) • 安全協議(Security Association,簡稱SA):在使用IPSec之前,接收資料的雙方必須先建立一安全協議,上面記載著雙方同意使用的安全協定(AH或ESP)、加解密演算法、驗證方式等相關資訊。 IPSec相關的RFC資料 RFC 2401 IPSec的安全架構 RFC 2402 AH 協定 RFC 2406 ESP協定 RFC 2407 ISAKMP的IPSec解釋域(IPSec Dol) RFC 2408 網際網路安全協議與密鑰管理ISAKMP RFC 2409 網際網路密鑰交換(IKE) RFC Web-site http://www.rfc-editor.org/
8.1.1 IPSec 之介紹(AH協定) 第八章 遠端存取與身份識別 • Authentication Header (AH) 協定 • AH協定的格式如左圖所示,AH主要是有一個認證資料欄(Authentication Data),存放封包的認證資訊,讓接收者能對封包的來源作確認及保證整個封包的完整性。 • 下個標頭(Next Header,8 bits):存放接在AH之後的標頭格式,例如此封包攜帶的是TCP資料,則此欄位將存放6,表示在AH之後的是TCP標頭。 • 長度(Length,8 bits):存放AH的長度。 • 安全參數索引(Security Parameter Index,32 bits):由於每部主機可能會同時存在多份安全協議,利用此欄位及IP標頭內的目的位置、協定值,則可決定目前使用的是那份安全協議。要注意安全協議的建立是單向的(unidirectional),若要建立VPN連線(雙向),則需兩份安全協議,一份是關於傳送資料的安全協議,另一份則是關於接收資料的安全協議。 • 順序編號(Sequence Number,32 bits):存放一遞增的計數值,主要目的是防止重現(replay)攻擊。 • 認證資料(Authentication Data,長度不定):存放封包的認證資訊。 IP標頭 AH tcp/udp標頭 資料 下個標頭 長度 保留 安全參數索引 順序編號 認證資料 AH協定的格式
Encapsulating Security Payload (ESP) 協定 AH協定並不提供資料保密的安全功能,利用ESP協定的封包才能保證資料傳送的機密性,其格式如左上圖所示。 ESP協定除了能保證資料傳送的機密性,必要時ESP還能提供資料來源的認証性及完整性的安全功能,其格式如左下圖所示,ESP的完整格式包括了ESP標頭、ESP尾部及ESP認証資料,這樣的格式讓整個封包具有機密性、完整性及資料來源認証性。 跟AH比較,ESP提供來源認証性的功能要比AH弱,這是因為ESP在簽章時並沒有將IP標頭的資料列入計算,因此無法偵測出封包的IP位址是否遭受到竄改。 IP標頭 ESP標頭 Tcp/udp標頭 資料 ESP尾部 8.1.1 IPSec 之介紹(ESP協定) 第八章 遠端存取與身份識別 安全參數索引 填充字串 填充字串長度 順序編號 下個標頭 ESP協定的格式- 提供資料保密的安全功能 ESP認証資料 IP標頭 ESP標頭 Tcp/udp標頭 資料 ESP尾部 ESP協定的完整格式- 提供資料保密、來源的認証性及資料完整性的安全功能
8.1.1 IPSec 之介紹(IPSec 運作模式-運輸模式) 第八章 遠端存取與身份識別 • IPSec運輸模式(Transport Mode) 當兩台主機都有執行IPSec的能力時,他們就可以直接用運輸模式來傳送資料,AH(ESP)運輸模式的格式如左圖所示,封包上IP標頭的來源位址及目的位址就是交換資料兩個主機的位址;封包在網路上傳送時,所經過的每個路由器視該封包為一般的IP封包而處理之。 IPSec Internet 主機A 主機B 雙方皆擁有執行IPSec的能力 IP Header TCP / UDP segment IP Header IPSec Header TCP / UDP segment IPSec Trailer IPSec 運輸模式
Security Gateway G2 8.1.1 IPSec 之介紹(IPSec 運作模式-隧道模式) 第八章 遠端存取與身份識別 • IPSec隧道模式(Tunnel Mode) • 前面提過在使用IPSec之前,接收資料的雙方必須先建立一安全協議,而安全協議是單向的(unidirectional),且AH或ESP需使用不同的安全協議。若兩台主機用AH及ESP協定去接收及傳送資料,則每台主機需存放四份安全協議;當使用IPSec的主機一多,每台主機所需存放的安全協議也隨之增多,造成管理與維護不易的問題。因此大部分的企業網路會將執行IPSec的工作放在對外的安全閘口(security gateway)上,這安全閘口可以是一路由器、防火牆或一特製的網路裝置;其它的主機則利用安全閘口的IPSec功能來傳收資料,這樣的運作模式稱為隧道模式。 • 左圖說明有一主機HA要傳送資料給另一主機HB,但這兩台主機都沒有執行IPSec的能力,於是主機HA傳送一IP封包(封包上IP標頭的來源位址及目的位址分別是HA及HB)給它的安全閘口G1,G1遂利用IPSec的隧道模式將該封包放在一新的IP封包的IP資料本體內,並加上IPSec的標頭及新封包的IP標頭(此時封包上來源位址及目的位址分別是G1及G2),之後將封包送出;該封包在傳至G2之前,所經過的每個路由器視該封包為一般的IP封包而處理之。當封包抵達G2後,G2先執行IPSec的功能,進行封包來源、完整性的確認及解密等工作後,若封包的安全性沒有問題,則將原來的封包傳送給主機HB。 G1 G2 HA HB 新的IP標頭 IPSec標頭 原始IP標頭 資料 Security Gateway G1 主機HA 主機HB IP標頭 資料 IP標頭 資料 HA HB HA HB IPSec隧道模式範例
8.1.1 IPSec 之介紹(金匙管理) 第八章 遠端存取與身份識別 • 金匙管理主要是負責下列兩項工作: • 建立IPsec安全協議(SA)。 • 建立共同的秘鑰(Secret keys)。 • 金匙管理方式: • 手動式的管理(Manual Management) 系統管理者將IPSec所需要的安全協議等相關資訊利用人工輸入主機,這樣的手動式金匙管理方式只適用在通訊對象固定且人數少的環境。 • 自動化的管理(Automated Management) 在通訊對象經常變動或人數眾多的環境,必須讓主機執行金匙管理協定,自動化產生安全協議等相關資訊。目前最常被使用的自動化金匙管理協定稱為IKE (Internet Key Exchange),IKE主要是結合了ISAKMP、Oakley及SKEMI這三種通訊協定 。
8.1.1 IPSec 之介紹(金匙管理-IKE) 第八章 遠端存取與身份識別 • IKE (Internet Key Exchange) IKE是建構在UDP傳輸層之上,執行IKE的雙方透過UDP埠編號500來交換訊息。IKE主要提供下列四種功能: • 提供兩個IPSec裝置協商未來通訊時要使用哪種協定(AH/ESP)、演算法,及產生金鑰的方式。 • 確保從一開始就是和正確的對象交談。 • 管理所同意使用的金鑰。 • 保證金鑰的絕對機密性。 • IKE運作分為兩個階段: • 第一階段:建立安全的通訊管道 此階段主要是要為執行IKE的雙方在不安全的公用網路上建立一安全的通訊管道,來防止攻擊者竊聽資訊。此階段雙方作身份認證的方法有三種:preshared key、Digital sinature、Public key encryption。身份認證成功後,雙方共同協商出未來IKE安全通訊管道所使用的加解密法、雜湊函數、驗證方式及其他相關資訊,這份資訊稱作IKE SA。 • 第二階段:設置安全協議(SA) 利用第一階段所建立好的安全通訊管道去設置雙方未來執行IPSec所需要的安全協議。在此階段,雙方可視需要建立多個AH或ESP安全協議。 協商IKE SA、互相做身份認證 Router A Router B 建立安全的通訊管道 Router A Router B 經由安全的通訊管道建立IPSec所使用的SA Router A Router B IKE運作流程
8.1.2 Configure site-to-site VPN 第八章 遠端存取與身份識別 • 管理者可依公司政策的需求,建立VPN,以下介紹兩種常見的VPN建立架構: • 站台對站台 VPN 連線( Site-to-Site VPN) 又稱為路由器對路由器 VPN 連線 (router to router VPN connection) ;如左上圖所示,該方式是透過兩分處不同地區之VPN裝置(如路由器)來建立VPN Tunnel,使兩區域網路內之使用者主機可安全地透過 VPN Tunnel來傳送資料。 • 遠端存取VPN (Remote Access VPN) 如左下圖所示,遠端存取VPN提供遠端使用者的主機可經由ISP的公用網路存取公司資源,公司可將遠端存取設備委由ISP保管與維護,節省企業網路建置成本。 • 以下將介紹如何在VPN裝置(如路由器、Windows主機)啟動IPSec的服務,以建立VPN Tunnel 。 建立VPN通道,保護資料的安全性 Tunnel 美國分公司 VPN裝置 台灣總公司 Site-to-site VPN示意圖 建立VPN通道,保護資料的安全性 歐洲出差 VPN裝置 建立VPN通道,保護資料的安全性 台灣總公司 居家工作 Remote Access VPN 示意圖
8.1.2 Configure site-to-site VPN 管理者在路由器上要利用IPSec來建立site-to-site VPN時,必須先決定下列項目所需要的參數: 設定金鑰管理方式(自動、手動) 建立transform set 指定通訊時使用的協定(AH、ESP、AH+ESP) 指定運作模式(隧道、運輸) 設定安全協議(SA)的有效時間 建立access control list 建立crypto map 指定IPSec SA的產生方式 加入建立好的transform set、ACL、通訊對方的IP位址等 將crypto map應用於介面 建議管理者金鑰管理方式還是設定執行IKE金匙管理協定,如左上圖所示,管理者必須決定執行IKE金匙管理協定的路由器其相互認證方式(Pre-share key或憑證) 。 IPSec 手動 IKE 憑證 Pre-share key 金鑰管理方式的種類 第八章 遠端存取與身份識別 在cisco路由器上設定IPSec Step1-設定transform set - crypto ipsec transform-set Step2-設定IPSec安全協議有效時間 - crypto ipsec security-association lifetime Step3-建立access list -access-list Step4-建立crypto map -crypto map Step5-將crypto map應用於介面 - interface serial 0/0 - crypto map 12
設定金鑰管理方式-執行IKE金匙管理協定 金鑰管理是建立VPN Tunnel相當重要的一環,在IKE金匙管理協定認證的方式又可以分為使用Pre-share key、憑證等方式。在此我們僅介紹如何在路由器設定其執行IKE使用pre-share key的認證方式,其它認證方式的設定可參考Cisco VPN網路佈建實戰 ISBN:957-493-630-9。 左圖所示為在cisco router上執行IKE金匙管理協定的步驟: 啟動IKE 建立IKE政策 設定pre-share key認證時所需要的私密值及共享此私密值的其它路由器之IP位址。 8.1.2 Configure site-to-site VPN(金鑰管理方式) 第八章 遠端存取與身份識別 在cisco路由器上設定IKE • Step1-啟動IKE • - crypto isakmp enable • Step2-建立IKE政策 • - crypto isakmp policy num • - encryption {des|3des} • - hash {sha|md5} • - authentication {rsa-sig|rsa-encr|pre-share} • - lifetime seconds • - crypto map • Step3-設定pre-share key • - crypto isakmp key string address peer_address
啟動IKE 使用下列指令讓路由器執行IKE Router(config)#crypto isakmp enable 建立IKE政策 雙方路由器需要建立一份屬於IKE金鑰管理的SA,IKE政策讓雙方的路由器協議出共同的認證方式、加密演算法、雜湊函式以及IKESA的有效時間等。 設定pre-share key 設定雙方同意的私密值(或稱為鑰匙),及通訊對方路由器的IP位址或是名稱。 8.1.2 Configure site-to-site VPN(設定IKE) 第八章 遠端存取與身份識別 Router(config) #crypto isakmp enable 啟動IKE Router(config) #crypto isakmp policy 50 建立IKE政策,編號50是此政策的優先順序, 數值越低優先權越高 Router(config-isakmp) #authentication pre-share 認證的方式是pre-share key Router(config-isakmp) #encryption des 加密演算法用DES Router(config-isakmp) #hash md5 雜湊函式使用MD5 Router(config-isakmp) #lifetime 86400 此IKE SA的有效時間為86400秒 Router(config)#crypto isakmp key ipsec5566 address 140.125.50.5 設定pre-share key的值為ipsec5566 ,共同擁有此pre-share key主機的IP位址為140.125.50.5
Internet Router A Router B 8.1.2 Configure site-to-site VPN(設定transform set) 第八章 遠端存取與身份識別 • 設定transform set • transform set是用來定義IPSec政策,一個transform set代表未來在VPN Tunnel可以使用的通訊協定(例如AH協定、ESP協定或AH+ESP協定)、運作模式(Transport mode、Tunnel mode)、及用於制定安全協議的相關資訊(如加解密法、雜湊函數、驗證方式等) 。 • 管理者可以在路由器設定多組的transform set,之後雙方的路由器再利用各自建立的transform-set來協議出共同的安全協議(SA)。 • 左圖為在cisco router上設定transform set的範例,藉由輸入crypto ipsec transform-set TS ah-md5-hmac esp-des esp-md5-hmac指令,定義一個名稱為”TS”的transform set,AH協定使用的雜湊函數為md5,驗證方式為hmac;ESP協定使用的加解密演算法為des,雜湊函數為md5,驗證方式為hmac。mode tunnel指令設定IPSec運作模式為tunnel 。 Router(config)#crypto ipsec transform-set TS ah-md5-hmac esp-des esp-md5-hmac Router(cfg-crypto-tran)#mode tunnel 設定transform set AH 和ESP協定的種類
設定安全協議(SA)的有效時間 雙方路由器執行IKE的第二階段,除了協商未來執行IPSec所需要的安全協議(SA)之外,同時也協商了此SA的有效時間或容許的資料傳輸總量。 左圖為在cisco router上設定SA有效時間的範例,藉由輸入crypto ipsec security-association lifetime seconds 86400指令,設定SA的有效時間為86,400秒(一天),但是此SA對於IPsec資料沒有傳輸總量的限制。 8.1.2 Configure site-to-site VPN(設定安全協議(SA)) 第八章 遠端存取與身份識別 Internet Router A Router B Router(config)# crypto ipsec security-association lifetime { seconds seconds | kilobyteskilobytes } Router(config)# crypto ipsec security-association lifetime seconds 86400 設定安全協議的有效時間
建立access control list (ACL) 管理者可以依據公司的政策決定那些主機一定要使用VPN在網路上傳送資料;管理者是利用擴充存取控制清單(extended access control list),告知路由器那些主機的封包在送出去之前,路由器要確認與接收端已建立好VPN,再將封包經由VPN安全通道送達接收端。 左圖為在cisco router上設定ACL的範例,藉由輸入access-list 101 permit tcp 10.0.1.0 0.0.0.255 10.0.2.0 0.0.0.255指令,告知路由器當轉送封包的來源端IP位址是屬於10.0.1.0~ 10.0.1.255的範圍之內,目的端IP位址是屬於10.0.2.0~10.0.2.255的範圍之內,且為TCP封包,路由器必須將滿足上述條件之封包經由VPN安全通道送達接收端。 8.1.2 Configure site-to-site VPN(欲加密的資料流) 第八章 遠端存取與身份識別 Router A Router B Internet 10.0.1.3 10.0.1.0 加密 10.0.2.0 10.0.2.3 Router(config)# Access-list access-list-number [dynamic dynamic-name [timeout minutes]] {deny | permit} protocol Source source-wildcard destination destination-wildcard [precedence prece dence ][ tos tos][log] Router(config)# access-list 101 permit tcp 10.0.1.0 0.0.0.255 10.0.2.0 0.0.0.255 建立access control list
8.1.2 Configure site-to-site VPN(設定crypto map) 第八章 遠端存取與身份識別 • 建立crypto map • Crypto map 讓管理者將之前為了建立VPN所設定的項目整合成一個集合,例如指定IPSec SA的產生方式,整合建立好的transform set、ACL、通訊對方的IP位址等項目成為一個集合,並給予一個名稱;之後路由器若有多個介面(interfaces)在建置VPN時,都是用同樣的安全政策,則管理者只需設定一個Crypto map即可應用至多個介面。 • 左上圖為在cisco router上建立crypto map的範例,藉由輸入crypto map MyMap 90 ipsec-isakmp指令,設定一個Crypto map名稱為MyMap,執行IKE以產生IPSec SA;之後的指令match address 101限制滿足access-list 101條件之封包需經由VPN安全通道送出; set peer 172.30.2.2及 set peer 172.30.3.2指定VPN安全通道另一端的路由器其IP位址必須是172.30.2.2或172.30.3.2;set transform-set TS指定VPN安全通道使用的加密/認證協定。 • 將crypto map應用於介面 • 左下圖為在cisco router的ethernet 0/1介面建置VPN所使用的指令,首先輸入interface ethernet 0/1進入config-if模式後,再輸入crypto map MyMap,ethernet 0/1介面即具有提供vpn服務的功能。 Router A Router B Internet 172.30.2.2 10.0.1.3 Router C 10.0.2.3 172.30.3.22 RouterA(config)#crypto map MyMap 90 ipsec-isakmp RouterA(config-crypto-map)#match address 101 RouterA(config-crypto-map)#set peer 172.30.2.2 RouterA(config-crypto-map)#set peer 172.30.3.2 RouterA(config-crypto-map)#set transform-set TS 建立crypto map RouterA(config)# interface ethernet 0/1 RouterA(config-if)#crypto map MyMap 將crypto map應用於介面 註1:擴充存取清單(extended access list),規定編號為100~199
8.1.3 Remote access VPN 第八章 遠端存取與身份識別 • 遠端存取VPN (Remote Access VPN) 為了要讓公司員工可以安全地在任何地方遠端存取企業資訊,如左圖所示,管理者可以在公司內部架設一VPN伺服器,並要求員工在自己的電腦上安裝VPN客戶端的相關軟體;之後可經由ISP的網路建立VPN通道連線至公司的內部網路。以下將介紹如何使用Windows XP架設VPN伺服器及VPN客戶端。 • 架設VPN伺服器 使用Windows XP架設VPN伺服器的主機必須要安裝兩張網卡(分別連接外部網路及內部網路),並且先將兩張網卡的IP位址及相關參數設定好;之後再設定下列的項目: • 設定VPN伺服器要使用的安全通訊協定(PPTP、L2TP或IPSec) ,若管理者不設定, Windows XP將自動啟用PPTP安全通訊協定。 • 設定遠端VPN client的權限。 安全的通訊管道 Internet Remote user VPN伺服器 VPN客戶端 遠端存取VPN之示意圖
8.1.3 Remote access VPN(VPN Server) 架設VPN伺服器 經由【控制台】【網路連線】將出現如下左圖之畫面,在連接外部網路的區域連線icon按右鍵後點選【內容】,出現如下右圖之畫面,點選【進階】,出現下一頁之畫面。 第八章 遠端存取與身份識別 20
8.1.3 Remote access VPN(VPN Server) 架設VPN伺服器 在下左圖之畫面點選【允許其他網路使用者透過這台電腦的網際網路連線來連線(N)】,按【確定】,出現如下右圖之畫面,表示連接外部網路的區域連線已被設定為一共用的狀態,這時就可以使用連線精靈來設定VPN伺服器所需的資訊。 第八章 遠端存取與身份識別 21
8.1.3 Remote access VPN(VPN Server) 使用連線精靈來設定VPN伺服器 如下圖所示,管理者點選【建立一個新連線】,出現”新增連線精靈”畫面。 第八章 遠端存取與身份識別 22
8.1.3 Remote access VPN(VPN Server) 使用連線精靈來設定VPN伺服器 在上一頁所顯示的”新增連線精靈”畫面按【下一步】,將進入如下左圖之畫面,點選【設定一個進階的連線(E)】、按【下一步】,出現如下右圖之畫面,點選【接受連入連線 (A)】,讓VPN Client端可以連入此台電腦,按【下一步】,出現下一頁之畫面。 第八章 遠端存取與身份識別 23
8.1.3 Remote access VPN(VPN Server) 使用連線精靈來設定VPN伺服器 下左圖為一Optional步驟,管理者可以選擇VPN Client所使用的裝置,按【下一步】,將進入如下右圖之畫面,點選【允許虛擬私人連線(A)】,作業系統將設定防火牆可以通過VPN的封包,按【下一步】,出現下一頁之畫面。 第八章 遠端存取與身份識別 24
8.1.3 Remote access VPN(VPN Server) 使用連線精靈來設定VPN伺服器 - 設定遠端VPN client的權限 如下所示,管理者可以建立遠端使用者的帳戶並給予連線的權限,勾選該名使用者代表允許他的主機可以執行VPN client的軟體連入VPN Server。管理者點選【新增】,出現”新增使用者”的對話方塊,在此對話方塊設定遠端使用者名稱及密碼,按【下一步】,出現下一頁之畫面。 第八章 遠端存取與身份識別 25
8.1.3 Remote access VPN(VPN Server) 使用連線精靈來設定VPN伺服器 - 設定VPN client連入VPN Server取得IP位址的方式 在下左圖之畫面選取【 Internet Protocol (TCP/IP)】後點選【內容】,將進入如下右圖之畫面,在網路存取選項勾選【允許來電者存取我的區域網路】表示同意VPN Client可以存取VPN Server所位於的區域網路;在TCP/IP位址指派的選項可以勾選【使用DHCP自動指派TCP/IP位址】、或是【指定TCP/IP位址】(管理員必須輸入VPN Server指派給VPN Client的IP位址範圍)、或是【允許撥號電腦指定它自己的IP位址】(不建議使用) ,按【下一步】,出現完成新增連線精靈之畫面,按【完成】,結束架設VPN伺服器的流程。 第八章 遠端存取與身份識別 26
架設VPN客戶端 使用Windows XP架設VPN客戶端的主機可以使用”新增連線精靈”,來建立與伺服端連線的VPN通道。如下圖所示,使用者可經由【控制台】【網路連線】網路工作內點選【建立一個新連線】,出現”新增連線精靈”畫面。 8.1.3 Remote access VPN(VPN Client) 第八章 遠端存取與身份識別
8.1.3 Remote access VPN(VPN Client) 使用連線精靈來建立VPN連線 在上一頁所顯示的”新增連線精靈”畫面按【下一步】,將進入如下左圖之畫面,點選【連線到我工作的地方的網路】、按【下一步】,出現如下右圖之畫面,點選【虛擬私人網路連線(V)】、按【下一步】,出現下一頁之畫面。 第八章 遠端存取與身份識別 28
8.1.3 Remote access VPN(VPN Client) 使用連線精靈來建立VPN連線 在下左圖之畫面輸入公司名稱、按【下一步】 ,將進入如下右圖之畫面,輸入VPN伺服器的IP位址、按【下一步】 ,出現下一頁之畫面。 第八章 遠端存取與身份識別 29
8.1.3 Remote access VPN(VPN Client) 使用連線精靈來建立VPN連線 在下左圖之畫面按【完成】,將進入如下右圖之畫面,輸入使用者名稱及密碼,即可以VPN伺服器建立連線。 第八章 遠端存取與身份識別 30
在現今網路的世界中,要用來確認身份最普遍也最簡單的方式就是要求使用者輸入名稱(user name)及密碼(password);這樣的方式很容易遭到有心人士盜取合法使用者的密碼。本節要介紹目前被提倡的身分認證方式: One time password Digital Certificates Biometrics 身分識別 第八章 遠端存取與身份識別 傳統的身分認證方式: 輸入帳號及密碼
8.2.1 One time password and Token card 第八章 遠端存取與身份識別 • One time password(只用一次的密碼) • One time password顧名思義就是此組密碼用過一次就會丟棄,這樣子的方法既可以避免使用者忘記密碼,也不必考慮密碼在網路傳送過程被竊聽的問題,因為即使有心人士竊聽到只用一次的密碼,也無法使用。 • One time password 已經漸漸普及,目前有許多銀行在推動”web-ATM”或是稱作網路銀行,銀行的用戶只需要購買一台Smart card的讀卡機,再插入其提款卡,如左圖所示,就可以利用網路即時轉帳、進行線上交易等的網路服務,使用one time password就不需要擔心銀行帳戶所使用的密碼被有心人士竊聽。 華南銀行的密碼保鏢 RFC 2289 One time password
8.2.1 One time password and Token card 第八章 遠端存取與身份識別 • One time password的運作方式 一般的作法是系統配給每位合法的使用者一片IC卡,該IC卡外型可類似一簡易型的計算器(calculator),具有輸入阿拉伯數字(0,1,2, …,9)的功能,內部執行一可產生亂數(random number)的演算法。該演算法可用下列式子表示之:F: (C, S) N 執行該演算法時,必須輸入兩個參數C及S (C是系統在使用者登入時動態產生的一隨機值,而S則是系統事先植入在IC卡上的一固定不變的種子值(seed number) );該演算法執行完畢則產生一與C及S有關的亂數值。該亂數值即被用來當作只用一次的密碼。 • 左圖說明使用者如何用”只用一次的密碼”的方式來登入系統:使用者必須先向系統管理員申請一片IC卡,帶著這片IC卡,使用者可以利用網路隨時隨地作遠端登入的動作。與傳統的登入過程不同的是:當使用者輸入名稱後,不能馬上輸入密碼,必須等待系統傳回一隨機值(又稱邀請值(challenge));使用者收到隨機值C之後,將C輸入IC卡(注意不用輸入S因為S已被嵌入在IC卡內),當IC卡產生一與C及S有關的亂數值後,則將該亂數值當作密碼傳回給系統作身份驗證。 One time password的登入過程
8.2.1 One time password and Token card 系統處理” One time password”的過程 左圖說明當使用者利用”One time password”的登入方式,系統必須配合執行相對應的措施:系統必須事先建置一資料庫或檔案,上面記錄每個合法使用者的名稱、該使用者IC卡上的種子值、IC卡上所執行的演算法。當系統傳出隨機值後,系統也必須模擬IC卡計算出正確的密碼,待使用者傳回密碼後與自行算出的密碼比較,相同則為合法的使用者,不同則拒絕該使用者登入系統。 第八章 遠端存取與身份識別 系統處理” One time password”的流程 34
8.2.2 Digital Certificates 第八章 遠端存取與身份識別 • Digital Certificates 在網路上若要利用RSA的加解密技術以產生數位簽章的功能,使用者必須先自行產生一對鑰匙(P,S),並將其公開鑰匙P公告天下,這樣的方式讓有心人士極易進行其假冒行為;如使用者Ted要假冒Paul,Ted先產生一對鑰匙(Pted,Sted),之後告訴大家Paul的公開鑰匙是Pted,Ted再用其私有鑰匙Sted產生數位簽章,如此一來Ted遂可達到假冒Paul的數位簽章之行為。這樣的假冒行為,在我們的日常生活是經常遇到的,例如我們常用印章來代表個人,但是有心人隨時可用你的名字去刻個印章來假冒你,因此為了避免印章被濫用,我們需到戶政事務所去申請印鑑證明,必要的時候(如買賣房屋)出示印鑑證明以證明該印章確實為你所有。 在網路上使用者的公開鑰匙要有公信力,使用者必須向某些具有公權力的機構(稱作認證中心,Certificate Authority ,如左圖所示),申請電子證書(Digital Certificate);電子證書是用來證明某公開鑰匙確實為某人或某網路設備所擁有。 台灣網路認證公司 http://www.taica.com.tw/
8.2.2 Digital Certificates 第八章 遠端存取與身份識別 • Digital Certificates 產生程序 電子證書的產生程序如左圖,步驟如下 • 依據申請者提供的資料產生一未加認證中心簽章的電子證書。 • 利用雜湊函式對電子證書的內容計算出證書的摘要(digest)。 • 認證中心使用自己的私有鑰匙對證書摘要做加密,產生證書簽章。 • 將步驟一產生的證書和步驟三產生的簽章組合起來,便成為具身分認證功能的電子證書。 • 將電子證書傳送給使用者。 一般而言電子證書中會有以下的資訊: • 使用者的公開金鑰。 • 使用者的資訊,如名稱和電子郵件地址。 • 憑證的有效期間 。 • 發照者識別碼資訊。 • 發照者的數位簽章。 申請人資訊 申請人:George 認證中心 5 George George 組合 1 4 RSA 加密 雜湊函式 3 2 產生電子證書程序
8.2.2 Digital Certificates 第八章 遠端存取與身份識別 • Digital Certificates 驗證程序 左圖範例為George送出一George私鑰所加密的訊息及George的電子證書給Mary。Mary要用以下步驟正確的獲得George公鑰並且確認其公鑰為George所擁有: • Mary將電子證書分離為認證中心的簽章與無簽章的電子證書。 • 用雜湊函式算出證書的摘要 • 利用認證中心的公鑰對簽章解密,復原為證書摘要。 • 將步驟二與步驟三的結果做比對,若完全相同則表示證書為認證中心所核發。 利用此方式,電子證書只需要在第一次交換資訊時送出即可,Mary在確認公鑰確實為George所有時,以後便可利用此公鑰來確認訊息的來源性及完整性。 George Mary 1 2 3 George George 放棄此訊息 雜湊函式 RSA 解密 相異 比較 4 相同 取出George的公開鑰匙 Digital Certificates 驗證程序
8.2.3生物辨識Biometrics Biometrics 人體有許多特徵是獨一無二的,因此可以應用在身份認證上;目前生物辨識的技術種類繁多,如左圖所示,指紋辨識技術最為純熟,而臉型辨識的成長率最為快速,眾多生物辨識技術中以虹膜辨識的準確度最高,且未來的生物辨識不會依賴單一的生物特徵。 指紋辨識 指紋辨識是目前生物辨識中最成熟的技術,利用每個人手上獨一無二的紋路,經由感應器掃描轉換為點圖來比對身分。使用指紋辨識的缺點就是由於雙手是經常使用的器官,倘若有外傷出現,辨識結果就會不準確,此外,對於指紋辨識器而言,感應器經常被觸碰也可能會降低壽命。 臉部辨識 臉部辨識利用五官的距離、膚色還有輪廓的深淺來辨識身分,因為人臉是立體的,因此臉部辨識是一種三維物體的辨識技術。 虹膜辨識 虹膜辨識的原理是利用人體虹膜上的特徵組合特徵來區分其身分,虹膜辨識的辨識度比指紋與臉部變識都來的高,虹膜辨識的缺點就在於使用專用的儀器設施昂貴以及掃描虹膜可能會造成眼睛的不舒服感。 遠端存取與身份識別 參考來源:ITIS產業觀察,在全球生物辨識的成長巨流中發掘新契機(I)~技術市場篇,工研院IEK-ITIS計畫 王榛驛 分析師 38
參考資料 Cisco VPN網路佈建實戰。 網路安全與管理,作者:伍麗樵、陳世仁。 電子工程專輯(http://www.eettaiwan.com/)。 Microsoft Technet(http://www.microsoft.com/taiwan/technet/default.mspx)。 VPN虛擬私有網路之應用 作者:資策會 網路及通訊實驗室 林宸堂,(http://www.iii.org.tw/ncl/document/VPN-1.html)。 RFC Web-site http://www.rfc-editor.org/ 。 TWCERT 台灣電腦網路危機暨處理協調中心 (http://www.cert.org.tw/index.php)。 第八章 遠端存取與身份識別 39