在当今数字化时代,隐私保护和网络自由已成为用户关注的核心议题,对于个人用户、远程办公人员或小型企业来说,在自己的VPS(虚拟专用服务器)上搭建一个私有VPN服务,是一种既经济又灵活的选择,本文将详细讲解如何在Linux VPS上使用OpenVPN或WireGuard两种主流协议,从环境准备到最终配置,手把手带你完成整个过程。

确保你已经拥有一台运行Linux(推荐Ubuntu 20.04/22.04或CentOS Stream)的VPS,并具备root权限,通过SSH登录后,建议先更新系统软件包:

sudo apt update && sudo apt upgrade -y

接下来以OpenVPN为例进行部署,安装OpenVPN及相关工具:

sudo apt install openvpn easy-rsa -y

Easy-RSA用于生成证书和密钥,是OpenVPN认证体系的核心,复制证书模板到本地目录并初始化PKI:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass

这里会提示输入“Common Name”,填写如OpenVPN-CA即可,接着生成服务器证书和密钥:

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

然后生成Diffie-Hellman参数和TLS密钥:

sudo ./easyrsa gen-dh
sudo 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
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
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

启动服务并设置开机自启:

sudo systemctl enable openvpn@server
sudo systemctl start openvpn@server

开启IP转发并配置iptables规则,允许流量转发:

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl -p
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

至此,一个功能完整的OpenVPN服务器已部署成功,客户端可通过.ovpn配置文件连接,实现加密隧道访问内网资源或绕过地理限制。

如果你追求更高性能与更低延迟,可考虑使用WireGuard替代OpenVPN,其配置更简洁、性能更强,适合现代高并发场景。

在VPS上搭建私有VPN不仅提升了网络安全性,还赋予你对数据流动的完全掌控权,无论你是技术爱好者还是企业IT管理者,掌握这项技能都极具实用价值。

如何在VPS上搭建安全可靠的VPN服务,从零开始的完整指南  第1张

VPN加速器|半仙VPN加速器-免费VPN梯子首选半仙VPN