阿里云 ubuntu16.04搭建IPSec服务
程序员文章站
2022-04-06 20:15:32
ipsec简介
ipsec(internet protocol security):是一组基于网络层的,应用密码学的安全通信协议族。ipsec不是具体指哪个协议,而是一个开放的协...
ipsec简介
ipsec(internet protocol security):是一组基于网络层的,应用密码学的安全通信协议族。ipsec不是具体指哪个协议,而是一个开放的协议族。
ipsec协议的设计目标:是在ipv4和ipv6环境中为网络层流量提供灵活的安全服务。
ipsec vpn:是基于ipsec协议族构建的在ip层实现的安全虚拟专用网。通过在数据包中插入一个预定义头部的方式,来保障osi上层协议数据的安全,主要用于保护tcp、udp、icmp和隧道的ip数据包。
由于阿里云上有一些限制,在阿里云ecs上部署待见ipsec和普通服务器有不一样的地方。
安装strongswan
apt-get update apt-get install strongswan strongswan-plugin-xauth-generic
编辑/etc/ipsec.secrets
vi /etc/ipsec.secrets
增加:
: psk "test"
user1 : xauth "user1password"
其中psk是预共享密钥,是用于验证 l2tp/ipsec 连接的 unicode 字符串。user1为用户名, user1password是密码。
编辑 /etc/ipsec.conf
config setup cachecrls=yes uniqueids=yes conn ios keyexchange=ikev1 authby=xauthpsk xauth=server left=%defaultroute leftsubnet=0.0.0.0/0 leftfirewall=yes right=%any rightsubnet=192.168.0.1/16 rightsourceip=192.168.0.1/16 rightdns=223.5.5.5 auto=add
注意使用192.168网段而不是10.0.0.1网段,10.0.0.1网段在阿里云上好像有问题(据说被禁了?)。
重启 strongswan
ipsec restart
修改阿里云服务器对应安全组规则
增加 公网入网 udp 500和 udp 4500两个端口
打开ipv4转发,设置nat规则
sysctl net.ipv4.ip_forward=1 iptables -t nat -a postrouting -s 192.168.0.1/16 -o eth1 -j masquerade
注意是使用 eth1,而不是eth0.
ecs中eth1绑定外网网卡,eth0是内网网卡。