在VPS上搭建个人VPN服务,从零开始的网络自由之路

dfbn6 2026-04-20 vpn 4 0

随着远程办公、跨地域访问和隐私保护需求的日益增长,越来越多用户选择在自己的VPS(虚拟专用服务器)上部署私有VPN服务,这不仅提升了网络访问的安全性与灵活性,还能绕过地区限制,实现真正的“数字主权”,作为一名资深网络工程师,我将带你一步步在VPS上搭建一个稳定、安全且易于管理的OpenVPN服务,让你从此拥有属于自己的加密通道。

准备工作必不可少,你需要一台已部署好的VPS,推荐使用Ubuntu 20.04或22.04 LTS版本,因为它们社区支持广泛,文档丰富,确保你的VPS有公网IP地址,并在云服务商控制台开放必要的端口(如UDP 1194,默认OpenVPN端口),建议开启防火墙(UFW)进行最小权限配置,避免暴露不必要的服务。

第二步是安装OpenVPN及相关工具,通过SSH登录到你的VPS后,执行以下命令:

sudo apt update && sudo apt upgrade -y
sudo apt install openvpn easy-rsa -y

easy-rsa 是用于生成SSL/TLS证书的工具包,对构建安全的VPN环境至关重要,我们需要创建PKI(公钥基础设施)密钥体系,运行:

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

这里我们创建了一个本地CA(证书颁发机构),并跳过了密码保护,方便自动化部署,下一步是生成服务器证书和密钥:

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

然后生成客户端证书和密钥(每个设备都需要单独证书):

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

你已经拥有了服务器和客户端所需的全部证书文件,第三步是配置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"
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

这个配置启用了TUN模式(点对点隧道)、自动DNS转发、压缩功能,并设置了默认路由重定向,确保所有流量都通过VPN隧道传输。

第四步是启用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

最后一步是启动服务并设置开机自启:

systemctl enable openvpn@server
systemctl start openvpn@server

完成以上步骤后,你可以将生成的客户端配置文件(client1.ovpn)导出给终端设备使用,只需在手机、电脑上导入该文件即可连接你的私人VPN。

需要注意的是,虽然这种方式成本低、灵活度高,但必须定期更新证书、监控日志、防范DDoS攻击,建议结合fail2ban等工具增强安全性。

在VPS上架设个人VPN不仅是技术实践,更是对数字隐私的主动掌控,掌握这项技能,你将不再依赖第三方服务,真正实现“我的网络,我做主”。

在VPS上搭建个人VPN服务,从零开始的网络自由之路

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