安装必要的软件包
确保你的服务器系统安装了Node.js和相关的依赖。
sudo apt update sudo apt install nodejs npm
安装OpenVPN
选择并安装OpenVPN。
sudo apt install openvpn
生成OpenVPN证书和密钥
使用easyrsa工具生成证书和密钥。
sudo apt install easyrsa sudo easyrsa --init /etc/openvpn/keys
配置OpenVPN服务器
编辑OpenVPN的配置文件。
sudo nano /etc/openvpn/server.conf
server
proto tcp
port 1194
dev ovpndev
setenv BOOST_VERSION 1.6.2
setenv MOD_BROTLI 1
setenv MOD_LZ4 1
setenv CA_CERT_FILE /etc/openvpn/keys/ca.crt
setenv SERVER_CERT_FILE /etc/openvpn/keys/server.crt
setenv SERVER_PRIVATE_KEY_FILE /etc/openvpn/keys/server.key
setenv TLS_VERSION 1.2
setenv cipher BF-CBC
setenv auth_user 1
setenv auth_pass_verify 1
if $client_cert
setenv auth_user $client_cert
setenv auth_pass_verify 0
endif
keeper-checkup 1 30
verify-x509-fingerprint
保存并关闭文件。
设置用户验证
添加用户和密码。
sudo nano /etc/openvpn/users.txt
user1 12345
启动OpenVPN服务
重新加载OpenVPN并启动服务。
sudo service openvpn restart
设置防火墙
开放OpenVPN的UDP和TCP端口。
sudo iptables -P nat INVALID sudo iptables -A nat -d 0.../ --jump ACCEPT sudo iptables -A nat -i eth --jump ACCEPT sudo iptables -A nat -o eth --jump ACCEPT sudo iptables -A nat -j DNAT --target 0...:1194 --source 0.../ sudo iptables -A nat -j RETURN
保存防火墙规则。
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat" sudo nano /etc/rc.local
在文件末尾添加:
iptables-restore < /etc/iptables.ipv4.nat
测试服务
在客户端运行OpenVPN连接到服务器:
sudo openvpn --remote 服务器IP 1194 --auth-user user1:12345 --ca /etc/openvpn/keys/ca.crt --cert /etc/openvpn/keys/client.crt --key /etc/openvpn/keys/client.key
验证连接
使用netcat检查服务器是否在指定端口监听:
nc -zv 服务器IP 1194
处理错误
检查日志文件:
tail -f /var/log/openvpn.log
高可用性和负载均衡(可选)
使用Nginx作为反向代理:
sudo apt install nginx sudo nano /etc/nginx/sites-available/default
server {
listen 1194;
socket soils: 'udp';
proxy_pass http://localhost:808;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
启动Nginx:
sudo systemctl start nginx
通过以上步骤,你已经成功设置了一个基于OpenVPN的VPN服务器服务,确保配置正确,证书和密钥管理安全,并定期检查日志以确保服务稳定运行。









