CentOS 6 下搭建 OpenVPN 服务的完整指南,从配置到安全优化

dfbn6 2026-04-02 vpn 16 0

在企业网络和远程办公场景中,虚拟私人网络(VPN)是保障数据传输安全的关键技术之一,对于仍在使用 CentOS 6(尽管已停止维护)的老系统环境,搭建一个稳定、安全的 OpenVPN 服务仍具有现实意义,本文将详细介绍如何在 CentOS 6 系统上安装、配置并优化 OpenVPN 服务,确保远程用户能够安全地访问内网资源。

确保你的 CentOS 6 系统已更新至最新补丁(虽然官方不再支持,但若仍用于测试或生产,请务必手动更新关键组件),运行以下命令安装 EPEL 源:

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

使用 yum 安装 OpenVPN 及其依赖包:

yum install openvpn easy-rsa -y

OpenVPN 的核心在于证书认证机制,因此我们需使用 Easy-RSA 工具生成 CA 证书和服务器/客户端证书,进入 /etc/openvpn/easy-rsa 目录并初始化 PKI:

cd /etc/openvpn/easy-rsa
source vars
./clean-all
./build-ca    # 生成根证书,按提示输入相关信息
./build-key-server server   # 生成服务器证书
./build-key client1         # 为第一个客户端生成证书
./build-dh                  # 生成 Diffie-Hellman 参数

生成完成后,复制必要文件到 OpenVPN 配置目录:

cp keys/ca.crt keys/server.crt keys/server.key keys/dh2048.pem /etc/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 openvpn-status.log
verb 3

此配置启用 UDP 协议、TUN 模式、LZO 压缩,并推送路由和 DNS 设置,使客户端自动通过 VPN 访问内网。

启动 OpenVPN 服务并设置开机自启:

service openvpn start
chkconfig openvpn on

防火墙方面,需开放 UDP 1194 端口,并启用 IP 转发:

iptables -A INPUT -p udp --dport 1194 -j ACCEPT
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p

分发客户端配置文件给用户(如 client.ovpn),其中包含连接地址、CA 证书、客户端证书和私钥等信息。

⚠️ 注意:由于 CentOS 6 已于 2024 年停止支持,建议仅用于测试或遗留系统,生产环境应尽快迁移到 CentOS Stream 或 AlmaLinux 等受支持版本,若必须使用旧系统,务必加强日志监控、定期更新软件包、限制访问源 IP,并考虑部署双因素认证增强安全性。

通过以上步骤,你可以在 CentOS 6 上成功搭建一个功能完整的 OpenVPN 服务,满足基本远程接入需求。

CentOS 6 下搭建 OpenVPN 服务的完整指南,从配置到安全优化

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