如何在VPS空间上搭建安全可靠的VPN服务—从零开始的完整指南

banxian666777 2026-05-11 免费VPN 5 0

随着远程办公、跨地域访问和隐私保护需求的日益增长,越来越多的用户希望通过虚拟私人网络(VPN)来加密通信流量并绕过地理限制,对于技术爱好者或小型企业而言,在VPS(Virtual Private Server)空间上自建一个稳定、安全且可定制的VPN服务,不仅成本低,还能完全掌控数据安全,本文将详细介绍如何在Linux系统(以Ubuntu为例)的VPS环境中搭建OpenVPN服务,适合具备基础命令行操作能力的用户参考。

第一步:准备环境
确保你已拥有一个运行Linux(推荐Ubuntu 20.04/22.04 LTS)的VPS实例,并通过SSH登录,建议使用root账户或具有sudo权限的用户进行配置,更新系统软件包:

sudo apt update && sudo apt upgrade -y

第二步:安装OpenVPN和Easy-RSA
OpenVPN是开源且广泛支持的VPN协议,而Easy-RSA用于生成证书和密钥,执行以下命令安装所需组件:

sudo apt install openvpn easy-rsa -y

第三步:配置证书颁发机构(CA)
创建证书目录并初始化PKI(公钥基础设施):

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

编辑vars文件,设置国家、组织等信息(如CN=China, O=MyCompany),然后执行:

./clean-all
./build-ca

此步骤会生成根证书(ca.crt),这是后续所有客户端和服务器证书的信任基础。

第四步:生成服务器证书和密钥
运行:

./build-key-server server

按提示输入相关信息,确认后生成服务器证书(server.crt)、私钥(server.key)和Diffie-Hellman参数(dh.pem)。
继续生成客户端证书(每个用户需单独生成):

./build-key client1

将生成的client1.crt、client1.key和ca.crt打包成.ovpn配置文件供客户端使用。

第五步:配置OpenVPN服务器
复制模板配置文件到主目录:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

编辑/etc/openvpn/server.conf,关键修改项包括:

  • port 1194(默认端口,可改为其他)
  • proto udp(UDP性能优于TCP)
  • dev tun(使用隧道模式)
  • ca ca.crtcert server.crtkey server.key(指定证书路径)
  • dh dh.pem(添加Diffie-Hellman参数)
  • push "redirect-gateway def1 bypass-dhcp"(强制客户端流量走VPN)
  • push "dhcp-option DNS 8.8.8.8"(指定DNS服务器)

第六步:启用IP转发和防火墙规则
允许内核转发IP数据包:

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
sysctl -p

配置iptables规则(或使用ufw):

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
ufw enable

第七步:启动服务并测试
启动OpenVPN服务:

systemctl start openvpn@server
systemctl enable openvpn@server

客户端可通过.ovpn文件连接,需包含ca.crt、client1.crt、client1.key以及服务器IP地址。

至此,一个功能完整的个人或企业级VPN服务已在VPS上部署完成,相比商业服务,自建方案更灵活、可控,且无日志留存风险,但需注意定期更新证书、监控日志、防范DDoS攻击,并考虑使用Fail2Ban等工具增强安全性,对于初学者,建议先在测试环境中验证流程,再投入生产使用。

如何在VPS空间上搭建安全可靠的VPN服务—从零开始的完整指南

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