🗺️ 資安考證地圖
iPAS 資訊安全工程師・互動教學

安全通道:TLS 交握、憑證與 VPN

資料離開你的電腦後,要經過基地台、電信業者和一連串別人的設備。這一頁一步一步拆開 HTTPS 與 VPN,看它們怎麼在不可信的網路上建立一條只有兩端看得懂的通道,以及每一段還剩下什麼會被看見。

TLS 交握逐步播放(1.2 與 1.3) 憑證警告的四種常見原因 AH/ESP 與傳輸/通道模式

💡 先搞懂問題

網際網路最早是研究機構之間互相信任的網路,很多老協定根本沒考慮有人偷聽。Telnet 遠端登入、FTP 傳檔、HTTP 網頁,都把帳號、密碼與內容用原文直接送出去,這種傳輸方式叫明文(Plaintext)。問題在於,一個封包從你的筆電到網站伺服器,途中會經過咖啡廳的基地台、網路服務供應商(ISP)的路由器、跨縣市甚至跨國的骨幹設備,只要其中任何一個點被人監聽,明文就一覽無遺。

下面這張圖可以點每一個節點,看看資料在那裡長什麼樣子,再切換成加密通道比較。

一個比喻:運鈔車

銀行運送現金時,不會把錢放在一般貨車上沿路停靠,而是用上鎖的運鈔車。出發交接前,押運人員還要核對對方出示的識別證,而識別證之所以可信,是因為它由大家都認可的單位核發。運鈔車有一個限制:它只負責路上這一段,錢送到金庫之後怎麼保管,不在它的責任範圍內。

運鈔車 安全通道(TLS/VPN) 上鎖的車廂 用會話金鑰加密內容 交接前核對識別證 驗證伺服器憑證 識別證由公認單位核發 憑證由受信任的 CA 簽發 只保護運送途中 不保護兩端的裝置
滑鼠移到任一列可以高亮對應關係。最後一列是比喻和真實世界共同的限制。

回到資安,TLS(Transport Layer Security,傳輸層安全協定)和 VPN(Virtual Private Network,虛擬私人網路)就是那台運鈔車。上鎖的車廂對應用對稱金鑰加密傳輸內容;核對識別證對應瀏覽器驗證伺服器的數位憑證(Digital Certificate),確認對面真的是它宣稱的網站;識別證的核發單位,對應簽發憑證的憑證機構(Certificate Authority,CA)。HTTPS 就是 HTTP 放進 TLS 通道裡傳送,預設使用 443 埠。

比喻容易誤導的地方有兩個。第一,真正的 TLS 不需要事先把鑰匙交給對方,雙方是在公開網路上當場協商出一把只屬於這次連線的金鑰,這一段靠的是非對稱密碼學;公鑰、私鑰各自該怎麼用,可以參考〈誰用誰的金鑰〉那一頁。第二,運鈔車上路一眼就看得出來,加密通道其實也一樣:竊聽者看不到內容,卻看得到「有人在連某個地方」,下面的實驗室會讓你看清楚,哪些資訊通道藏不住。

🎮 互動實驗室 1:TLS 交握逐步播放

瀏覽器連上 https://shop.example.com 時,真正的網頁資料送出前,雙方要先完成一段「交握」(Handshake)。按「▶ 下一步」讓訊息一則一則飛過去,右邊會說明這一步在做什麼,以及站在線路中間的竊聽者 Eve 看得到什麼。可以切換版本比較,也可以讓 Eve 試著冒充伺服器。

步驟 0

準備開始

按「▶ 下一步」開始。左圖的上方是瀏覽器與伺服器,中間紅色虛線是 Eve 監聽的位置。灰色箭頭是明文訊息,紫色箭頭是已加密的訊息。

Eve 在線路上看得到
  • 目前還沒有任何封包。

畫面時序圖由上往下是時間。右側的括號會標出每一趟往返,往返越少,網頁開得越快。

🎮 互動實驗室 2:憑證檢查員

瀏覽器每次連上 HTTPS 網站,都會替你做一次憑證檢查。現在換你來:看網址列和伺服器送來的憑證,判斷瀏覽器會不會跳出警告,如果會,原因是什麼。右邊的信任鏈圖可以點選各層看說明,作答後會標出哪一環出了問題。

第 1/6 張

畫面點圖上的任一層,看它在信任鏈中的角色。

🎮 互動實驗室 3:封包透視鏡

