在当前企业网络架构和远程办公日益普及的背景下,虚拟私人网络(VPN)已成为保障数据传输安全的重要工具,对于使用 CentOS 操作系统的网络管理员或 IT 运维人员而言,掌握在该系统上搭建稳定、安全的 VPN 服务不仅是一项实用技能,更是提升网络安全防护能力的关键步骤,本文将详细介绍如何在 CentOS 7/8 或 CentOS Stream 系统中部署 OpenVPN 服务,涵盖安装、配置、防火墙设置以及性能优化等核心环节。
确保你的 CentOS 主机已更新至最新版本,并具备公网 IP 地址(或内网可路由地址),推荐使用 OpenVPN,因其开源、成熟且支持多种加密协议(如 TLS、AES-256),是业界广泛采用的解决方案,第一步是在终端执行以下命令安装 OpenVPN 和 Easy-RSA 工具包:
sudo yum install epel-release -y sudo yum install openvpn easy-rsa -y
安装完成后,初始化证书颁发机构(CA)环境,进入 /usr/share/easy-rsa 目录并执行:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
接着编辑 vars 文件,设置国家、组织、密钥长度等参数,然后运行:
./clean-all ./build-ca ./build-key-server server ./build-key client1 ./build-dh
这些操作会生成服务器端和客户端所需的私钥、证书及 Diffie-Hellman 参数,随后,复制证书文件到 OpenVPN 配置目录:
cp ca.crt server.crt server.key dh2048.pem /etc/openvpn/
接下来编写服务器配置文件 /etc/openvpn/server.conf,关键参数包括监听端口(默认 1194)、协议(UDP 更快)、TLS 设置、用户认证方式(建议使用用户名密码 + 证书双重验证),以及启用 NAT 转发以便客户端访问互联网,示例配置片段如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
配置完成后,启动 OpenVPN 服务并设置开机自启:
sudo systemctl start openvpn@server sudo systemctl enable openvpn@server
必须开放防火墙端口(1194/udp)并启用 IP 转发:
sudo firewall-cmd --add-port=1194/udp --permanent sudo firewall-cmd --reload echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
为客户端生成配置文件(.ovpn),包含 CA 证书、客户端证书、私钥和服务器地址,即可在 Windows、macOS 或 Linux 客户端上连接。
通过以上步骤,你就能在 CentOS 上构建一个功能完整、安全可靠的 OpenVPN 服务,后续还可结合 Fail2Ban 防止暴力破解、定期轮换证书增强安全性,甚至部署负载均衡实现高可用,对于企业级应用,建议进一步集成 LDAP 认证或双因素验证,全面提升整体安全水平。

半仙加速器-海外加速器 | VPN加速器 | VPN翻墙加速器 | VPN梯子 | VPN外网加速






