在docker中一键搭建IPSec/IKEv2 VPN

8 min read

以下是一键搭建IPSec/IKEv2 VPN的步骤:

  1. 首先,在Docker上安装一个IPSec/IKEv2 VPN服务器镜像,可以使用以下命令:
docker pull hwdsl2/ipsec-vpn-server
  1. 创建一个文件夹,用于存储VPN配置文件和证书:
mkdir -p ~/vpn-data/{ipsec.d,var/run}
  1. 生成一个PSK(预共享密钥),并将其保存到文件中:
echo "myvpnpsk" > ~/vpn-data/ipsec.d/psk.txt
  1. 生成一个证书,用于VPN服务器:
docker run \
    --name ipsec-vpn-server \
    --env-file ~/vpn-data.env \
    --privileged \
    -p 500:500/udp \
    -p 4500:4500/udp \
    -v ~/vpn-data:/etc/ipsec.d \
    -v /lib/modules:/lib/modules:ro \
    -d --restart=always \
    hwdsl2/ipsec-vpn-server
  1. 设置环境变量,用于启动VPN服务器:
cat > ~/vpn-data.env <<EOF
VPN_IPSEC_PSK=myvpnpsk
VPN_USER=username
VPN_PASSWORD=password 
EOF
  1. 启动VPN服务器:
docker start ipsec-vpn-server
  1. 创建一个VPN用户,并设置其密码:
docker exec -it ipsec-vpn-server /opt/src/adduser.sh username password
  1. 连接到VPN服务器:

在IPSec或IKEv2客户端中,设置以下参数:

Server: IP地址(Docker主机的IP地址)
Authentication: EAP-MSCHAPv2
Username: username
Password: password
PSK: myvpnpsk
  1. 连接成功后,可以尝试访问受限制的网站或服务,以验证VPN是否正常工作。

以上就是在Docker中一键搭建IPSec/IKEv2 VPN的完整流程。