随着远程办公和跨地域访问需求的增长,构建一个稳定、安全的虚拟私人网络(VPN)已成为企业与个人用户的重要基础设施,CentOS作为一款成熟且广泛应用于企业环境的Linux发行版,非常适合用来部署VPN服务,本文将详细介绍如何在CentOS 7或8系统中搭建基于OpenVPN的VPN服务器,涵盖安装、配置、防火墙设置及客户端连接等关键步骤。

确保你的CentOS系统已更新至最新版本,并拥有root权限,通过以下命令升级系统:

sudo yum update -y

安装OpenVPN及相关依赖包,推荐使用EPEL源来获取更完整的软件包支持:

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

安装完成后,需要生成SSL/TLS密钥对和证书,这是保障通信加密的核心环节,复制Easy-RSA工具到默认路径并初始化PKI(公钥基础设施):

cp -r /usr/share/easy-rsa/ /etc/openvpn/
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-req client1 nopass
sudo ./easyrsa sign-req client client1

完成证书管理后,配置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转发功能以支持NAT路由,编辑 /etc/sysctl.conf,添加:

net.ipv4.ip_forward = 1

执行 sysctl -p 生效。

打开防火墙规则(若使用firewalld):

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

最后启动OpenVPN服务:

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

至此,你的CentOS VPN服务器已成功部署,客户端可通过OpenVPN GUI或命令行导入证书和配置文件连接,注意:建议定期轮换证书、监控日志、设置强密码策略,以确保长期安全运行。

通过以上步骤,你不仅掌握了一套完整的CentOS下OpenVPN部署流程,也为构建私有网络通信打下了坚实基础。

在CentOS系统上搭建安全可靠的VPN服务器,从零开始的完整配置指南  第1张

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