首先我们在服务器上搭建运行IPsec VPN 服务器
使用本镜像创建一个新的 Docker 容器 (将 ./vpn.env 替换为你自己的 env 文件):
docker run \ --name ipsec-vpn-server \ --env-file ./vpn.env \ --restart=always \ -v ikev2-vpn-data:/etc/ipsec.d \ -v /lib/modules:/lib/modules:ro \ -p 500:500/udp \ -p 4500:4500/udp \ -d --privileged \ hwdsl2/ipsec-vpn-server
在该命令中,我们使用 docker run 的 -v 选项来创建一个名为 ikev2-vpn-data 的新 Docker 卷,并且将它挂载到容器内的 /etc/ipsec.d 目录下。IKEv2 的相关数据(比如证书和密钥)在该卷中保存,之后当你需要重新创建 Docker 容器的时候,只需指定同一个卷。
推荐在使用本镜像时启用 IKEv2。如果你不想启用 IKEv2 而仅使用 IPsec/L2TP 和 IPsec/XAuth (“Cisco IPsec”) 模式连接到 VPN,可以去掉上面 docker run 命令中的第一个 -v 选项。
注: 高级用户也可以 不启用 privileged 模式运行。
获取 VPN 登录信息
如果你在上述 docker run 命令中没有指定 env 文件,VPN_USER 会默认为 vpnuser,并且 VPN_IPSEC_PSK 和 VPN_PASSWORD 会被自动随机生成。要获取这些登录信息,可以查看容器的日志:
docker logs ipsec-vpn-server