CentOS 7 下配置 OpenVPN 服务的完整指南,从安装到客户端连接详解

hyde1011 5 2026-05-13 06:31:26

在企业网络和远程办公场景中,虚拟私人网络(VPN)是保障数据安全传输的重要手段,对于仍在使用 CentOS 7 的系统环境(尽管该版本已于2024年停止维护,但仍有大量遗留系统在运行),配置 OpenVPN 是一个成熟、稳定且开源的选择,本文将详细介绍如何在 CentOS 7 上部署 OpenVPN 服务器,并实现客户端连接,涵盖环境准备、证书生成、服务配置、防火墙设置及常见问题排查。

第一步:系统环境准备
确保你的 CentOS 7 系统已更新至最新补丁,并安装必要的开发工具和依赖包:

sudo yum update -y
sudo yum groupinstall "Development Tools" -y
sudo yum install epel-release -y
sudo yum install openvpn easy-rsa -y

第二步:生成 PKI(公钥基础设施)证书
OpenVPN 使用 TLS 加密,因此需要通过 Easy-RSA 工具生成 CA 根证书、服务器证书和客户端证书,先复制默认配置文件:

cp -r /usr/share/easy-rsa/ /etc/openvpn/
cd /etc/openvpn/easy-rsa/3/

编辑 vars 文件,修改如下参数以适应你的组织信息(如国家、组织名称等):

export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@mycompany.com"

执行初始化并生成 CA 证书:

./easyrsa init-pki
./easyrsa build-ca

接下来生成服务器证书和密钥:

./easyrsa gen-req server nopass
./easyrsa sign-req server server

然后为每个客户端生成证书(示例以客户端名为 client1):

./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1

第三步:配置 OpenVPN 服务器
创建 /etc/openvpn/server.conf 文件,内容如下:

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/3/pki/ca.crt
cert /etc/openvpn/easy-rsa/3/pki/issued/server.crt
key /etc/openvpn/easy-rsa/3/pki/private/server.key
dh /etc/openvpn/easy-rsa/3/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"
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

第四步:启用 IP 转发与防火墙规则
/etc/sysctl.conf 中添加:

net.ipv4.ip_forward = 1

执行 sysctl -p 生效,然后配置 iptables:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -p udp --dport 1194 -j ACCEPT
service iptables save

第五步:启动服务与测试

systemctl enable openvpn@server
systemctl start openvpn@server

客户端可使用 OpenVPN GUI(Windows)或 Linux 命令行导入证书和配置文件(包含 ca.crt、client1.crt、client1.key),连接后即可访问内网资源。

注意事项:

  • 若出现“TLS Error: TLS key negotiation failed”,请检查证书匹配性。
  • 客户端需手动设置路由或使用 redirect-gateway 指令自动重定向流量。
  • 建议定期更新证书和密钥以增强安全性。

虽然 CentOS 7 已进入 EOL(生命周期结束),但在可控环境中仍可通过上述步骤搭建可靠 OpenVPN 服务,若条件允许,建议逐步迁移至 CentOS Stream 或 Rocky Linux 等现代发行版。

CentOS 7 下配置 OpenVPN 服务的完整指南,从安装到客户端连接详解

上一篇:固定IP环境下高效架设VPN的完整指南,从配置到优化
下一篇:HCS VPN是否值得推荐?深度解析其性能、安全与适用场景
相关文章
返回顶部小火箭