Openvpn
简介
OpenVPN 是一个开源的虚拟私人网络(VPN)解决方案,广泛用于安全地连接远程用户和分支机构到企业网络。它通过安全的隧道加密技术,确保数据在不安全的网络上进行安全传输。
部署
服务端操作
初始化, 注意修改公网ip地址
docker run -v ./openvpn:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://公网地址
docker run -v ./openvpn:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki启动
docker run -v ./openvpn:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn修改,需重启服务生效
./openvpn/openvpn.conf
# 客户端连接分配的ip池
server 192.168.254.0 255.255.255.0
verb 3
key /etc/openvpn/pki/private/123.60.11.34.key
ca /etc/openvpn/pki/ca.crt
cert /etc/openvpn/pki/issued/123.60.11.34.crt
dh /etc/openvpn/pki/dh.pem
tls-auth /etc/openvpn/pki/ta.key
key-direction 0
keepalive 10 60
persist-key
persist-tun
proto udp
# Rely on Docker to do port mapping, internally always 1194
port 1194
dev tun0
status /tmp/openvpn-status.log
user nobody
group nogroup
comp-lzo no
### Route Configurations Below
route 192.168.253.0 255.255.255.0
# 客户端可以连接的服务端网段
### Push Configurations Below
push "route 192.168.0.0 255.255.255.0"
push "comp-lzo no"创建test用户
docker run -v ./openvpn:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full test nopass
docker run -v ./openvpn:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient test > /tmp/test.ovpn删除用户
docker run -v openvpn-data:/etc/openvpn --rm -it kylemanna/openvpn easyrsa revoke test
docker run -v openvpn-data:/etc/openvpn --rm -it kylemanna/openvpn easyrsa gen-crl客户端
复制创建用户生成的 test.ovpn 到 客户端机器上的 /etc/openvpn/client/
安装openvpn包
yum -y install epel-release
yum -y install openvpn启动客户端
openvpn --daemon --cd /etc/openvpn/client/ --config test.ovpn --log-append /var/log/test-vpn.log