作为一名网络工程师,我经常遇到客户或团队成员需要在Linux服务器上部署虚拟私有网络(VPN)服务以保障远程访问的安全性,如果你正在使用CentOS操作系统,并考虑通过OpenVPS(一个开源的虚拟私人服务器平台)来实现这一目标,那么这篇文章将为你提供从零开始搭建OpenVPS + OpenVPN服务的详细步骤和最佳实践。

明确你的需求:你希望通过OpenVPS平台部署一个基于CentOS的虚拟机实例,并在其上配置OpenVPN服务,实现多用户安全接入内网资源,这在企业远程办公、开发测试环境隔离或跨地域数据传输中非常常见。

第一步:准备CentOS环境
确保你已经获取一台运行CentOS 7或8的物理服务器或云主机(例如阿里云、腾讯云或OpenVPS提供的VPS),登录服务器后,执行以下基础操作:

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

第二步:配置OpenVPN服务
OpenVPN的核心是证书管理,使用Easy-RSA工具生成CA证书、服务器证书和客户端证书,进入 /etc/openvpn/easy-rsa 目录,编辑 vars 文件设置国家、组织等信息,然后执行:

cd /etc/openvpn/easy-rsa
./easyrsa init-pki
./easyrsa build-ca nopass
./easyrsa gen-req server nopass
./easyrsa sign-req server server
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1

第三步:生成Diffie-Hellman密钥和TLS密钥
这些用于加密通信和增强安全性:

./easyrsa gen-dh
openvpn --genkey --secret ta.key

第四步:配置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"
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3

第五步:启用IP转发并配置防火墙
编辑 /etc/sysctl.conf,取消注释 net.ipv4.ip_forward = 1,并执行:

sysctl -p
firewall-cmd --permanent --add-port=1194/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload

第六步:启动OpenVPN服务并配置客户端

systemctl enable openvpn@server
systemctl start openvpn@server

将生成的客户端证书(client1.crt、client1.key、ca.crt、ta.key)打包成.ovpn文件,分发给用户,用户只需导入该配置文件即可连接。

注意事项:

  • 使用强密码保护证书和私钥;
  • 定期更新证书有效期(建议每1年更换一次);
  • 若结合OpenVPS平台,注意其网络策略是否允许UDP 1194端口入站;
  • 建议开启日志记录(log /var/log/openvpn.log)便于故障排查。

通过以上步骤,你可以在CentOS上成功部署一套稳定、安全的OpenVPS + OpenVPN组合方案,满足大多数远程接入场景的需求,作为网络工程师,我们不仅要关注功能实现,更要重视安全性和可维护性——这才是专业价值所在。

在CentOS系统上搭建OpenVPS与VPN服务的完整指南,从环境准备到安全配置  第1张

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