在企业网络和远程办公日益普及的今天,通过虚拟专用网络(VPN)实现安全、加密的远程访问已成为基础网络架构的重要组成部分,CentOS 6 作为一款曾经广泛使用的 Linux 发行版,尽管已进入生命周期末期(EOL),但在某些遗留系统或教学环境中仍有使用价值,本文将详细介绍如何在 CentOS 6 系统上搭建一个功能完整的 OpenVPN 服务器,确保远程用户可以安全地接入内网资源。

确保你拥有一个运行 CentOS 6 的服务器,并具备 root 权限,建议在搭建前备份重要配置文件,以防操作失误导致服务中断,安装 OpenVPN 前,需要先更新系统软件包:

yum update -y

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

yum install openvpn easy-rsa -y

Easy-RSA 是 OpenVPN 的证书签发工具,它允许我们生成服务器证书、客户端证书和密钥,从而实现基于证书的身份验证,提高安全性。

安装完成后,复制 Easy-RSA 配置到标准路径:

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

接下来编辑 vars 文件,设置证书的组织信息(如国家、省份、组织名称等),

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

然后执行以下命令初始化证书颁发机构(CA):

./clean-all
./build-ca

这一步会创建 CA 根证书(ca.crt)和私钥(ca.key),是后续所有证书的基础。

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

./build-key-server server

根据提示输入相关信息并确认是否信任此证书(输入 yes),完成后,生成 server.crt 和 server.key。

随后生成客户端证书(每个用户需单独生成):

./build-key client1

同样按提示操作即可,生成后,你会得到 client1.crt、client1.key 和 ca.crt,这些文件将在客户端配置中使用。

配置 OpenVPN 服务端,复制示例配置文件:

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

编辑 /etc/openvpn/server.conf,修改关键参数如下:

  • port 1194:指定监听端口(可更改)
  • proto udp:推荐使用 UDP 协议以提升性能
  • dev tun:使用 TUN 模式创建虚拟点对点隧道
  • ca ca.crt
  • cert server.crt
  • key server.key
  • dh dh2048.pem:生成 Diffie-Hellman 参数(执行 ./build-dh

启用 IP 转发和防火墙规则,编辑 /etc/sysctl.conf,确保:

net.ipv4.ip_forward = 1

应用更改:

sysctl -p

配置 iptables 允许流量转发:

iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

保存规则:

service iptables save

启动 OpenVPN 服务:

service openvpn start
chkconfig openvpn on

至此,OpenVPN 服务器已成功部署,客户端可通过 .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

通过上述步骤,你可以构建一个功能完整、安全可靠的 OpenVPN 服务,为远程办公或分支机构提供加密通道,虽然 CentOS 6 已不再受支持,但其稳定性和成熟生态仍适合用于教学和测试环境,在生产环境中,建议迁移到 CentOS Stream 或其他现代发行版以获得更好的安全性和长期支持。

在 CentOS 6 上搭建安全可靠的 OpenVPN 服务器指南  第1张

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