随着互联网技术的飞速发展,越来越多的用户希望通过虚拟专用网络(VPN)来保护隐私、绕过地理限制或提升远程办公效率,对于具备一定技术基础的用户来说,在自己的VPS(Virtual Private Server,虚拟私有服务器)上搭建一个自用的VPN服务,不仅成本低廉,还能完全掌控数据流向和安全性,本文将详细介绍如何在Linux系统下的VPS上部署一个稳定、安全且高效的OpenVPN服务,帮助你实现真正的网络自由。

第一步:准备环境
你需要一台运行Linux(推荐Ubuntu 20.04或CentOS 7以上版本)的VPS,并确保其拥有公网IP地址,登录VPS后,建议首先更新系统包管理器并安装必要的工具:

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

第二步:配置证书颁发机构(CA)
OpenVPN依赖于SSL/TLS加密通信,因此必须先创建CA根证书,使用easy-rsa工具生成证书和密钥:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
cp vars.example vars

编辑vars文件,设置国家、组织等信息,然后执行以下命令生成CA证书:

./clean-all
./build-ca

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

./build-key-server server

为每个客户端生成唯一证书(如客户名为client1):

./build-key client1

同时生成Diffie-Hellman参数以增强加密强度:

./build-dh

第四步:配置OpenVPN服务端
复制模板文件到配置目录:

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

编辑/etc/openvpn/server.conf,关键配置如下:

  • port 1194:指定监听端口(可改为其他非标准端口)
  • proto udp:使用UDP协议提升性能
  • dev tun:使用TUN模式创建虚拟网卡
  • ca, cert, key, dh:指向刚才生成的证书路径
  • server 10.8.0.0 255.255.255.0:定义内部IP池
  • push "redirect-gateway def1 bypass-dhcp":强制所有流量走VPN隧道
  • push "dhcp-option DNS 8.8.8.8":设置DNS服务器

第五步:启动服务并配置防火墙
启用OpenVPN服务:

systemctl enable openvpn@server
systemctl start openvpn@server

开放防火墙端口(UFW示例):

ufw allow 1194/udp
ufw allow ssh
ufw enable

第六步:客户端配置
将生成的客户端证书(client1.crt)、密钥(client1.key)和CA证书(ca.crt)打包成.ovpn包含:

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
cipher AES-256-CBC
verb 3

通过OpenVPN客户端导入该配置文件即可连接。

在VPS上搭建自建VPN不仅能规避第三方服务商的数据监控风险,还支持灵活定制策略,比如结合WireGuard实现更高性能,或配合Fail2Ban防止暴力破解,虽然过程稍显复杂,但一旦成功部署,你将获得一个真正属于自己的加密网络通道——这正是现代数字生活中不可或缺的隐私保障。

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

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