在企业网络环境中,尤其是在使用 CentOS 6.4 这类较老但仍在维护的系统时,如何安全地远程访问内网资源是一个常见需求,OpenVPN 是一个开源、跨平台、功能强大的虚拟私人网络(VPN)解决方案,特别适合部署在 CentOS 6.4 这类基于 Red Hat 的 Linux 发行版上,本文将详细介绍如何在 CentOS 6.4 系统中从零开始搭建 OpenVPN 服务,并配置客户端连接,确保安全性与可用性。
确认你的 CentOS 6.4 系统已安装基础开发工具和依赖包,执行以下命令:
yum groupinstall "Development Tools" -y yum install openssl-devel lzo-devel pam-devel -y
下载并编译安装 OpenVPN,建议从官方源获取稳定版本(如 2.4.x),因为 CentOS 6.4 自带的软件仓库中版本可能较旧,兼容性差,下载后解压、配置、编译:
wget https://swupdate.openvpn.net/community/releases/openvpn-2.4.10.tar.gz tar -xzf openvpn-2.4.10.tar.gz cd openvpn-2.4.10 ./configure --disable-plugin-auth-pam --disable-dependency-tracking make && make install
完成安装后,我们需要生成证书和密钥,这是 OpenVPN 安全通信的核心,推荐使用 Easy-RSA 工具包,它随 OpenVPN 提供,复制默认配置到 /etc/openvpn/easy-rsa/ 并修改参数:
cp -r /usr/share/doc/openvpn-*/easy-rsa /etc/openvpn/ cd /etc/openvpn/easy-rsa/2.0/ vi vars # 修改 KEY_COUNTRY、KEY_PROVINCE、KEY_CITY 等字段
然后执行以下命令生成 CA 证书、服务器证书和客户端证书:
source ./vars ./clean-all ./build-ca # 生成 CA 根证书 ./build-key-server server # 生成服务器证书 ./build-key client1 # 生成客户端证书 ./build-dh # 生成 Diffie-Hellman 参数
创建 OpenVPN 服务配置文件 /etc/openvpn/server.conf示例如下:
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
server 10.8.0.0 255.255.255.0
push "route 192.168.1.0 255.255.255.0"
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
启动服务前,启用 IP 转发并配置 iptables 规则:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p 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
启动 OpenVPN 服务并设置开机自启:
service openvpn start chkconfig openvpn on
客户端连接时,需提供 client1.crt、client1.key 和 ca.crt 文件,并配置 .ovpn 配置文件,至此,一个完整的 OpenVPN 服务即部署完毕,可满足基本远程办公或内网穿透需求,注意:由于 CentOS 6.4 已于 2024 年停止支持,请在生产环境中尽快升级系统以保障安全。

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






