在 CentOS 系统上搭建安全可靠的 OpenVPN 服务器,从零开始的完整指南

dfbn6 2026-04-23 半仙VPN 3 0

在当今远程办公和跨地域协作日益普及的背景下,虚拟私人网络(VPN)已成为企业与个人用户保障数据传输安全的重要工具,OpenVPN 是一个开源、灵活且功能强大的 VPN 解决方案,广泛应用于 Linux 系统环境,尤其是 CentOS 这类稳定的企业级发行版,本文将详细介绍如何在 CentOS 7/8 或 CentOS Stream 系统中搭建一套完整的 OpenVPN 服务器,并配置客户端连接,确保安全性与可维护性。

准备工作至关重要,你需要一台运行 CentOS 的服务器(推荐使用最小化安装),具备公网 IP 地址,并开放 UDP 1194 端口(OpenVPN 默认端口),确保系统已更新至最新状态:

sudo yum update -y

安装 OpenVPN 和 Easy-RSA(用于证书管理):

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

完成安装后,我们进入核心步骤——生成证书和密钥,Easy-RSA 提供了一套标准流程来创建 CA(证书颁发机构)、服务器证书和客户端证书,初始化 PKI(公钥基础设施)目录:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

编辑 vars 文件,设置你的组织信息(如国家、省份、公司名等),这将用于后续证书签发,然后执行以下命令生成 CA 证书:

./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

配置 OpenVPN 服务端,复制模板配置文件并编辑:

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

关键配置项包括:

  • port 1194:指定监听端口;
  • proto udp:使用 UDP 协议提升性能;
  • dev tun:使用隧道模式;
  • ca ca.crtcert server.crtkey server.key:引用生成的证书;
  • dh dh.pem:生成 Diffie-Hellman 参数(运行 ./easyrsa gen-dh 获取);
  • server 10.8.0.0 255.255.255.0:分配给客户端的子网;
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走隧道;
  • push "dhcp-option DNS 8.8.8.8":推送 DNS 服务器;
  • user nobodygroup nobody:降低权限以增强安全性。

保存配置后,启用 IP 转发并配置防火墙:

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
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

客户端方面,下载服务器证书、CA、客户端证书和密钥,打包成 .ovpn 配置文件,客户端配置文件应包含:

client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
tls-auth ta.key 1

至此,你已经成功搭建了一个基于 CentOS 的 OpenVPN 服务器,支持多用户安全接入,适用于远程办公、站点互联或隐私保护等场景,通过合理配置日志记录、定期更新证书和加强访问控制,可以进一步提升整体安全性,持续监控与备份是运维的关键环节。

在 CentOS 系统上搭建安全可靠的 OpenVPN 服务器,从零开始的完整指南

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