openvpn自建记录

用docker自建VPN,在此记录下过程:

提前配置好docker镜像源,多配置几个以便成功拉取镜像

# 创建数据目录
OVPN_DATA="/opt/openvpn-data"
sudo mkdir -p $OVPN_DATA

# 拉取镜像
sudo docker pull kylemanna/openvpn

# 初始化配置。将 `vpn.example.com` 替换为你的公网服务器IP或域名。
sudo docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://vpn.example.com

# 生成证书和密钥。此命令会交互式地要求你设置CA密码和服务器端证书信息。
sudo docker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
挂载数据卷
OVPN_DATA="open-data"
docker volume create --name $OVPN_DATA
列出数据卷
docker volume ls
查看数据卷存储文职
docker volume inspect <卷名>

在执行 ovpn_initpki 时,请务必记住设置的 CA 密码,并为服务器证书使用一个易识别的通用名(如 server)。

sudo docker run -d \
  --name openvpn-server \
  --restart unless-stopped \
  -v $OVPN_DATA:/etc/openvpn \
  -p 1194:1194/udp \
  --cap-add=NET_ADMIN \
  kylemanna/openvpn
继续阅读openvpn自建记录