如何通过Strongswan测试Azure IPsec VPN

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cyezhou/article/details/79134931

我们在测试Azure的VPN功能时,通常需要在用户的出口防火墙或者网关上做一些设置,由于这些设备通常属于生产环境,直接测试会造成网络架构的改动,也可能会影响到当前的环境,无法方便地进行测试。因此有时我们会通过内网的vSphere环境中部署Linux虚机来进行测试,本文描述了如何过Linux中使用Strongswan来进行VPN的测试。

先说一下Azure端的测试环境:

虚拟网络vnet的IP地址空间:172.31.0.0/20

VM的IP地址:172.31.0.5/24

 

本地环境:

已部署CentOS 7作为本地VPN网关,IP: 192.168.1.254

用于测试的VM的IP: 192.168.1.2

 

测试目标,通过IPsec VPN打通两端的网络172.31.0.0/20和192.168.1.0/24,实现云上与云下的VM互通


首先我们进行Azure端的设置

1.      创建“虚拟网络网关”

部署前需确认虚拟网络中有空余的地址空间用于创建网关子网,点击“创建”按钮后请耐心等待(页面提示需要45分钟)。


2.      创建“本地网络网关”

这里的IP地址为本地公网出口IP,地址空间为需要和Azure打通VPN的子网。

3.      创建VPN连接

连接类型选择站点到站点(IPsec)。


 

此处选择相应的虚拟网络网关和本地网络网关,并指定共享密钥’SharedKey’。

创建完成后,看一眼刚才创建连接的概述,记录虚拟网络网关的IP139.219.185.255

 

现在我们回到本地的CentOS

1.      禁用防火墙

systemctl disable firewalld
systemctl stop firewalld

2.      禁用SElinux

sed -i 's/=enforcing/=disabled/g' /etc/sysconfig/selinux
setenforce 0


3.      设置核心参数,允许ip转发

sysctl net.ipv4.ip_forward=1
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf


4.      安装Strongswan

yum install -y epel-release
yum install -y strongswan


5.      配置Strongswan

vi /etc/strongswan/ipsec.conf #注意修改本地网关IP、本地子网、Azure VPN网关IP、Azure VNET地址空间

 

vi /etc/strongswan/ipsec.secrets #指定与Azure端一致的PSK共享密钥,Azure VPN网关IP

6.      启动Strongswan

systemctl enable strongswan
systemctl start strongswan
strongswan up azure

终于可以连通性测试了

从本地192.168.1.2 ping云上的172.31.0.5

从云上172.31.0.5 ping本地的192.168.1.2

 


另外,为了简化本地CentOS 7的部署和配置,可通过这个ova模板(root password: ipsecvpn)在vSphere 6.5中部署,可以跳过上述1-4步的设置即可进行测试。


没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试