随着远程办公、跨地域协作和隐私保护需求的日益增长,越来越多的用户希望拥有一个专属且可控的虚拟私人网络(VPN)服务,相比市面上的商业VPN服务商,自建VPS上的VPN不仅成本更低、配置更灵活,还能完全掌控数据流向与安全性,本文将详细介绍如何在一台VPS(虚拟专用服务器)上部署并配置一个稳定可靠的OpenVPN服务,适合具备基础Linux操作能力的用户。

你需要准备以下资源:

  1. 一台VPS(推荐使用DigitalOcean、Linode或腾讯云等平台,操作系统建议Ubuntu 20.04/22.04 LTS);
  2. 一个域名(可选但推荐,便于管理);
  3. 基础的Linux命令行操作经验;
  4. 一台客户端设备(Windows、macOS、Android或iOS)用于连接测试。

第一步:登录VPS并更新系统
通过SSH连接到你的VPS主机(ssh root@your_vps_ip),执行以下命令确保系统是最新的:

apt update && apt upgrade -y

第二步:安装OpenVPN及相关工具
我们使用OpenVPN作为核心协议,配合Easy-RSA生成证书和密钥,运行:

apt install openvpn easy-rsa -y

第三步:配置PKI证书系统
复制Easy-RSA模板到指定目录,并初始化证书颁发机构(CA):

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

接着生成服务器证书和密钥:

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

生成Diffie-Hellman密钥交换参数(这是增强加密强度的重要步骤):

./easyrsa gen-dh

第四步:配置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
tls-auth /etc/openvpn/easy-rsa/pki/ta.key 0
cipher AES-256-CBC
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3

第五步:启用IP转发与防火墙规则
编辑 /etc/sysctl.conf,取消注释以下行以启用IP转发:

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

第六步:启动OpenVPN服务并配置客户端
启动服务并设置开机自启:

systemctl enable openvpn@server
systemctl start openvpn@server

为每个客户端生成证书和配置文件(使用 easyrsa gen-req client1 nopasseasyrsa sign-req client client1),并将客户端配置文件导出至本地设备进行连接测试。

通过以上步骤,你即可拥有一套属于自己的私有VPN服务,它不仅能实现加密通信,还可结合DDNS、反向代理等技术构建更高级的远程访问方案,真正实现“我的网络我做主”。

如何在VPS上自建VPN,从零开始搭建安全稳定的远程访问通道  第1张

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