在企业网络和远程办公场景中,虚拟私人网络(VPN)已成为保障数据安全与远程访问的重要工具,CentOS作为一款稳定、安全且广泛应用于服务器环境的操作系统,非常适合部署OpenVPN服务,本文将详细介绍如何在CentOS 7/8系统中安装、配置并测试OpenVPN服务,帮助网络管理员快速搭建一个可信赖的私有网络通道。

确保你已拥有一个运行CentOS的服务器,并具备root权限或sudo权限,我们以CentOS 7为例进行演示。

第一步:安装OpenVPN及相关依赖
使用YUM包管理器安装OpenVPN和Easy-RSA(用于证书生成):

yum install epel-release -y
yum install openvpn easy-rsa -y

第二步:初始化PKI(公钥基础设施)
Easy-RSA用于创建SSL/TLS证书和密钥,是OpenVPN认证的核心,执行以下命令初始化证书目录:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
cp vars.example vars

编辑vars文件,设置组织信息(如国家、省份、组织名等),然后生成CA证书:

./clean-all
./build-ca

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

./build-key-server server

为客户端生成证书(每台客户端需单独生成):

./build-key client1

最后生成Diffie-Hellman参数和TLS密钥:

./build-dh
openvpn --genkey --secret ta.key

第三步:配置OpenVPN服务端
复制示例配置文件并修改:

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

关键配置项包括:

  • port 1194:指定监听端口(默认UDP)
  • proto udp:使用UDP协议提升性能
  • dev tun:创建点对点隧道
  • ca ca.crtcert server.crtkey server.key:引用证书文件路径
  • dh dh.pem:引入Diffie-Hellman参数
  • server 10.8.0.0 255.255.255.0:分配给客户端的IP段
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN
  • tls-auth ta.key 0:启用TLS验证

第四步:启动服务并配置防火墙
启用OpenVPN服务并设置开机自启:

systemctl enable openvpn@server
systemctl start openvpn@server

若使用firewalld,开放UDP 1194端口:

firewall-cmd --add-port=1194/udp --permanent
firewall-cmd --reload

第五步:客户端配置与连接
客户端需获取以下文件:ca.crtclient1.crtclient1.keyta.key,并创建.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
tls-auth ta.key 1

使用OpenVPN GUI或命令行导入该文件即可连接。

通过以上步骤,你已在CentOS上成功部署了OpenVPN服务,支持多用户安全接入,后续可根据需求调整加密算法、添加用户策略或集成LDAP认证,实现更灵活的访问控制,记住定期备份证书和配置文件,是运维中的关键习惯。

CentOS系统下配置OpenVPN服务的完整指南,从安装到客户端连接详解  第1张

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