在CentOS VPS上搭建安全可靠的OpenVPN服务指南

dfbn6 2026-04-11 VPN翻墙 10 0

随着远程办公和跨地域访问需求的日益增长,使用虚拟私人网络(VPN)已成为保障数据传输安全的重要手段,对于拥有CentOS VPS(虚拟专用服务器)的用户而言,自行搭建一个稳定、安全的OpenVPN服务不仅成本低廉,还能根据自身需求灵活定制,本文将详细介绍如何在CentOS 7/8系统中部署OpenVPN服务,并配置客户端连接,实现私密网络通信。

第一步:准备环境
确保你的VPS已安装CentOS操作系统(推荐使用CentOS Stream或CentOS 7/8),并具备公网IP地址,登录服务器后,首先更新系统软件包:

sudo yum update -y

第二步:安装OpenVPN及相关工具
OpenVPN依赖于Easy-RSA用于证书管理,我们先安装这些组件:

sudo yum install epel-release -y
sudo yum install openvpn easy-rsa -y

第三步:生成SSL证书与密钥
OpenVPN采用PKI(公钥基础设施)进行身份验证,需通过Easy-RSA创建CA证书、服务器证书和客户端证书。

  1. 复制Easy-RSA模板到指定目录:

    make-cadir /etc/openvpn/easy-rsa
    cd /etc/openvpn/easy-rsa
  2. 编辑vars文件,设置国家、组织等信息(如CN=China, O=MyCompany):

    nano vars
  3. 初始化PKI并生成CA证书:

    ./clean-all
    ./build-ca
  4. 生成服务器证书和密钥:

    ./build-key-server server
  5. 为客户端生成证书(可多次执行以支持多个设备):

    ./build-key client1
  6. 生成Diffie-Hellman参数(提升加密强度):

    ./build-dh

第四步:配置OpenVPN服务器
复制示例配置文件并修改关键参数:

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

关键配置项包括:

  • port 1194:监听端口(建议改为非默认端口以减少扫描攻击)
  • proto udp:使用UDP协议提高性能
  • dev tun:创建点对点隧道
  • ca ca.crt, cert server.crt, key server.key:引用刚刚生成的证书
  • dh dh.pem:指定Diffie-Hellman参数文件
  • server 10.8.0.0 255.255.255.0:分配给客户端的子网
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN隧道
  • push "dhcp-option DNS 8.8.8.8":指定DNS服务器

第五步:启动并启用OpenVPN服务

systemctl start openvpn@server
systemctl enable openvpn@server

第六步:配置防火墙与NAT转发
若VPS运行在云服务商(如阿里云、腾讯云),需开放UDP 1194端口,同时开启IP转发并配置SNAT规则:

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

第七步:客户端配置
将生成的ca.crtclient1.crtclient1.key文件打包发送至客户端,并创建.ovpn配置文件,内容包含服务器IP、端口及证书路径,使用OpenVPN客户端导入该配置即可连接。

至此,你在CentOS VPS上已成功搭建了一个功能完整、安全性高的OpenVPN服务,可满足个人或小型团队的远程访问需求,后续可根据需要添加认证方式(如双因素验证)、日志审计等功能进一步增强安全性。

在CentOS VPS上搭建安全可靠的OpenVPN服务指南

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