CentOS系统下搭建OpenVPN服务完整指南,从零开始构建安全远程访问通道

hyde1011 4 2026-05-28 15:18:12

在当前企业数字化转型和远程办公普及的背景下,保障网络安全与稳定访问成为IT运维的核心任务之一,作为一款成熟、稳定且开源的虚拟私人网络(VPN)解决方案,OpenVPN凭借其强大的加密机制、跨平台兼容性以及灵活的配置能力,被广泛应用于各类Linux服务器环境,而CentOS,作为企业级Linux发行版的经典代表,因其高稳定性与长期支持特性,是部署OpenVPN的理想平台,本文将详细介绍如何在CentOS 7或8系统上从零开始搭建OpenVPN服务,包括环境准备、安装配置、证书生成、防火墙设置及客户端连接等关键步骤。

确保你已准备好一台运行CentOS系统的服务器,并具备root权限或sudo权限,建议使用最小化安装版本以减少潜在漏洞,通过SSH登录服务器后,执行以下命令更新系统软件包:

sudo yum update -y

接下来安装EPEL源并安装OpenVPN及相关依赖:

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

Easy-RSA是用于生成SSL/TLS证书的工具,对于OpenVPN的身份认证至关重要,安装完成后,复制默认的Easy-RSA配置文件到本地目录:

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

初始化PKI(公钥基础设施)并生成CA证书:

./easyrsa init-pki
./easyrsa build-ca nopass

注意:nopass表示不设置密码保护,适合自动化场景;如需更安全,可省略该参数并手动输入密码。

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

./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服务主配置文件 /etc/openvpn/server.conf示例如下:

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
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
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 /var/log/openvpn-status.log
verb 3

配置完成后,启用IP转发功能以支持客户端流量转发:

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

配置防火墙规则(若使用firewalld):

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

最后启动OpenVPN服务并设置开机自启:

systemctl enable openvpn@server
systemctl start openvpn@server

你可以将生成的客户端配置文件(包含client1.crt、client1.key、ca.crt)打包分发给用户,使用OpenVPN GUI客户端或Linux命令行连接即可建立安全隧道。

通过以上步骤,你在CentOS上成功搭建了一个基于TLS认证的OpenVPN服务,不仅满足了远程办公需求,也为企业数据传输提供了坚实的安全保障,后续还可结合动态DNS、日志审计、多用户权限控制等功能进行进一步优化。

CentOS系统下搭建OpenVPN服务完整指南,从零开始构建安全远程访问通道

上一篇:iPhone设置VPN,安全上网的必备技能与实用指南
下一篇:Astrill VPN使用深度解析,性能、安全与适用场景全攻略
相关文章
返回顶部小火箭