同一個「登入購物網站」的動作,走不同的通道,竊聽者能看到的東西差很多。第一個頁籤比較 HTTP、HTTPS 與 VPN;第二個頁籤拆開 IPsec 的封包結構。

點圖上的線段編號,把竊聽者放到那一段。

竊聽者看得懂的內容看得到的位址資訊已加密,看不懂

安全協定
模式

欄位點上方封包中的任一格,看它是什麼。

🎮 互動實驗室 4:明文協定換裝

左邊是會把帳密或內容以明文送出的老協定,右邊是它們的加密替代方案。先點左邊一張,再點右邊你認為對應的那張。配對成功後會顯示預設埠號,以及舊協定到底危險在哪。

不安全的明文協定

加密的替代方案

已配對 0/7配錯 0 次

畫面先從左邊選一張協定卡。

📘 原理補完

TLS、IPsec、Wi-Fi 加密:各自在哪一層、保護哪一段

同樣叫「加密」,保護的範圍可能完全不同。判斷的方法是看它在網路分層的哪一層運作,以及由哪兩個端點協商金鑰。點下面的按鈕,上半部會標出所在的分層,下半部標出實際被保護的路段。

TLS 位在傳輸層之上、應用層之下,由應用程式自己呼叫,所以只保護那一個應用程式的那一條連線。IPsec 在網路層運作,作業系統把符合條件的 IP 封包全部送進通道,不管是哪個程式發出的,這就是「TLS 保護單一應用、VPN 保護整段網路流量」的由來。Wi-Fi 的 WPA2、WPA3 則在資料連結層,只保護筆電到基地台之間的無線電波,封包進入有線網路後就恢復原狀,細節可以看地圖上的無線網路安全節點。

TLS 1.2 與 TLS 1.3 的差別

項目TLS 1.2TLS 1.3
完整交握往返2 次1 次
金鑰交換RSA 或 (EC)DHE 都可以只剩 (EC)DHE,一律具備前向保密
憑證在線路上明文加密後才送
加密套件可選 CBC 等舊式組合,弱套件(如 RC4)要自行停用只保留 AEAD 類,例如 AES-GCM、ChaCha20-Poly1305
TLS 1.2 TLS 1.3 用戶端 伺服器 用戶端 伺服器 Hello 金鑰交換 資料 Hello+公開值 資料 2 次往返後才送資料 1 次往返後就送資料
灰色是明文交握,紫色是已加密的交握,綠色是應用資料。

TLS 1.3 省下一趟的關鍵,是用戶端在第一則 ClientHello 就先猜好金鑰協商方式並附上公開值,不必等伺服器回話。它同時拿掉了以 RSA 直接加密傳送金鑰材料的做法,理由是前向保密(Forward Secrecy):使用臨時 Diffie-Hellman 時,每次連線的金鑰用完即丟,就算伺服器的長期私鑰日後外洩,過去被錄下的連線仍然解不開;RSA 金鑰交換則把所有歷史連線的安全押在同一把私鑰上。TLS 1.3 另外提供恢復連線時的 0-RTT 模式,可以在第一趟就送資料,但這些早送的資料可能被重放,只適合不會改變狀態的請求。SSL 2.0、3.0 與 TLS 1.0、1.1 都已淘汰,目前實務上以 TLS 1.2、1.3 為主。

憑證信任鏈怎麼運作

瀏覽器不可能事先認識全世界每一個網站,它只內建(或向作業系統借用)一份根憑證(Root Certificate)清單,稱為信任存放區。根 CA 平常很少直接簽網站憑證,而是簽給中繼 CA(Intermediate CA),再由中繼 CA 簽發網站憑證。瀏覽器驗證時從網站憑證往上找:誰簽了它?簽章是否正確?再往上,直到碰到信任存放區裡的某張根憑證。每一層都通過,整條鏈才算可信。

除此之外,瀏覽器還會檢查網址是否列在憑證的主體別名(Subject Alternative Name,SAN)欄位、今天是否在有效期間內。憑證若因私鑰外洩等原因提前作廢,CA 會把它列入憑證撤銷清單(CRL),或透過線上憑證狀態協定(OCSP)回報,不過各家瀏覽器實際查詢撤銷狀態的方式不盡相同。還有一點常被誤會:網址列的鎖頭只代表連線有加密、憑證和網域對得上,不代表網站經營者值得信任,釣魚網站同樣可以替自己的網域申請到合法憑證。

