在当今远程办公和分布式团队日益普及的背景下,建立一个稳定、安全的虚拟私人网络(VPN)服务已成为企业与个人用户的刚需,CentOS 7作为一款成熟且广泛使用的Linux发行版,因其稳定性、长期支持(EOL至2024年)以及强大的社区支持,成为部署OpenVPN服务器的理想平台,本文将详细介绍如何在CentOS 7系统上从零开始配置并运行一个功能完整的OpenVPN服务器,确保远程用户能够安全访问内网资源。
准备工作至关重要,你需要一台运行CentOS 7的物理机或虚拟机,并确保它具有公网IP地址(或通过NAT映射暴露端口),登录服务器后,更新系统软件包:
sudo yum update -y
接着安装EPEL仓库(用于获取额外软件包):
sudo yum install epel-release -y
安装OpenVPN及相关工具:
sudo yum install openvpn easy-rsa -y
easy-rsa是用于生成证书和密钥的工具集,对OpenVPN的安全性至关重要。
配置证书颁发机构(CA)和服务器证书,复制EasyRSA模板到标准路径:
cp -r /usr/share/easy-rsa/ /etc/openvpn/ cd /etc/openvpn/easy-rsa/
编辑vars文件,根据你的需求修改组织名称、国家代码等信息(设置KEY_COUNTRY="CN"、KEY_PROVINCE="Beijing"等),之后执行初始化和生成CA密钥:
./pkitool --initca
接着生成服务器证书:
./pkitool --server server
为客户端生成证书(每个客户端都需要单独证书,可批量生成):
./pkitool client1
生成完成后,将所有相关证书和密钥文件整理到/etc/openvpn/easy-rsa/keys/目录下。
下一步是配置OpenVPN服务器主文件,创建配置文件/etc/openvpn/server.conf如下:
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/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"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
此配置使用UDP协议(性能优于TCP),分配10.8.0.0/24子网给客户端,启用LZO压缩,推送DNS和路由规则,确保客户端流量经由VPN隧道转发。
配置完成后,启动OpenVPN服务并设为开机自启:
sudo systemctl start openvpn@server sudo systemctl enable openvpn@server
配置防火墙(firewalld)允许OpenVPN端口:
sudo firewall-cmd --permanent --add-port=1194/udp sudo firewall-cmd --reload
至此,OpenVPN服务器已成功部署,客户端只需下载证书文件(client1.crt、client1.key、ca.crt),配合OpenVPN客户端软件即可连接,该方案具备良好的安全性(基于TLS加密)、灵活性(支持多客户端)和易维护性,非常适合中小型企业和远程工作者使用。
通过上述步骤,你不仅获得了一个功能完备的OpenVPN服务,还掌握了Linux环境下网络安全配置的核心技能,为后续扩展如双因素认证、日志审计等功能打下坚实基础。

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






