前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在linux服务器上使用strongswan自建ipsecV**网关实现IDC与云的内网通信配置实例

在linux服务器上使用strongswan自建ipsecV**网关实现IDC与云的内网通信配置实例

原创
作者头像
elliswu
发布2019-06-25 11:35:52
8.1K7
发布2019-06-25 11:35:52
举报
文章被收录于专栏:云网络社区云网络社区

前言:  

    公有云技术已经非常成熟,各行各业都在上云。有的客户本身有自建IDC,想实现数据迁移或者公有云+本地IDC混合云运行模式,就需要打通IDC与公有云之间的内网,目前腾讯云有两个方案:

  • 专线----自建IDC与公有云之间通过运营商、专线服务商等第三方打通物理专线。适用于长期两地传输重要数据,同时对两地内网通信有高质量保障要求的业务。

        优点:线路相对稳定,传输质量较高。

        缺点:实施成本较高,实施耗时较长。

  • V**----自建IDC与公有云之间通过公网建立一条V**通道,实现两地内网通信。

        优点:实施成本相对较低,实施耗时端,可以在短时间内快速打通两地内网。

        缺点:依赖于两点公网传输质量,稳定性、可用性相对较低。

      腾讯云上有V**网关可以直接购买,对端IDC可以采用支持ipsecV**的硬件防火墙、路由器或者一台有公网出口能力的linux服务器。本文重点讲解如何在linux服务器上使用strongswan自建ipsecV**网关实现IDC与云的内网通信。

环境说明:

 一台北京云主机安装strongswan(模拟客户IDC)

   centos7.5 strongswan U5.7.2/K3.10.0-862.el7.x86_64

一台腾讯云上的V**网关,地域广州

一台腾讯云上广州地域的云主机

 网络拓扑:

配置strongswan

 1.环境准备,关闭防火墙或者同时在防火墙、安全组放通udp500,4500以及esp包。

代码语言:javascript
复制
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
vim /etc/selinux/config  
SELINUX=disabled #关闭selinux
或者:
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config 

2.开启ip转发功能

代码语言:javascript
复制
echo 1 > /proc/sys/net/ipv4/ip_forward

3.安装strongswan

代码语言:javascript
复制
yum install strongswan -y

4.配置ipsec协商参数

代码语言:javascript
复制
cp ipsec.conf ipsec.conf.bak  #备份配置文件
vim /etc/strongswan/ipsec.conf 
config setup
	# strictcrlpolicy=yes
	 uniqueids = never

# Add connections here.
conn %default
    ikelifetime=3600s  #IPSec SA协商间隔
    keylife=86400s  #ISAKMP SA协商间隔
    rekeymargin=3m  #密钥更新间隔
    keyingtries=1   #ISAKMP SA协商次数
    keyexchange=ikev1 #IKE版本,目前云上支持V1
    ike=3des-md5-modp1024 #ike的加密算法、认证算法、DH group,两边要保持一致
    esp=3des-md5-modp1024 #ipsec的加密算法、认证算法、PFS(完美向前密钥)
    authby=secret #认证方式
    type=tunnel

conn  qcloud
     leftauth=psk #采用预共享密钥
     left=172.16.0.6 #本端IP,这里因云上CVM的公网IP是在TGW上用NAT映射过来的,所以只能填写服务器的内网IP,采用NAT穿透与对端建立V**
     leftsubnet=172.16.0.0/16 #本端需要与对端通信的内网IP地址段
     leftid=152.136.41.251 #本端标示
     right=203.195.196.214 #对端公网IP
     rightsubnet=10.0.1.0/24 #对端需要与本端通信的内网地址段
     rightid=203.195.196.214 #对端标示
     rightauth=psk #采用预共享密钥
     auto=route #连接方式,可选"add,route,start,ignore","add"表示手动,"route"表示由连接触发,"start"表示自启,"ignore"表示忽略该策略
     type=tunnel #隧道模式

 5.设置预共享密钥

代码语言:javascript
复制
vim /etc/strongswan/ipsec.secrets
203.195.196.214 152.136.41.251 : PSK "qcloud" #注意格式为本端公网ip 空格 对端公网ip 空格 冒号 空格 PSK 空格 双引号具体密钥

 6.设置日志保存位置--可选

注意5.7的版本比5.6有了很多变化,各选项配置文件都分离了,目录集中在 /etc/strongswan/strongswan.d,其中charon.conf文件里可以修改V**默认的upd端口号,具体功能可以自行研究。这里我们只讲日志的配置方式,便于在V**联调过程中通过日志调试。

代码语言:javascript
复制
cd /etc/strongswan/strongswan.d
cp charon-logging.conf charon-logging.conf.bak
vim charon-logging.conf 
charon {
    filelog {
        charon-debug-log {
            path = /var/log/strangswan.V**.log
            time_format = %b %e %T
            default = 2
            mgr = 0
            net = 1
            enc = 1
            asn = 1
            job = 1
            ike_name = yes
            append = no
            flush_line = yes
        }
    }
}

7.启动服务

代码语言:javascript
复制
systemctl start strongswan #启动服务
systemctl enable strongswan #设置开机启动
systemctl status  strongswan #查看服务运行状态与部分最近日志

8.在VPC控制台增加去往对端内网的路由,下一跳指向本云主机

官网地址:https://console.cloud.tencent.com/vpc/route?fromNav

配置腾讯云上的V**通道

1.登录云控制台购买V**网关

官网购买地址:https://console.cloud.tencent.com/vpc/V**Gw

2.创建V**通道

官网链接:https://console.cloud.tencent.com/vpc/V**Conn?fromNav

3.在VPC控制台增加路由

官网地址:https://console.cloud.tencent.com/vpc/route?fromNav

4.用ping从任意一端发起访问流量,激活V**通道。

至此,客户自建IDC内网已经与云上VPC内网通过IPsecV**打通,客户可以迁移数据上云也可以运行本地IDC+腾讯云混合云模式来服务自己的业务。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
VPN 连接
VPN 连接(VPN Connections)是一种基于网络隧道技术,实现本地数据中心与腾讯云上资源连通的传输服务,它能帮您在 Internet 上快速构建一条安全、可靠的加密通道。VPN 连接具有配置简单,云端配置实时生效、可靠性高等特点,其网关可用性达到 99.95%,保证稳定、持续的业务连接,帮您轻松实现异地容灾、混合云部署等复杂业务场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档