本文档介绍使用VPN网关与本地VPN打通
预计部署时间:45 分钟
级别:初级
相关产品:VPN
受众: 通用
已开通账号并完成实名认证。如果还没有火山引擎账号,点击此链接注册账号
已在本地数据中心就近地域创建VPC1及其子网,具体操作请参见创建私有网络
本地数据中心网关支持IKE V1和IKE V2协议
本地数据中心的网关设备有静态公网IP
本地数据中心网段与VPC1的网段不冲突
客户端 | 10.0.0.231 |
---|---|
服务端 | 192.168.1.195 |
客户端网段 | 10.0.0.0/8 |
服务端网段 | 192.168.0.0/16 |
创建VPN网关https://console.volcengine.com/vpn/region:vpn+cn-beijing/vpnGateway
配置以下信息
a.名称
b.带宽规格
c.私有网络VPC (选择云上需要VPN打通的VPC网络),本实例为192.168.0.0/16
d.子网192.168.1.0/24
e. 购买时长
配置用户网关
该地址为本地网关公网IP地址,例如ECS上挂载的公网EIP
创建IPsec连接
连接信息配置
VPN网关:选择上一步创建的VPN网关
本端网段:选择需要通信的子网地址
对端网段:对端本地网段
预共享密钥: 12345678
IKE配置
IPsec配置
以云主机为例,部署strongswan
创建云服务器可参考https://www.volcengine.com/docs/6396/161464
登陆到云服务器中,执行以下步骤 [root@vpn ~]# yum -y install epel-release #检查源中是否有strongswan包 [root@vpn ~]# yum provides strongswan * epel: mirror.lzu.edu.cn strongswan-5.7.2-1.el7.x86_64 : An OpenSource IPsec-based VPN and TNC solution 源 :epel #安装strongswan [root@vpn ~]# yum -y install strongswan #检查是否安装成功 [root@vpn ~]# strongswan version Linux strongSwan U5.7.2/K3.10.0-1160.el7.x86_64
配置ipsec.conf文件(复制时请把# 注释删除掉)
[root@vpn strongswan]# cat /etc/strongswan/ipsec.conf # ipsec.conf - strongSwan IPsec configuration file # basic configuration config setup # strictcrlpolicy=yes uniqueids = never conn %default authby=psk #使用预共享密钥认证方式 type=tunnel conn volcvpn keyexchange=ikev1 # IPsec 连接使用的IKE版本 left=10.0.0.231 # 本机IP地址 leftsubnet=10.0.0.0/8 # 本端网段 leftid=180.184.70.xx # 本端网关设备公网地址,或 EIP right=180.184.70.xx # 火山VPN IP地址 rightsubnet=192.168.0.0/16 # 火山VPC 网段 rightid=180.184.70.xx # 火山VPN地址 auto=start # start 为进程主动时立即建立 IPsec 安全连接 ike=aes-sha1-modp1024 # IPsec 连接中IKE协议的加密算法-认证算法-DH分组 ikelifetime=86400s # IKE 协议的 SA 生命周期 esp=aes-sha1-modp1024 # IPsec 连接中IPsec协议的加密算法-认证算法-DH分组 lifetime=86400s # IPsec协议的 SA 生命周期 type=tunnel
配置ipsec.secrets 预共享密钥
[root@vpn strongswan]# cat /etc/strongswan/ipsec.secrets 180.184.70.xx 180.184.70.xx : PSK 12345678
[root@vpn strongswan]# echo 1 > /proc/sys/net/ipv4/ip_forward
[root@vpn strongswan]# systemctl enable strongswan [root@vpn strongswan]# systemctl start strongswan
查看连接日志 [root@vpn strongswan]# cat /var/log/charon.log |grep establish 显示如下establish 即可 Jan 19 16:00:09 14[IKE] <volcvpn|1> IKE_SA volcvpn[1] established between 10.0.0.231[180.184.70.xx]...180.184.70.70[180.184.70.xx] Jan 19 16:00:09 14[IKE] <volcvpn|1> IKE_SA volcvpn[1] state change: CONNECTING => ESTABLISHED Jan 19 16:00:09 15[IKE] <volcvpn|1> CHILD_SA volcvpn{2} established with SPIs c12c80ac_i cc16a423_o and TS 10.0.0.0/8 === 192.168.1.0/24 Jan 19 16:00:09 15[CHD] <volcvpn|1> CHILD_SA volcvpn{2} state change: INSTALLING => INSTALLED 如果未开日志可以在strongswan.conf配置 参考: [root@vpn strongswan]# cat /etc/strongswan/strongswan.conf # strongswan.conf - strongSwan configuration file # # Refer to the strongswan.conf(5) manpage for details # # Configuration changes should be made in the included files charon { install_routes = no load_modular = yes plugins { include strongswan.d/charon/*.conf } filelog { charon { path = /var/log/charon.log # add a timestamp prefix time_format = %b %e %T # prepend connection name, simplifies grepping ike_name = yes # overwrite existing files append = no # increase default loglevel for all daemon subsystems default = 4 # flush each line to disk flush_line = yes } stderr { # more detailed loglevel for a specific subsystem, overriding the # default loglevel. ike = 2 knl = 3 } }
添加路由条目
注意:本地如需设备通过VPN访问,需要配置路由指定给IPsec
a. 配置目标网段为本地地址,此示例以10.0.0.0/8为例
b. 下一跳选择上面创建的IPsec
以上是实验的所有内容