在企业网络和远程办公日益普及的今天,虚拟专用网络(VPN)已成为保障数据安全传输的重要手段,CentOS 7.3 作为一款稳定、成熟的企业级 Linux 发行版,非常适合用于部署 OpenVPN 服务,本文将详细介绍如何在 CentOS 7.3 系统中从零开始搭建 OpenVPN 服务,并完成客户端的配置与连接测试,帮助网络工程师快速实现安全的远程访问。
确保你拥有一个运行 CentOS 7.3 的服务器(建议使用最小化安装版本),并具备 root 权限,登录后,更新系统软件包:
yum update -y
安装 EPEL 源以获取更多可用软件包:
yum install epel-release -y
然后安装 OpenVPN 及其依赖组件:
yum install openvpn easy-rsa -y
Easy-RSA 是用于生成证书和密钥的工具,是 OpenVPN 安全认证的核心组件。
配置证书颁发机构(CA),复制 Easy-RSA 配置文件到默认路径:
cp -r /usr/share/easy-rsa/ /etc/openvpn/ cd /etc/openvpn/easy-rsa/
编辑 vars 文件,根据你的需求修改国家、组织名称等信息(如 CN=China, O=MyCompany),这将在后续生成证书时生效。
执行以下命令初始化 CA 和生成密钥:
./easyrsa init-pki ./easyrsa build-ca nopass
注意:nopass 表示不设置密码,适合自动化场景,但生产环境建议设置强密码保护 CA 私钥。
生成服务器证书和密钥:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
生成客户端证书(可为多个用户分别生成):
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
生成 Diffie-Hellman 密钥交换参数(此过程较慢,需几分钟):
./easyrsa gen-dh
将生成的证书和密钥复制到 OpenVPN 配置目录:
cp pki/ca.crt pki/private/server.key pki/issued/server.crt pki/dh.pem /etc/openvpn/
创建主配置文件 /etc/openvpn/server.conf如下(可根据实际网络调整):
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh 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 openvpn-status.log
verb 3
启用 IP 转发功能(让服务器能转发客户端流量):
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置防火墙(firewalld)允许 OpenVPN 流量:
firewall-cmd --permanent --add-port=1194/udp firewall-cmd --permanent --add-masquerade firewall-cmd --reload
启动 OpenVPN 服务并设为开机自启:
systemctl start openvpn@server systemctl enable openvpn@server
至此,OpenVPN 服务已在 CentOS 7.3 上成功部署,客户端只需下载服务器端的 ca.crt、client1.crt、client1.key,并按标准格式配置 .ovpn 文件即可连接。
通过以上步骤,网络工程师可在 CentOS 7.3 环境中构建出一个安全、可靠、易于维护的 OpenVPN 解决方案,满足企业或个人对远程网络访问的安全需求。

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






