在现代企业网络架构中,虚拟私人网络(VPN)已成为保障远程办公、跨地域访问和数据加密传输的核心技术之一,对于使用CentOS作为服务器操作系统的用户而言,OpenVPN是一个功能强大且开源的解决方案,能够帮助你快速构建一个安全、可扩展的私有网络隧道,本文将详细介绍如何在CentOS 7/8/9系统上部署和配置OpenVPN服务,涵盖证书生成、服务安装、防火墙设置及客户端连接等完整流程。

第一步:准备工作
确保你已拥有一台运行CentOS的服务器(建议至少2GB内存),并具备root权限,通过SSH登录到服务器后,首先更新系统软件包:

sudo yum update -y

第二步:安装OpenVPN及相关工具
CentOS默认仓库中包含OpenVPN,可通过yum直接安装:

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

easy-rsa是用于生成SSL/TLS证书和密钥的工具集,对OpenVPN的身份认证至关重要。

第三步:配置证书颁发机构(CA)
进入EasyRSA目录并初始化PKI环境:

cd /usr/share/easy-rsa/
cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/
cd /etc/openvpn/easy-rsa/

编辑配置文件 vars,修改以下参数以匹配你的组织信息:

export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@mycompany.com"
export KEY_OU="IT Department"

执行以下命令生成CA证书和私钥:

./clean-all
./build-ca

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

./build-key-server server

然后为客户端生成证书(可批量生成多个):

./build-key client1

第四步:生成Diffie-Hellman密钥交换参数
这一步用于增强加密强度:

./build-dh

第五步:配置OpenVPN服务器
复制示例配置文件并编辑:

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

关键配置项包括:

  • port 1194:指定监听端口(可改为其他端口)
  • proto udp:使用UDP协议更高效
  • dev tun:创建点对点隧道设备
  • ca ca.crt, cert server.crt, key server.key:指定证书路径
  • dh 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服务器

第六步:启用IP转发与防火墙规则
开启内核IP转发:

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
sysctl -p

配置iptables允许相关流量:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -p udp --dport 1194 -j ACCEPT

若使用firewalld,则执行:

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

第七步:启动服务并测试
启动OpenVPN服务并设置开机自启:

systemctl start openvpn@server
systemctl enable openvpn@server

将生成的证书文件(ca.crt、client1.crt、client1.key)打包发送给客户端,并使用OpenVPN客户端软件进行连接测试。

至此,你已在CentOS上成功搭建了一个安全、稳定的OpenVPN服务,该方案不仅适用于企业远程办公场景,还可用于跨数据中心的安全通信,是网络工程师值得掌握的基础技能。

CentOS系统搭建OpenVPN服务详解,从零开始实现安全远程访问  第1张

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