一、前提条件
请确保你已经在腾讯云 VPC 内 创建 VPN,并完成 VPN 通道配置。
二、数据准备
这篇 IPsec VPN 配置数据举例如下:
| 配置项 | | | 示例值 |
| 网络配置 | VPC 信息 | 子网 CIDR | 10.1.1.0/24 |
| | | VPN 网关公网 IP | 159.xx.xx.242 |
| | IDC 信息 | 内网 CIDR | 172.16.0.0/16 |
| | | 网关公网 IP | 120.xx.xx.76 |
| IPsec 连接配置 | IKE 配置 | 版本 | IKEV1 |
| | | 身份认证方法 | 预共享密钥 |
| | | PSK | tencent@123 |
| | | 加密算法 | AES-128 |
| | | 认证算法 | MD5 |
| | | 协商模式 | main |
| | | 本端标识 | IP Address:120.xx.xx.76 |
| | | 远端标识 | IP Address:159.xx.xx.242 |
| | | DH group | DH2 |
| | | IKE SA Lifetime | 86400 |
| | IPsec 配置 | 加密算法 | AES-128 |
| | | 认证算法 | MD5 |
| | | 报文封装模式 | Tunnel |
| | | 安全协议 | ESP |
| | | PFS | disable |
| | | IPsec SA 生存周期(s) | 3600s |
| | | IPsec SA 生存周期(KB) | 1843200KB |
| 防火墙配置 | 接口信息 | Nameif | outside |
三、操作步骤
适用于基于 SPD 策略转发的 VPN(IKEv1)适用于基于路由转发的 VPN(IKEv1)1. 登录防火墙设备命令配置界面。 ssh -p admin@10.XX.XX.56 # 通过 SSH 命令登录防火墙配置界面。User Access VerificationUsername: adminPassword: *******Type help or '?' for a list of available commands. # 输入账号密码,进入用户模式。ASA> ASA> en Password: # 输入 enable 和设置的 enable 密码进入特权模式,该模式下只支持查看。ASA# conf t ASA(config)## 键入“config ter”进入全局模式,在该模式下进行防火墙配置。2. 配置防火墙接口。
在全局模式下配置对接腾讯云端的防火墙接口。 interface GigabitEthernet0/0 nameif outside # 定义端口的安全域名。 security-level 0 # 定义端口的安全域等级。 ip address 120.XX.XX.76 255.255.255.252 # 配置 VPN 通道本端公网 IP 地址。3. 配置 isakmp 策略。 crypto ikev1 enable outside # 在外部接口上启用 IKE。 crypto ikev1 policy 10 # 定义 ikev1 第一阶段协商使用参数,序号为10,序号越小越优先,范围为1-65535。 authentication pre-share # 配置认证方法为预共享密钥。 encryption AES-128 #配置第一阶段协商数据包封装加密算法,默认为AES-128。 hash MD5 # 为 IKE 策略指定哈希算法为 MD5,默认为 SHA。 group 2 # 为 IKE 策略指定 Diffie-Hellman 组为组2,默认为 group 2 lifetime 86400 # 指定 SA 生命周期,默认为86400秒。4. 配置预共享密码。 tunnel-group 159.XX.XX.242 type ipsec-l2l # 创建一个ipsec隧道组,type 为点到点。 tunnel-group 159.XX.XX.242 ipsec-attributes # 配置隧道组属性,并指定预共享密钥。 ikev1 pre-shared-key tencent@123 # 密钥可为1~128个字符的字母、数字或者字符串。5. 配置 IPsec 安全协议。 crypto ipsec ikev1 transform-set TS esp-aes esp-md5-hmac # 指定 IPsec 第二阶段协商的加密算法以及哈希算法。6. 配置 ACL。 access-list INTERESTING extended permit ip 172.XX.XX.0 255.255.0.0 10.1.1.0 255.255.255.0 # 配置 ACL 抓取 VPN 通道上的数据流。7. 配置 IPsec 策略。 crypto map CMAP 1 match address INTERESTING # 调用 ACL,使满足 ACL 的源网段或者目的网段的数据包在 VPN 通道上流通。 crypto map CMAP 1 set peer 159.XX.XX.242 # 将被 IPsec 保护的流量转发到的对端 VPN 公网地址,这篇此处为腾讯云 VPN 公网地址。 crypto map CMAP 1 set ikev1 transform-set TS # 为加密映射条目配置 IKEv1 协议。 crypto map CMAP 1 set security-association lifetime seconds 3600 # 配置加密密钥的生存时间。8. 启用 IPsec 策略。 rypto map CMAP interface outside # 将上一步配置的加密映射应用于外部接口。9. 配置静态路由。 route outside 10.1.1.0 255.255.255.0 159.XX.XX.242 1 # 将待加密保护的数据网段引向 IPsec 隧道,且配置下一跳为 VPN 隧道对端公网 IP。10. 测试 VPN 连通性。
执行 Ping 命令测试 VPN 的连通性。1. 登录防火墙设备命令配置界面。 ssh -p admin@10.XX.XX.56# 通过 SSH 命令登录防火墙配置界面。User Access VerificationUsername: adminPassword: *******Type help or '?' for a list of available commands.# 输入账号密码,进入用户模式。ASA> ASA> en Password: # 输入enable和设置的enable密码进入特权模式,该模式下只支持查看。ASA# conf t ASA(config)## 键入“config ter”进入全局模式,在该模式下进行防火墙配置。2. 配置防火墙接口。
在全局模式下配置对接腾讯云端的防火墙接口 interface GigabitEthernet0/0 nameif outside # 定义端口的安全域名。 security-level 0 # 定义端口的安全域等级。 ip address 120.XX.XX.76 255.255.255.252 # 配置 VPN 通道本端的公网 IP 地址。3. 配置 isakmp 策略。 crypto ikev1 policy 10 # 定义 ikev1 第一阶段协商使用参数,序号为10,序号越小越优先,范围为1-65535。 authentication pre-share # 配置认证方法为预共享密钥。 encryption AES-128 # 配置第一阶段协商数据包封装加密算法,默认为AES-128。 hash MD5 # 为 IKE 策略指定哈希算法为 MD5,默认为 SHA。 group 2 # 为 IKE 策略指定 Diffie-Hellman 组为组2,默认为 group 2 lifetime 86400 # 指定 SA 生命周期,默认为86400秒。4. 配置预共享密码。 tunnel-group 159.XX.XX.242 type ipsec-l2l # 创建一个ipsec隧道组,type 为点到点。 tunnel-group 159.XX.XX.242 ipsec-attributes # 配置隧道组属性,并指定预共享密钥。 ikev1 pre-shared-key tencent@123 # 密钥可为1~128个字符的字母、数字或者字符串。5. 配置 IPsec 安全协议。 crypto ipsec ikev1 transform-set TS esp-aes esp-md5-hmac # 指定 IPsec 第二阶段协商的加密算法以及哈希算法。6. 配置 IPsec 策略。 crypto ipsec profile PROFILE1 set ikev1 transform-set TS # 为加密映射条目指定IKEv1 ipsec安全提议 set security-association lifetime kilobytes 1843200 # 设置 SA 生命周期内,VPN之间可以传递的流量字节数。 set security-association lifetime seconds 3600 # 设置加密密钥的生命周期,默认千字节数为4,608,000;默认生命周期秒数28,800。7. 启用 IPsec 策略。 interface Tunnel100 tunnel source interface outside # 配置 VPN 的更新源为outside口。 tunnel destination 159.XX.XX.242 # 配置对端 VPN 的公网 IP 地址,本处为腾讯云 VPN 公网 IP 地址。 tunnel mode ipsec ipv4 # 配置 tunnel口 使用的协议。 tunnel protection ipsec profile PROFILE1 # 调用 IPsec 策略对经过 tunnel 口的数据进行保护。8. 配置静态路由。 route vti 10.1.1.0 255.255.255.0 159.XX.XX.242 # 将待加密保护的数据包引到 tunnel 口。9. 测试 VPN 连通性。
执行 Ping 命令测试 VPN 的连通性。
适用于基于 SPD 策略转发的 VPN(IKEv2)适用于基于路由转发的 VPN(IKEv2)1. 登录防火墙设备命令配置界面。 ssh -p admin@10.XX.XX.56# 通过 SSH 命令登录防火墙配置界面。User Access VerificationUsername: adminPassword: *******Type help or '?' for a list of available commands.# 输入账号密码,进入用户模式。ASA> ASA> en Password: # 输入enable和设置的enable密码进入特权模式,该模式下只支持查看。ASA# conf t ASA(config)## 键入“config ter”进入全局模式,在该模式下进行防火墙配置。2. 配置防火墙接口。
在全局模式下配置对接腾讯云端的防火墙接口。 interface GigabitEthernet0/0 nameif outside # 定义端口的安全域名。 security-level 0 # 定义端口的安全域等级。 ip address 120.XX.XX.76 255.255.255.252 # 配置 VPN 通道本端公网 IP 地址。3. 配置 isakmp 策略。 crypto ikev2 enable outside # 在外部接口上启用 IKEv2。 crypto ikev2 policy 10 # 定义 ikev2 第一阶段协商使用参数,序号为10,序号越小越优先,范围为1-65535。 authentication pre-share # 配置认证方法为预共享密钥。 encryption AES-128 # 配置第一阶段协商数据包封装加密算法,默认为AES-128。 integrity MD5 # 为 IKE 策略指定哈希算法为 MD5,默认为 SHA。 group 2 # 为 IKE 策略指定 Diffie-Hellman 组为组2,默认为 group 2。 prf sha # 设置加密算法。 lifetime seconds 86400 # 设置 SA 生命周期,默认为86400秒。4. 配置组策略 group-policy group_policy internal # 为设备设置组策略。 group-policy group_policy attributes # 设置组策略属性。 vpn-tunnel-protocol ikev2 # 配置 vpn-tunnel 使用协议为 ikev2。5. 配置预共享密码。 tunnel-group 159.XX.XX.242 type ipsec-l2l # 创建一个ipsec隧道组,type 为点到点。 tunnel-group 159.XX.XX.242 general-attributes default-group-policy group_policy # 调用上一步定义的组策略。 tunnel-group 159.XX.XX.242 ipsec-attributes # 配置隧道组的属性,并指定预共享密钥。 ikev2 remote-authentication pre-shared-key tencent@123 ikev2 local-authentication pre-shared-key tencent@123 # 密钥可为1~128个字符的字母、数字或者字符串。6. 配置 IPsec 安全协议。 crypto ipsec ikev2 ipsec-proposal ikev2_proposal # 配置 IPsec 第二阶段协商的加密算法以及哈希算法。 protocol esp encryption aes-128 # 配置加密算法。 protocol esp integrity sha-1 # 配置完整性检查算法。7. 配置 ACL。 access-list INTERESTING extended permit ip 172.XX.XX.0 255.255.0.0 10.1.1.0 255.255.255.0 # 配置 ACL 抓取 VPN 通道上的数据流。8. 配置 IPsec 策略。 crypto map CMAP 1 match address INTERESTING # 调用 ACL,使满足 ACL 的源网段或者目的网段的数据包在 VPN 通道上流通。 crypto map CMAP 1 set peer 159.XX.XX.242 # 将被 IPsec 保护的流量转发到的对端 VPN 公网地址,这篇此处为腾讯云 VPN 公网地址。 crypto map CMAP 1 set ikev2 ipsec-proposal ikev2_proposal # 为加密映射条目配置 IKEv2 安全协议。 crypto map CMAP 1 set security-association lifetime seconds 3600 # 配置加密密钥的生存时间。 crypto map CMAP 1 set security-association lifetime kilobytes 1843200 # 设置协商在 SA 生命周期内,VPN 间可传递的流量,默认千字节数为4,608,000;默认生命秒数是28,800。9. 启用 IPsec 策略。 rypto map CMAP interface outside # 将上一步配置的加密映射应用于外部接口。10. 配置静态路由。 route outside 10.1.1.0 255.255.255.0 159.XX.XX.242 1 # 将待加密保护的数据网段引向 IPsec 隧道,且配置下一跳为 VPN 隧道对端公网 IP。11. 测试 VPN 连通性。
执行 Ping 命令测试 VPN 的连通性。1. 登录防火墙设备命令配置界面。 ssh -p admin@10.XX.XX.56# 通过 SSH 命令登录防火墙配置界面。User Access VerificationUsername: adminPassword: *******Type help or '?' for a list of available commands.# 输入账号密码,进入用户模式。ASA> ASA> en Password: # 输入enable和设置的enable密码进入特权模式,该模式下只支持查看。ASA# conf t ASA(config)## 键入“config ter”进入全局模式,在该模式下进行防火墙配置。2. 配置防火墙接口。
在全局模式下配置对接腾讯云端的防火墙接口以及Tunnel口。 interface GigabitEthernet0/0 nameif outside # 定义端口的安全域名。 security-level 0 # 定义端口的安全域等级。 ip address 120.XX.XX.76 255.255.255.252 # 配置对接腾讯云 VPN 公网 IP 地址。 interface Tunnel100 nameif vti ip address 172.XX.XX.2 255.255.255.0 # 该 IP 地址用于激活 Tunnel 口。3. 配置 isakmp 策略。 crypto ikev2 policy 1 # 定义 ikev2 第一阶段协商使用参数,序号为1,序号越小越优先,范围为1-65535。 encryption AES-128 # 配置第一阶段协商数据包封装加密使用AES-128算法,默认为AES-128。 integrity MD5 /# 为IKE策略配置哈希算法为MD5,默认为sha。 group 2 # 为IKE策略配置 Diffie-Hellman 组为组2,默认为group 2。 prf sha # 配置加密算法。 lifetime seconds 86400 # 配置 SA 生存时间(即生命周期),默认为86400秒。4. 配置组策略 group-policy group_policy internal # 为设备设置组策略。 group-policy group_policy attributes # 设置组策略属性。 vpn-tunnel-protocol ikev2 # 配置 vpn-tunnel 使用协议为 ikev2。5. 配置预共享密码。 tunnel-group 159.XX.XX.242 type ipsec-l2l # 创建一个ipsec隧道组,type 为点到点。 tunnel-group 159.XX.XX.242 general-attributes default-group-policy group_policy # 调用上一步定义的组策略。 tunnel-group 159.XX.XX.242 ipsec-attributes # 配置隧道组的属性,并指定预共享密钥。 ikev2 remote-authentication pre-shared-key tencent@123 ikev2 local-authentication pre-shared-key tencent@123 # 密钥可为1~128个字符的字母、数字或者字符串。6. 配置 IPsec 安全协议。 crypto ipsec ikev2 ipsec-proposal ikev2_proposal # 设置 IPsec 第二阶段协商的加密算法以及哈希算法。 protocol esp encryption aes-128 # 设置加密算法。 protocol esp integrity sha-1 # 设置完整性检查算法。7. 配置 IPsec 策略。 crypto ipsec profile PROFILE1 set ikev2 ipsec-proposal ikev2_proposal /# 为加密映射条目设置 IKEv2 安全协议。 set security-association lifetime kilobytes 1843200 # 设置 SA 生命周期内,VPN之间可以传递的流量字节数。 set security-association lifetime seconds 3600 # 设置加密密钥的生命周期,默认千字节数为4,608,000;默认生命秒数是28,800。8. 启用 IPsec 策略。 interface Tunnel100 tunnel source interface outside # 配置 VPN 的更新源为outside口。 tunnel destination 159.XX.XX.242 # 配置对端 VPN 的公网 IP 地址,本处为腾讯云 VPN 公网 IP 地址。 tunnel mode ipsec ipv4 # 配置 tunnel口 使用的协议。 tunnel protection ipsec profile PROFILE1 # 调用 IPsec 策略对经过 tunnel 口的数据进行保护。9. 配置静态路由。 route vti 10.1.1.0 255.255.255.0 159.XX.XX.242 # 将待加密保护的数据包引到 tunnel 口。10. 测试 VPN 连通性。
执行 Ping 命令测试 VPN 的连通性。