第二部分:使用 VPN Wizard 配置 IPSec 隧道
第二部分:使用 VPN Wizard 配置 IPSec 隧道
完成现有 SSL VPN 用户认证方式识别并确认 IPSec 支持要求后,可以开始迁移到 IPSec VPN。
IPSec 隧道可以通过 GUI VPN Wizard、GUI 自定义 IPSec 配置或 CLI 配置。这里使用 VPN Wizard 创建 IPSec 隧道。通过 VPN Wizard 指定的隧道参数后续仍可自定义,例如修改 IKE 版本、IKE 模式、安全关联(SA)和其他细粒度设置。
配置 VPN Wizard
- 在 FortiGate 进入“VPN → VPN Wizard”。
- 配置以下选项,并点击 Begin:
| 配置项 | 说明 |
|---|---|
| Tunnel name | 输入 VPN 隧道名称,最长 15 个字符 |
| Select a template | 选择 Remote Access |
VPN 隧道
配置以下选项并点击 Next:
| 配置项 | 说明 |
|---|---|
| VPN client type | 选择 FortiClient;如果终端使用其他 VPN 客户端,可选择 iOS、Android/Windows 或 Cisco |
| Authentication method | 选择 Pre-shared key 或 Signature |
| IKE | 按需求选择 IKEv2 或 IKEv1;如需 TCP 传输,必须选择 IKEv2 |
| Transport | UDP、Auto 或 TCP encapsulation;TCP encapsulation 仅 IKEv2 可用 |
| Use Fortinet encapsulation | FortiClient 不支持 Fortinet 封装,应保持 Disabled |
| NAT traversal | 中间存在 NAT 设备时启用;IKEv1 下可选择 Forced |
| Keepalive frequency | NAT traversal 为 Enabled 或 Forced 时可用,默认 10,用于隧道空闲时维持中间 NAT 会话 |
| EAP peer identification | IKEv2 下使用 EAP 认证时选择 EAP identity request |
| User authentication method | 选择用户组,或从防火墙策略继承 |
| DNS Server | 使用系统 DNS 或手工指定 DNS |
| Enable IPv4 Split Tunnel | 启用后只有 Local address 中的流量进入隧道;关闭后所有远程用户流量进入隧道 |
Authentication method:
- Pre-shared key:创建唯一预共享密钥,所有 FortiClient 终端使用该密钥连接 VPN。
- Signature:使用用户证书认证远程用户。需要设置 Certificate Name 作为 VPN Gateway 身份证书,并设置 Peer Certificate CA 为签发 FortiClient 终端证书的 CA。服务器证书和 Peer CA 都必须提前导入 FortiGate。
User authentication method:
- 单用户组:如果当前 SSL VPN Authentication/Portal Mapping 使用单一用户组,选择 Phase 1 interface,并从下拉框中选择该用户组。
- 多用户组:如果当前 SSL VPN Authentication/Portal Mapping 使用多个用户组,选择 Inherit from policy,并选择这些用户组。VPN Wizard 会自动把这些用户组加入对应 IPSec 防火墙策略的 User/Group 字段。
如果启用 Split tunneling,并且指定的 DNS Server 位于 FortiGate 后方,需要确保该 DNS Server 可以通过 Local interface 访问,并且地址属于 Local Address 范围。
远程端点
配置以下选项并点击 Next:
| 配置项 | 说明 |
|---|---|
| Addresses to assign to connected endpoints | 分配给拨号客户端的地址范围 |
| Subnet for connected endpoints | 建议配置为 255.255.255.255,因为地址分配给单个客户端 |
| Security posture gateway matching | 可选,选择所需 Security posture tag |
| Save Password | 允许 VPN 客户端保存 XAuth 用户名和密码,默认启用,对应 set save-password enable |
| Auto Connect | 允许客户端在无流量时拉起隧道,默认关闭,对应 set client-auto-negotiate disable |
| Always up(keepalive) | 允许客户端在无流量时保持隧道,默认关闭,对应 set client-keep-alive disable |
VPN Wizard 只会使用 Mode Config 和地址范围创建隧道。如果需要其他地址分配方式,可以在 Wizard 创建后自定义。
可以使用不同于原 SSL VPN 的地址范围,避免 IP 地址重叠。
本地 FortiGate
配置以下选项并点击 Next:
| 配置项 | 说明 |
|---|---|
| Incoming interface that binds to tunnel | 与 SSL VPN Settings 中的 Listen on interface 对应 |
| Create and add interface to zone | 如需将接入接口划入 Zone 则启用,否则关闭 |
| Local interface | VPN 用户访问的内部接口,对应原 ssl.root 到目的接口的防火墙策略 |
| Local address | VPN 用户允许访问的内部网段,对应原 ssl.root 到目的地址的防火墙策略 |
如果在 VPN tunnel 部分启用了 IPv4 Split Tunnel,Local Address 中的网段会用于分离隧道。
配置确认
提交前检查 VPN Wizard 将创建的对象,然后点击 Submit:
| 类型 | 对象 |
|---|---|
| Addresses | Split address group,作为允许访问的目的地址组,并用于 Split tunneling |
| Addresses | Address,作为 VPN 客户端地址范围 |
| Interfaces | VPN IPsec Phase 1 interface |
| Interfaces | VPN IPsec Phase 2 interface |
| Interfaces | Zone,如启用了 Zone 创建 |
| Policies | Remote to local policies |
| Peer | 如果认证方式为 Signature,会创建或引用 PKI Peer |
VPN Wizard 会生成所需配置、对象和策略。可进入“VPN → IPsec tunnels”查看新建隧道。
使用 TCP 作为传输方式
拨号 IPSec VPN 传统上依赖 UDP,现在可以使用默认 TCP/443。该能力可以让 FortiClient 的 VPN 流量穿越只允许 TCP 流量的限制性防火墙。
该功能要求:
- IPSec 隧道使用 IKEv2。
- FortiClient 也配置为使用 TCP 传输。
- FortiClient 版本为 7.4.1 或更高。
通过 GUI 配置 TCP 传输:
- 进入“VPN → IPsec Tunnels”,编辑对应 IPSec 隧道。
- 确认 IKE 为 Version 2。
- 将 Transport 设置为 TCP encapsulation。
- 点击 OK。
通过 CLI 配置 TCP 传输:
config vpn ipsec phase1-interface
edit <tunnel-name>
set transport tcp
next
end查看 FortiGate 默认 IKEv2 TCP 端口:
show full-configuration system settings | grep ike-tcp示例输出:
set ike-tcp-port 443可选:将默认 TCP 端口改为 5500:
config system settings
set ike-tcp-port 5500
endike-tcp-port <port> 用于设置 IKE/IPSec 流量的 TCP 端口,范围 1-65535,默认 443。
重要
当 IKE/IPSec 使用 TCP/443,且 GUI HTTPS 管理端口也使用 443 时,绑定 IPSec 隧道的接口可能影响 GUI 管理访问。此时应修改 IKE/IPSec 端口或管理访问端口。
config system global
set admin-sport <port>
end如果与 ZTNA 或 SSL VPN 端口冲突,ZTNA 和 SSL VPN 优先。应检查 FortiGate 上其他入站服务端口,避免端口冲突。
后续步骤
根据需求,可能还需要编辑 VPN Wizard 创建的 IPSec 隧道设置。常见自定义包括 Peer ID/Network ID,以及 Phase 1 和 Phase 2 Proposal。