OPENVPN
实现两个局域网互联
服务器
docker 方式
手工方式参考 github 上的 README
docker-compose.yml 参考文档
version: '2'
services:
openvpn:
cap_add:
- NET_ADMIN
image: kylemanna/openvpn
container_name: openvpn
ports:
- "1194:1194/udp"
restart: always
volumes:
- ./openvpn-data/conf:/etc/openvpn
启动
docker compose up -d
初始化和认证
docker-compose run --rm openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM
docker-compose run --rm openvpn ovpn_initpki
VPN.SERVERNAME.COM 你的域名(OPENVPN服务端所在服务器的域名)
修补所有权
sudo chown -R $(whoami): ./openvpn-data
生成客户端认证
export CLIENTNAME="your_client_name"
# with a passphrase (recommended)
docker-compose run --rm openvpn easyrsa build-client-full $CLIENTNAME
# without a passphrase (not recommended)
docker-compose run --rm openvpn easyrsa build-client-full $CLIENTNAME nopass
第一种需要输入密码,第二种不需要,在客户端使用时也需要密码
生成客户端认证文件
docker-compose run --rm openvpn ovpn_getclient $CLIENTNAME > $CLIENTNAME.ovpn
移除客户端认证
# Keep the corresponding crt, key and req files.
docker-compose run --rm openvpn ovpn_revokeclient $CLIENTNAME
# Remove the corresponding crt, key and req files.
docker-compose run --rm openvpn ovpn_revokeclient $CLIENTNAME remove
客户端
mac
下载
使用根据你是否前面生成需要密码的客户端文件
windows
下载
linux
centos 8
安装
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf config-manager --set-enabled PowerTools
sudo yum install -y https://packages.openvpn.net/openvpn-openvpn3-epel-repo-1-1.noarch.rpm
sudo yum install openvpn3-client
配置运行
xxxx 是配置的名称,可以随便起
openvpn3 config-import --config youropenvpnclient.ovpn --name xxxx --persistent
openvpn3 config-manage --config xxxx --allow-compression yes
openvpn3 session-start --config xxxx