在现代企业网络环境中,远程访问安全性和灵活性至关重要,CentOS 7 作为一款稳定、成熟且广泛使用的 Linux 发行版,非常适合用于搭建企业级虚拟专用网络(VPN)服务,本文将详细介绍如何在 CentOS 7 上安装、配置并启动 OpenVPN 服务,帮助你实现安全的远程访问。

确保你的 CentOS 7 系统已更新至最新状态,并具备 root 权限或 sudo 权限,打开终端,执行以下命令更新系统:

sudo yum update -y

安装 EPEL 源(Extra Packages for Enterprise Linux),因为 OpenVPN 在默认仓库中可能不是最新版本:

sudo yum install epel-release -y

然后安装 OpenVPN 及其依赖包:

sudo yum install openvpn easy-rsa -y

Easy-RSA 是一个用于生成证书和密钥的工具,是 OpenVPN 安全通信的核心组件。

安装完成后,复制示例配置文件到指定目录:

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

编辑服务器配置文件:

sudo vi /etc/openvpn/server.conf

关键配置项如下:

  • port 1194:OpenVPN 默认端口,可根据需要修改。
  • proto udp:使用 UDP 协议提高传输效率。
  • dev tun:创建点对点隧道设备。
  • ca /etc/openvpn/easy-rsa/pki/ca.crt:CA 根证书路径。
  • cert /etc/openvpn/easy-rsa/pki/issued/server.crt:服务器证书。
  • key /etc/openvpn/easy-rsa/pki/private/server.key:服务器私钥。
  • dh /etc/openvpn/easy-rsa/pki/dh.pem:Diffie-Hellman 参数文件。
  • server 10.8.0.0 255.255.255.0:分配给客户端的 IP 段。
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量通过 VPN。
  • push "dhcp-option DNS 8.8.8.8":推送 DNS 服务器地址。

保存后,我们需要生成证书和密钥,进入 Easy-RSA 目录并初始化 PKI:

cd /etc/openvpn/easy-rsa/
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass
sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server
sudo ./easyrsa gen-dh
sudo cp pki/dh.pem /etc/openvpn/

现在生成客户端证书(每台客户端都需要单独生成):

sudo ./easyrsa gen-req client1 nopass
sudo ./easyrsa sign-req client client1

启用并启动 OpenVPN 服务:

sudo systemctl enable openvpn@server
sudo systemctl start openvpn@server

检查状态:

sudo systemctl status openvpn@server

确保防火墙允许 1194/UDP 端口(若启用 firewalld):

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

至此,OpenVPN 服务已在 CentOS 7 上成功部署,客户端只需下载 CA 证书、服务器证书、客户端证书和私钥,配合 .ovpn 配置文件即可连接,这种基于证书的身份验证机制确保了数据传输的安全性,适合远程办公、分支机构互联等场景。

记住定期更新证书、监控日志、备份配置,是保障长期稳定运行的关键,希望本指南能帮助你在 CentOS 7 上快速搭建可靠的 OpenVPN 服务。

CentOS 7 系统中配置 OpenVPN 服务的完整指南  第1张

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