在现代企业网络环境中,远程访问内网资源已成为日常运维和开发工作的基本需求,CentOS 7作为一款稳定、广泛使用的Linux发行版,常被用于服务器部署,若需在CentOS 7上搭建一个安全、可靠的虚拟私人网络(VPN),OpenVPN是一个理想选择——它开源、功能强大、支持多种认证方式,并且可灵活定制以满足不同场景需求。
本文将详细介绍如何在CentOS 7系统中部署并配置OpenVPN服务,使远程用户能够通过加密隧道安全访问局域网内的服务(如数据库、文件共享或内部Web应用)。
第一步:准备工作
确保你已获得一台运行CentOS 7的服务器,并具备root权限,需要一个公网IP地址(或域名绑定)用于外部访问,建议提前关闭防火墙或配置相应的端口规则(OpenVPN默认使用UDP 1194端口),执行以下命令更新系统并安装必要工具:
sudo yum update -y sudo yum install -y epel-release sudo yum install -y openvpn easy-rsa
第二步:生成证书与密钥(PKI环境)
OpenVPN依赖SSL/TLS协议进行身份验证,因此需先构建证书颁发机构(CA)和服务器/客户端证书,进入Easy-RSA目录并初始化:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa cp vars.example vars
编辑vars文件,设置国家、组织名称等信息(如KEY_COUNTRY=CN),然后执行以下命令生成CA证书及服务器证书:
source ./vars ./clean-all ./build-ca # 构建CA证书 ./build-key-server server # 构建服务器证书 ./build-key client1 # 构建客户端证书(可为多个) ./build-dh # 生成Diffie-Hellman参数
第三步:配置OpenVPN服务
复制示例配置文件并修改核心参数:
cp /usr/share/doc/openvpn-*/sample-config-files/server.conf /etc/openvpn/ vi /etc/openvpn/server.conf
关键配置项包括:
port 1194:指定监听端口;proto udp:使用UDP协议提升性能;dev tun:创建TUN设备;ca,cert,key,dh:指向生成的证书路径;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服务器。
第四步:启动服务与防火墙配置
启用OpenVPN服务并设置开机自启:
systemctl enable openvpn@server systemctl start openvpn@server
开放防火墙端口(若使用firewalld):
firewall-cmd --add-port=1194/udp --permanent firewall-cmd --reload
第五步:客户端配置与连接测试
将生成的client1.crt、client1.key和ca.crt文件合并为一个.ovpn配置文件,内容如下:
client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
cipher AES-256-CBC
verb 3
客户端(如Windows或Linux)导入该文件后即可连接,建议在生产环境中结合用户名密码认证(如使用tls-auth增强安全性)或集成LDAP/Radius进行集中管理。
通过上述步骤,你可以在CentOS 7上成功部署OpenVPN服务,为远程团队提供安全、稳定的网络接入能力,此方案不仅适用于办公场景,还可扩展至IoT设备管理、云主机跳板机等复杂场景,是值得掌握的基础网络技能。

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






