随着远程办公、跨地域访问和隐私保护需求的日益增长,越来越多的用户希望通过虚拟私人网络(VPN)来加密通信流量、绕过地理限制并提升网络安全,对于技术爱好者或小型企业而言,在VPS(虚拟专用服务器)上自建VPN不仅成本低廉,还能获得更高的灵活性与控制权,本文将详细介绍如何在Linux系统(以Ubuntu 20.04为例)的VPS上部署一个稳定、安全且高性能的OpenVPN服务,帮助你打造属于自己的私有网络通道。

第一步:准备环境
确保你已拥有一台运行Ubuntu 20.04或更高版本的VPS,并通过SSH登录,建议使用root账户或具有sudo权限的用户进行操作,更新系统软件包:

sudo apt update && sudo apt upgrade -y

第二步:安装OpenVPN和Easy-RSA
OpenVPN是开源且广泛使用的VPN协议,支持SSL/TLS加密,安装OpenVPN及相关工具:

sudo apt install openvpn easy-rsa -y

Easy-RSA用于生成证书和密钥,是构建PKI(公钥基础设施)的核心组件。

第三步:配置证书颁发机构(CA)
复制Easy-RSA模板到指定目录:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

编辑vars文件,设置你的国家、组织等信息(如CN=YourName, O=YourOrg),然后执行以下命令生成CA密钥对:

./easyrsa init-pki
./easyrsa build-ca nopass

注意:nopass表示不设置密码,便于自动启动服务;若需更强安全性,可去掉此参数并手动输入密码。

第四步:生成服务器和客户端证书
为服务器生成证书和密钥:

./easyrsa gen-req server nopass
./easyrsa sign-req server server

为每个客户端生成单独的证书(示例:client1):

./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1

第五步:生成Diffie-Hellman密钥和TLS密钥

./easyrsa gen-dh
openvpn --genkey --secret ta.key

这些参数用于增强加密强度和防止重放攻击。

第六步:配置OpenVPN服务
创建主配置文件 /etc/openvpn/server.conf如下(可根据实际需求调整端口、协议等):

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
topology subnet
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
tls-auth /etc/openvpn/ta.key 0

第七步:启用IP转发并配置防火墙
修改 /etc/sysctl.conf,取消注释 net.ipv4.ip_forward=1,然后执行:

sysctl -p

配置iptables规则允许流量转发:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -p udp --dport 1194 -j ACCEPT

若使用ufw,还需添加规则:

ufw allow 1194/udp

第八步:启动服务

systemctl enable openvpn@server
systemctl start openvpn@server

第九步:分发客户端配置文件
将客户端所需的证书、密钥及配置文件打包,发送给用户,客户端配置文件示例如下:

client
dev tun
proto udp
remote your-vps-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
tls-auth ta.key 1
comp-lzo
verb 3

至此,你在VPS上的OpenVPN服务已成功部署!该方案支持多用户接入、高可用性扩展(可通过负载均衡器实现),且具备良好的日志监控能力,记住定期更新证书、备份配置文件,并关注OpenVPN官方安全公告,才能真正享受“网络自由”的同时保障数据安全。

在VPS上搭建高效安全的VPN服务,从零开始的网络自由之旅  第1张

半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速