網路安全

網際網路協定安全(IPsec)

/ EYE-pee-sec /

TLS 一次保護一條連線,而且只保護那些被寫成會用它的應用程式。但有時你想保護兩地之間的一切——每個程式的每個封包,自動地——而不需要每個應用程式知道或在意。IPsec 透過在網路層做保護來達成這件事:它包裝並保護 IP 封包本身,因此這份保護對其上的應用程式是隱形的。把它想成替信封加裝甲,而不是要每個寫信的人各自封好自己的信。

IPsec 是一套為 IP 加上機密性、完整性與鑑別的協定組。它的主力是 ESP(封裝安全酬載),負責加密並鑑別封包內容;還有 AH(鑑別標頭),只提供完整性與來源鑑別。它有兩種模式:傳輸模式保護兩台主機之間 IP 封包的酬載,而隧道模式則把整個原始封包包進一個新封包裡——用來在閘道之間建立安全隧道,這正是許多 VPN 的核心。在任何資料流動之前,兩個端點會跑一個金鑰交換協定(IKE)來彼此鑑別、並協商金鑰與參數,記錄在一個安全關聯(security association)裡。

為什麼重要:因為 IPsec 在 IP 層做保護,它能透明地保護兩個網路或主機之間的所有流量——一家公司能把兩個辦公室透過公開網際網路連起來,彷彿它們共用一條私線,裡面每一種協定都同時受保護。這就是為什麼它是站對站與遠端存取 VPN 的標準基礎。相對於 TLS 的取捨:IPsec 強大而全面,但配置起來出了名的複雜,而且因為它在網路層,會與 NAT 和中間盒互動得很彆扭。位置較高的 TLS,按應用程式部署較簡單——這就是為什麼網路選了 TLS,而 VPN 常選 IPsec。

一家公司的兩個辦公室在它們的閘道之間建立一條 IPsec 隧道。離開一個辦公室的每一個封包——電子郵件、檔案共享、內部應用程式——在穿越公開網際網路之前都被加密並包裝(隧道模式),到另一端再拆開。這兩個辦公室表現得像一個私人網路,對每個程式都是透明的。

在 IP 層保護:每個封包都加上裝甲,應用程式渾然不覺。

IPsec 保護的是端點之間的通道,而非在兩端解密後的資料——和 TLS 一樣,它保護旅程而非主機。而它在網路層的位置使它強大卻複雜,且在歷史上與 NAT 相處得很彆扭。

又称
IP SecurityInternet Protocol Security網際網路協定安全IP 安全