明文協定與加密替代

明文協定(預設埠)明文送出了什麼加密替代(預設埠)
Telnet(23)帳號、密碼與所有指令SSH(22)
FTP(21)帳號、密碼與檔案內容SFTP(22,走 SSH)或 FTPS(隱含式 990;明確式沿用 21 再升級)
HTTP(80)表單、Cookie、網頁內容HTTPS(443)
SNMP v1/v2c(161,Trap 162)當作密碼用的 community 字串與設備資訊SNMPv3(同埠,提供使用者驗證與加密)
SMTP(25)郵件內容,有時含帳密STARTTLS(郵件提交常用 587)或 SMTPS(465)
LDAP(389)目錄查詢與登入密碼LDAPS(636)
POP3(110)/IMAP(143)收信帳密與郵件POP3S(995)/IMAPS(993)

幾個細節常被拿來出題。SFTP 雖然名字像 FTP,其實是 SSH 的傳檔功能,走的是 22 埠;FTPS 才是 FTP 加上 TLS。SSH 第一次連到某台主機時,會把對方的主機金鑰記在用戶端的 known_hosts 檔案裡,之後若金鑰突然改變,SSH 會發出警告,這可能是主機重灌,也可能是中間人。STARTTLS 則是先用明文連線,再下指令升級成 TLS,如果中間人把「支援 STARTTLS」的訊息刪掉,連線可能退回明文,所以重要環境應設定成強制加密。把 Telnet 改到非標準埠號並不會讓它變安全,內容依然是明文。

IPsec:AH、ESP 與兩種模式

IPsec 是一組網路層的安全協定。雙方先用 IKE(Internet Key Exchange,UDP 500 埠)協商演算法、互相驗證身分,並建立一組安全關聯(Security Association,SA),之後才用 AH 或 ESP 保護封包。

比較項目AH(Authentication Header)ESP(Encapsulating Security Payload)
IP 協定號5150
加密(機密性)沒有有
完整性與來源驗證有,連 IP 標頭中不會變動的欄位也驗證有,但不涵蓋最外層的 IP 標頭
防重放有(序號)有(序號)
經過 NAT位址被改寫就驗證失敗可以,常搭配 NAT-T(UDP 4500)

模式決定「包多少」。傳輸模式(Transport Mode)保留原本的 IP 標頭,只保護後面的資料,外人仍知道是哪兩台主機在通訊,常用在兩台主機之間直接保護。通道模式(Tunnel Mode)把整個原始封包當成資料包起來,外面再加一個新的 IP 標頭,網路上只看得到兩端閘道的位址,Site-to-Site VPN 最常用 ESP 加通道模式。實驗室 3 的第二個頁籤可以切換四種組合,看加密範圍和驗證範圍怎麼變。

VPN 的兩種用法與兩種技術

Site-to-Site(站點對站點) 台北總部 內網 高雄分公司 內網 閘道之間的常駐通道 經過網際網路 員工電腦不用裝任何軟體,通道由兩地閘道維持。 Remote Access(遠端存取) 在家筆電 VPN 用戶端 公司閘道 公司內網 檔案、系統 使用者登入時才建立,每人一條通道。
比較Site-to-SiteRemote Access
連接對象兩個據點的閘道個人裝置到公司閘道
使用者端不必安裝軟體VPN 用戶端或瀏覽器
常見技術IPsec(ESP 通道模式)SSL VPN 或 IPsec
通道存在時間長時間常駐登入時建立、登出即斷

技術面則分 IPsec VPN 與 SSL VPN。後者的名稱沿用自早期,實際上用的是 TLS,多半走 TCP 443 埠,和一般 HTTPS 流量長得很像,容易穿越飯店、機場的防火牆與 NAT;有的產品甚至只要瀏覽器登入入口網頁就能使用特定內部系統。IPsec VPN 在網路層運作,適合把整個網段接起來,但需要 IKE 協商,遇到嚴格的防火牆可能不通。不論哪一種,VPN 都只保護裝置到閘道這一段:出了閘道的流量要靠原本的協定自己加密,而員工的筆電如果已經中毒,惡意程式一樣會沿著通道進入內網,這也是 VPN 常要搭配端點檢查與多因子驗證的原因。

容易混淆的地方

✅ 自我檢測

每題選一個答案,會立即顯示對錯與解析。已作答 0/6,答對 0

🎯 重點整理