一、前言
公司自建机房成本很高,一方面交换机、路由器、防火墙等网络设备一台几十上百万的很常见,另一方面需要有专业的运维团队来管理保障这些 IT 设施的稳定性,所以中小型企业上云是一种很好的选择。
国内主流的云厂商有阿里云、华为云、腾讯云、百度云,除去这些主流的还有很多其他的云产品供应商,像七牛云、网宿云、xxx 网络一堆,所以现在云产品市场也很内卷,总体服务性价比还是比较高的。
二、网络说明
一般我们在云上除了购买服务器外还会购买一系列中间件产品,如:数据库、Redis、Mongo、Hbase、容器引擎等,服务资源多了我们就需要做好网络规划以便进一步的设施网络访问策略。云上的网络规划一般是创建 vpc,每个vpc 有自己的网段,购买的 ECS 或者其他资源时选择一个 vpc 专有网络,就会自动给这个资源分配好 vpc 内的一个 ip 地址。
云厂商内的资源默认外面是访问不了的,除非额外购买绑定外网 IP。但是,云厂商内同一个 vpc 内的网络可以互通,不同 vpc 网络如果要打通也很方便,借助云厂商提供的对等连接或其他方案都可以很灵活的解决。
那如果是本地 IDC 机房要与某个云厂商互通,或者不同云厂商直接的网络要打通可以有以下几种方式:
- 物理专线
虚拟专线
- 购买云厂商的 vpn 网关
- 自建 vpn 服务
三、中小企业的网络一体化方案
物理专线带宽高且稳定可靠,但是成本也很高。中小企业一般借助 vpn 虚拟专线的解决方案。网络一体化实施之前要先认真规划好网络拓扑,所有网络中都不要有可能重叠的 ip 出现。可以通过设置不同子网掩码区分网段,也可以借助 ip 协议中提供的 3 类私有网段进行区分:
A类地址范围:10.0.0.0—10.255.255.255;
B类地址范围:172.16.0.0---172.31.255.555;
C类地址范围:192.168.0.0---192.168.255.255。
3.1 云厂商 vpn 网关
购买云厂商的 vpn 网关服务,然后自己本地的出口路由、防火墙根据云厂商提供的产品说明配置即可。内部实现无非也是搭了个 vpn 服务器,并利用公网 ip 与企业 IDC 进行交互,参数配置就是在双方的路由表里面设置路由条目。
此方案实现起来比较方便,即使出了问题也可以让云厂商的技术支持帮忙处理。费用方面属于中等,如果是 100M 的带宽估计一个月也要在 7000 来块(阿里云,仅供参考)。对于微小企业来说,这个成本还是偏高的。
3.2 自建 vpn 服务
vpn 服务的搭建有多种方式,可以根据 vpn 协议特点选择一个适合的。
- openvpn:新的开源技术,使用了OpenSSL库和SSLv3/TLSv1协议。一般需要自己安装客户端。
- IKEv2: 由微软和思科联合开发,基于 ipsec 实现,有很多设备都默认支持,不需要额外安装客户端,并且能够支持自动重连机制。
- pptp:由微软开发很多设备都支持,安装简单、易用,安全性普通。
- 等
四、StrongSwan vpn 服务搭建
strongswan 是开源的 ipsec 解决方案,本文采用IKEV2( Internet Key Exchange Version 2)建立加密隧道。选择该方案的原因是我们有一个深信服的防火墙设备,里面本身支持较方便新增第三方基于 ipsec 的 vpn 服务。服务是搭在一台 阿里云 ecs 设备上面,并绑定了一个公网 IP。
安装
yum install strongswan -y
安全组放开以下端口
500,1701,4500
开启内核转发
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding=1
sysctl -p
配置
vim /etc/strongswan/ipsec.conf
conn strongswan-sangfor
left=0.0.0.0
leftsubnet=0.0.0.0/0
leftid=aliyun
right=218.85.126.130
rightsubnet=192.168.10.0/23,192.168.20.0/23,192.168.30.0/24,192.168.40.0/23,2.0.1.0/24
rightid=sangfor
keyexchange=ikev2 #ike版本v2
ikelifetime=3600s
ike=aes256-sha2_256-modp2048,aes256-sha2_256-modp1536,aes256-sha2_256-modp1024,aes256-sha1-modp2048,aes256-sha1-modp1536,aes256-sha1-modp1024,aes256-sha1-ecp384,aes128-sha1-modp1024,aes128-sha1-ecp256,3des-sha1-modp2048,3des-sha1-modp1024
esp=aes256-sha2_256-modp2048,aes256-sha2_256-modp1536,aes256-sha2_256-modp1024,aes256-sha1-modp2048,aes256-sha1-modp1536,aes256-sha1-modp1024,aes256-sha1-ecp384,aes128-sha1-modp1024,aes128-sha1-ecp256,3des-sha1-modp2048,3des-sha1-modp1024
lifetime=28800s
leftauth=psk
rightauth=psk
auto=start
dpdaction=restart
dpddelay=30
里面的 left、right 对应的是本端或者远端的网络信息。
设置 PSK 密钥
vim /etc/strongswan/ipsec.secret
启动
systemctl start strongswan
深信服防火墙配置
如果没有设备,就需要自己搭建客户端,并通过参数设置制定路由规则。
深信服防火墙-网络-IPSecVPN-第三方对接管理
基础配置
加密数据流
IKE配置
IPSec配置
SSLVPN发布阿里云vpc和经典网络地址资源
策略-应用控制策略
- 本地到阿里云
- 阿里云到本地
配置安全防护策略
调试
深信服日志页面开启如下选项
Strongswan查看日志信息
systemctl status strongswan
发表评论 取消回复