SIFT / KNOWLEDGE BASE

知识 Wiki 总览 / VPN

IPsec与IKEv2

更新于 2026-11-07条目链接

IPsec 是一组在 IP 层保护流量的标准。IKEv2 是用于协商安全关联、验证对端并管理密钥的密钥交换协议;数据报文通常由 Encapsulating Security Payload(ESP)保护。IPsec 策略规定哪些流量进入安全关联,服务端证书或共享凭据则建立身份信任。

连接过程概览

  1. 客户端根据配置解析并连接 VPN 网关。
  2. IKEv2 协商密码套件、密钥材料和对端身份验证方式。
  3. 双方建立一个或多个用于数据流量的 ESP 安全关联。
  4. 操作系统安装隧道地址、目标路由、DNS 与防火墙策略。

经 NAT 的网络通常使用 UDP 4500 进行 NAT traversal;IKE 通常使用 UDP 500。未经过 NAT traversal 封装的 ESP 是 IP 协议号 50,不是 TCP 或 UDP 端口。实际端口和模式应以服务器配置为准。

Windows 原生客户端配置

以下命令建立 IKEv2 用户级配置。EAP 类型、服务端证书、域和授权策略必须与 VPN 管理员提供的信息相符。

Add-VpnConnection -Name "Corp-IKEv2" -ServerAddress "vpn.example.net" -TunnelType Ikev2 -AuthenticationMethod Eap
Get-VpnConnection -Name "Corp-IKEv2"

macOS 已配置服务

在系统设置中先配置服务端地址、Remote ID、认证方式和证书;随后可以列出并连接已有 VPN 服务。

scutil --nc list
scutil --nc start "Corp IKEv2"

Linux strongSwan 管理命令

以下命令操作已写入 /etc/swanctl/swanctl.conf 的连接;证书、私钥、CA、身份和 traffic selector 需要预先按服务器要求配置。

sudo swanctl --load-conns
sudo swanctl --list-conns
sudo swanctl --initiate --child corp

安全核验

客户端必须验证服务端身份并拒绝不受信任的证书。不要为绕过证书错误而关闭身份验证。组织网络应限制获准的内网前缀、服务端口和用户设备范围。

参考资料

RFC 7296:IKEv2;RFC 4301:IPsec 安全架构;NIST SP 800-77 Rev. 1:IPsec VPN 指南;strongSwan:swanctl.conf。