作为一位网络工程师,我经常被客户或同事问到:“如何在CentOS服务器上搭建一个可靠的VPN服务?”尤其在企业环境中,员工需要远程访问内网资源、开发人员需连接测试环境、或者家庭用户希望安全地浏览互联网时,部署一个稳定且可管理的VPN服务就显得尤为重要,本文将详细介绍如何在CentOS 7/8(或RHEL 7/8)系统中安装和配置OpenVPN服务,帮助你构建一个安全、高效、可扩展的远程访问解决方案。
我们需要明确几个前提条件:
- 一台运行CentOS 7或更高版本的服务器(建议使用最小化安装,避免冗余服务干扰)
- 一个公网IP地址(用于客户端连接)
- 本地DNS解析能力(如BIND或/etc/hosts文件配置)
- 熟悉Linux命令行操作(SSH登录、文本编辑等)
第一步:准备工作 登录服务器后,执行以下命令更新系统并安装必要软件包:
sudo yum update -y sudo yum install epel-release -y sudo yum install openvpn easy-rsa -y
Easy-RSA是OpenSSL的简化工具集,用于生成证书和密钥,是OpenVPN身份认证的核心组件。
第二步:配置OpenVPN服务器
我们以/etc/openvpn/server为配置目录,先复制示例配置文件:
sudo cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/server/ sudo nano /etc/openvpn/server/server.conf
打开配置文件后,修改以下关键参数:
port 1194:默认端口,可根据需求改为其他(注意防火墙开放)proto udp:UDP协议性能更好,适合广域网传输dev tun:使用隧道模式,适合点对点加密通信ca /etc/openvpn/easy-rsa/pki/ca.crt:CA根证书路径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:Diffie-Hellman参数(后续生成)server 10.8.0.0 255.255.255.0:分配给客户端的虚拟IP段push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN(可选)push "dhcp-option DNS 8.8.8.8":推送DNS服务器(如Google公共DNS)
第三步:生成证书与密钥 进入Easy-RSA目录并初始化PKI:
cd /etc/openvpn/easy-rsa/ sudo ./easyrsa init-pki sudo ./easyrsa build-ca nopass # 生成CA证书(无需密码) sudo ./easyrsa gen-req server nopass # 生成服务器请求 sudo ./easyrsa sign-req server server # 签署服务器证书 sudo ./easyrsa gen-dh # 生成Diffie-Hellman参数
第四步:启动并设置开机自启 确保系统防火墙放行UDP 1194端口(如果使用firewalld):
sudo firewall-cmd --permanent --add-port=1194/udp sudo firewall-cmd --reload
然后启用OpenVPN服务:
sudo systemctl enable openvpn-server@server.service sudo systemctl start openvpn-server@server.service
第五步:客户端配置
客户端需下载ca.crt、client.crt、client.key和ta.key(由easyrsa gen-ta生成),并创建.ovpn配置文件,
client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
tls-auth ta.key 1
auth-user-pass
第六步:测试与优化
使用OpenVPN客户端(Windows/Linux/macOS均可)连接测试,若失败,请检查日志:journalctl -u openvpn-server@server.service。
最后提醒:为了安全,建议定期更新证书、限制客户端数量、使用强密码策略,并结合fail2ban防止暴力破解,可结合Nginx + Let's Encrypt实现HTTPS代理,进一步提升安全性。
通过以上步骤,你已在CentOS上成功部署了一个功能完整的OpenVPN服务,既满足远程办公需求,也为未来扩展(如多站点互联)打下基础,网络安全无小事,配置完成后务必进行压力测试和渗透验证。

半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速


