随着远程办公和跨地域访问需求的日益增长,使用虚拟私人网络(VPN)已成为保障数据传输安全与隐私的重要手段,对于拥有VPS(虚拟专用服务器)资源的用户来说,在CentOS系统上部署OpenVPN是一种经济高效、稳定可控的选择,本文将详细介绍如何在CentOS 7或CentOS 8/9环境中从零开始搭建一个功能完整的OpenVPN服务,涵盖环境准备、证书生成、配置文件设置以及客户端连接步骤。
确保你的VPS已经安装并运行了CentOS操作系统(推荐使用CentOS Stream 9或CentOS 7作为长期支持版本),登录到服务器后,执行以下命令更新系统软件包:
sudo yum update -y
安装EPEL仓库(Extra Packages for Enterprise Linux),这是获取OpenVPN及相关工具的必要前提:
sudo yum install epel-release -y
然后安装OpenVPN和Easy-RSA(用于生成SSL/TLS证书):
sudo yum install openvpn easy-rsa -y
完成安装后,复制Easy-RSA模板到本地目录,并初始化PKI(公钥基础设施)环境:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件(位于/etc/openvpn/easy-rsa/vars),根据需要修改国家、组织、单位等信息(例如将KEY_COUNTRY="US"改为你的国家代码),保存后执行以下命令生成CA证书和密钥:
./clean-all ./build-ca ./build-key-server server ./build-key client1 ./build-dh
这些命令会依次生成根证书(CA)、服务器证书、客户端证书及Diffie-Hellman参数文件,建议为每个客户端单独生成证书以增强安全性。
将生成的证书和密钥复制到OpenVPN主配置目录:
cp keys/{ca.crt,server.crt,server.key,dh2048.pem} /etc/openvpn/
创建OpenVPN服务器主配置文件/etc/openvpn/server.conf如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.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
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
上述配置启用UDP协议、分配私有IP段、推送DNS设置,并开启压缩功能,若需启用日志记录,请确保/var/log/目录可写。
启动并启用OpenVPN服务:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
检查防火墙是否允许UDP端口1194通过(若使用firewalld):
sudo firewall-cmd --permanent --add-port=1194/udp sudo firewall-cmd --reload
客户端方面,只需将ca.crt、client1.crt、client1.key三个文件打包成.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
comp-lzo
verb 3
将该文件导入OpenVPN客户端(如Windows上的OpenVPN GUI或Linux终端),即可成功连接至你搭建的VPS隧道。
本方案基于标准开源技术栈,具备高安全性、灵活性与可扩展性,适用于个人学习、小型团队或企业内网接入场景,注意定期更新证书、监控日志、合理设置访问权限,才能实现长期稳定的远程访问体验。

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

