随着远程办公和跨地域协作需求的日益增长,虚拟私人网络(VPN)已成为企业与个人用户保障数据传输安全的重要工具,作为一位网络工程师,我经常被要求在Linux服务器上部署稳定、可扩展且符合安全规范的VPN服务,CentOS 7因其长期支持(EOL为2024年)和企业级稳定性,成为许多运维团队的首选平台,本文将详细介绍如何在CentOS 7上安装、配置并优化OpenVPN服务,确保远程用户能安全接入内网资源。
准备工作必不可少,你需要一台运行CentOS 7的服务器(推荐使用最小化安装版本),具备公网IP地址,并确保防火墙(firewalld)已启用,登录服务器后,执行以下命令更新系统包:
sudo yum update -y
添加EPEL源以获取更多软件包(如easy-rsa):
sudo yum install epel-release -y
然后安装OpenVPN及相关依赖:
sudo yum install openvpn easy-rsa -y
安装完成后,初始化PKI(公钥基础设施),复制默认配置文件到指定目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件,设置国家、组织等信息,这是生成证书的基础,之后执行以下命令生成CA证书、服务器证书和客户端证书:
source vars ./clean-all ./build-ca ./build-key-server server ./build-key client1 ./build-dh
这些步骤会生成用于身份认证的核心文件,包括ca.crt、server.crt、server.key和dh2048.pem。
接下来配置OpenVPN服务,创建主配置文件/etc/openvpn/server.conf,关键参数如下:
port 1194:指定监听端口(建议改为非标准端口以减少扫描攻击)proto udp:UDP协议性能更优dev tun:创建隧道设备ca ca.crt、cert server.crt、key server.key:引用之前生成的证书dh dh2048.pem:Diffie-Hellman密钥交换参数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服务并设为开机自启:
sudo systemctl start openvpn@server sudo systemctl enable openvpn@server
配置防火墙放行UDP 1194端口:
sudo firewall-cmd --add-port=1194/udp --permanent sudo firewall-cmd --reload
至此,OpenVPN服务已成功部署,客户端可通过.ovpn配置文件连接,该文件需包含CA证书、客户端证书、私钥及服务器地址,为增强安全性,建议启用TLS认证、定期轮换证书,并结合Fail2ban防止暴力破解。
此方案不仅满足基础远程访问需求,还为后续扩展(如多用户隔离、日志审计)提供了良好基础,作为网络工程师,我们不仅要实现功能,更要兼顾安全性与可维护性——这正是OpenVPN在CentOS 7上的价值所在。

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






