随着企业对远程办公和安全通信需求的增加,虚拟私人网络(VPN)已成为不可或缺的技术工具,尤其对于运行在老旧系统上的 VPS(虚拟专用服务器),如 CentOS 6.4 这类已经停止官方支持的操作系统,合理部署 OpenVPN 可以有效实现安全远程访问,本文将详细介绍如何在 CentOS 6.4 的 VPS 上从零开始搭建 OpenVPN 服务,包括环境准备、证书生成、配置文件设置以及防火墙规则调整等关键步骤。
确保你的 CentOS 6.4 VPS 已完成基础更新,并安装了必要的开发工具包,由于该版本已不再受支持,建议先手动执行 yum update(如果可用)或使用本地缓存包进行最小化升级,避免因漏洞导致安全隐患,接着安装 OpenVPN 和 Easy-RSA(用于证书管理):
yum install -y openvpn easy-rsa
配置证书颁发机构(CA),复制 Easy-RSA 模板到 /etc/openvpn/ 目录下并初始化:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑 vars 文件,根据需要修改国家、组织名、密钥长度等参数,然后执行以下命令生成 CA 私钥和证书:
./clean-all ./build-ca
随后为服务器生成证书和密钥:
./build-key-server server
为客户端生成证书(每个客户端需单独生成):
./build-key client1
生成 Diffie-Hellman 参数(用于加密协商):
./build-dh
所有证书和密钥生成完成后,复制相关文件至 OpenVPN 配置目录:
cp ca.crt ca.key dh2048.pem server.crt server.key /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
cipher AES-256-CBC
auth SHA256
tls-auth ta.key 0
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
注意:你还需要生成 ta.key(TLS 密钥):
openvpn --genkey --secret ta.key
并将该文件也复制到 /etc/openvpn/。
配置完成后,启用 IP 转发功能(允许 VPS 在客户端连接时转发流量):
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置 iptables 规则,允许 OpenVPN 流量并通过 NAT 转发客户端请求:
iptables -A INPUT -p udp --dport 1194 -j ACCEPT iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE service iptables save
启动 OpenVPN 服务并设置开机自启:
service openvpn start chkconfig openvpn on
至此,OpenVPN 服务已在 CentOS 6.4 VPS 上成功运行,客户端可通过 .ovpn 文件连接,其中包含 CA 证书、客户端证书、私钥及服务器地址信息,建议定期备份证书和配置文件,并考虑未来迁移到受支持的系统(如 CentOS Stream 或 AlmaLinux),以保障长期安全性与稳定性。
虽然 CentOS 6.4 已退役,但其轻量级特性仍适合用于测试或遗留项目中的简单 VPN 环境,只要严格遵循安全实践,依然可以构建可靠的服务。

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






