作为一名网络工程师,我经常需要为远程团队或个人用户提供安全、稳定的网络接入方案,近年来,基于VPS(虚拟专用服务器)搭建私有VPN服务成为许多用户首选的方式,尤其在CentOS操作系统环境下,因其稳定性高、社区支持强而备受青睐,本文将详细介绍如何在CentOS 7/8/9系统上部署和配置OpenVPN服务,实现从VPS环境准备到客户端连接的全流程。
确保你的VPS已经安装并运行CentOS系统,推荐使用CentOS Stream或CentOS Linux 7/8 LTS版本,因为它们长期支持且兼容性好,登录VPS后,建议先更新系统软件包:
sudo yum update -y
安装必要的工具,如EPEL仓库、firewalld防火墙管理器和OpenVPN服务本身:
sudo yum install epel-release -y sudo yum install openvpn easy-rsa firewalld -y
Easy-RSA是用于生成证书和密钥的工具,它是OpenVPN认证体系的核心,我们通过以下步骤初始化证书颁发机构(CA):
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa cp vars.example vars
编辑vars文件,根据实际需求修改国家代码、组织名称等字段,然后执行:
./easyrsa init-pki ./easyrsa build-ca
接着生成服务器证书和密钥:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
再为客户端生成证书(可批量生成多个客户端证书):
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
完成证书生成后,复制相关文件到OpenVPN配置目录:
cp pki/ca.crt pki/issued/server.crt pki/private/server.key /etc/openvpn/
创建主配置文件/etc/openvpn/server.conf如下(可根据网络环境调整端口、子网等参数):
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh 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转发功能以支持路由:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置防火墙规则,允许UDP 1194端口并设置NAT转发:
sudo firewall-cmd --permanent --add-port=1194/udp sudo firewall-cmd --permanent --add-masquerade sudo firewall-cmd --reload
最后启动OpenVPN服务并设为开机自启:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
至此,VPS上的OpenVPN服务已成功部署,用户只需下载客户端配置文件(包含ca.crt、client.crt、client.key),并用OpenVPN客户端导入即可连接,为了进一步提升安全性,建议启用双重认证(如使用Google Authenticator)或定期更换证书。
此方案适用于中小企业、远程办公、家庭用户等多种场景,既经济又灵活,作为网络工程师,掌握此类技能不仅能提升运维效率,还能为客户构建更安全可靠的网络环境。

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






