在上一篇文章分享了 服务器的搭建已经配置,如果你还不知道的话可以先看上一篇文章的分享,
我还是服务器系统以Ubuntu 22.0.4为演示!
在开始部署客户端之前,生成客户端的配置和密钥
若要为客户端生成证书,请创建以下文件:
sudo nano /etc/openvpn/build-client-key.sh
添加以下内容:
#!/bin/bash
function build_client_key {
CLIENT_NAME=$1
pushd easy-rsa
export KEY_NAME=$CLIENT_NAME
echo -ne '\n' | ./easyrsa gen-req $CLIENT_NAME nopass
echo -ne 'yes' | ./easyrsa sign-req client $CLIENT_NAME
popd
mkdir -p clients/$CLIENT_NAME/tun_$CLIENT_NAME
mv easy-rsa/pki/issued/$CLIENT_NAME.crt clients/$CLIENT_NAME/tun_$CLIENT_NAME/
mv easy-rsa/pki/private/$CLIENT_NAME.key clients/$CLIENT_NAME/tun_$CLIENT_NAME/
cp keys/ca.crt clients/$CLIENT_NAME/tun_$CLIENT_NAME/
cp keys/ta.key clients/$CLIENT_NAME/tun_$CLIENT_NAME/
GREP_BEGIN_END='(?P<dashes>-+)\s?BEGIN\s(?P<name>.+)(?P=dashes)\s(.+\s)+?(?P=dashes)\s?END\s(?P=name)(?P=dashes)'
cat << EOF > clients/$CLIENT_NAME/tun_$CLIENT_NAME.ovpn
dev tun_$CLIENT_NAME
proto udp
client
remote (换成自己的服务器ip) 1194
cipher BF-CBC
auth SHA256
resolv-retry infinite
persist-key
persist-tun
#ns-cert-type server
comp-lzo
keepalive 9 30
verb 3
nobind
tun-mtu 1500
mssfix 1300
mute 20
redirect-gateway autolocal
key-direction 1
#status /var/log/tun_$CLIENT_NAME.status
<ca>
`cat clients/$CLIENT_NAME/tun_$CLIENT_NAME/ca.crt`
</ca>
<cert>
`cat clients/$CLIENT_NAME/tun_$CLIENT_NAME/$CLIENT_NAME.crt`
</cert>
<key>
`cat clients/$CLIENT_NAME/tun_$CLIENT_NAME/$CLIENT_NAME.key`
</key>
<tls-crypt>
`cat clients/$CLIENT_NAME/tun_$CLIENT_NAME/ta.key`
</tls-crypt>
EOF
pushd clients
# tar zcvf tun_$CLIENT_NAME.tar.gz $CLIENT_NAME
popd
}
export -f build_client_key
bash -c "build_client_key $@"
保存并退出。
授予文件权限:
chmod +x /etc/openvpn/build-client-key.sh
接下来生产客户端配置文件,文件名称自己可以取一个:比如client
cd /etc/openvpn/
/etc/openvpn/build-client-key.sh client
这样客户端的配置文件就生成了,也同步集成了证书,密钥,路径在 /etc/openvpn/clients/client里
查看:
ls /etc/openvpn/clients/client
下载 client.ovpn 文件到客户端,目录/etc/openvpn/clients/client/tun_client.ovpn 接下来下载OpenVPN 客户端安装并运行:
下载完成后,双击安装程序,按照提示完成安装过程。安装完成后,您可以在Windows托盘中找到OpenVPN的图标。
然后导入配置文件,在桌面上的fsdownload文件夹里,点击连接上OpenVPN
也可以导入到手机端:
关于吊销客户端
比如tun_client.ovpn此用户离开了,可以撤销他的证书以限制他的访问
cd /etc/openvpn/easy-rsa/
sudo ./easyrsa revoke client
sudo ./easyrsa gen-crl
sudo cp pki/crl.pem /etc/openvpn/keys/
要彻底卸载OpenVPN,按以下步骤操作:
1.停止OpenVPN服务:
sudo systemctl stop openvpn
sudo systemctl disable openvpn
2. 删除OpenVPN相关文件:
sudo rm -rf /etc/openvpn
sudo rm -rf /usr/share/doc/openvpn*
sudo rm -rf /var/log/openvpn
sudo rm -rf /etc/systemd/system/multi-user.target.wants/openvpn.service
3.卸载OpenVPN软件包:
sudo apt-get remove --purge openvpn
sudo apt-get autoremove
sudo apt-get autoclean
好了,分享就到此!谢谢大家!