在企业网络部署和远程办公日益普及的今天,虚拟专用网络(VPN)已成为保障数据安全传输的重要工具,对于使用CentOS操作系统的管理员而言,搭建一个稳定、安全且易于管理的OpenVPN服务,是实现远程访问内网资源的关键一步,本文将详细介绍如何在CentOS 7或8系统中安装、配置并测试OpenVPN服务,帮助你快速构建私有网络通道。
确保你的CentOS系统已更新至最新版本,打开终端并执行以下命令:
sudo yum update -y
安装EPEL仓库(Extra Packages for Enterprise Linux),这是获取OpenVPN及相关依赖包的前提:
sudo yum install epel-release -y
安装OpenVPN软件包及其所需的依赖项:
sudo yum install openvpn easy-rsa -y
安装完成后,需要生成证书和密钥,OpenVPN使用PKI(公钥基础设施)进行身份认证,因此必须先设置CA(证书颁发机构),进入Easy-RSA目录并初始化:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件以设置国家、省份、组织等信息(如需自定义,请修改对应字段):
nano vars
然后执行脚本生成CA证书:
source ./vars ./clean-all ./build-ca
生成服务器证书和密钥:
./build-key-server server
为每个客户端生成单独的证书和密钥(为用户“client1”生成):
./build-key client1
同时生成Diffie-Hellman参数(用于加密协商):
./build-dh
这些步骤完成后,你需要配置OpenVPN服务器主文件,复制示例配置文件到/etc/openvpn目录,并重命名为server.conf:
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/
编辑该文件,关键配置如下:
port 1194:指定端口(可选UDP或TCP)proto udp:推荐使用UDP协议提高性能dev tun:创建点对点隧道接口ca /etc/openvpn/easy-rsa/keys/ca.crtcert /etc/openvpn/easy-rsa/keys/server.crtkey /etc/openvpn/easy-rsa/keys/server.keydh /etc/openvpn/easy-rsa/keys/dh2048.pem
启用IP转发并配置iptables规则,使流量可以穿越服务器:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
添加NAT规则:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -s 10.8.0.0/24 -d 10.8.0.0/24 -j ACCEPT
启动OpenVPN服务并设置开机自启:
systemctl start openvpn@server systemctl enable openvpn@server
至此,服务器端配置完成,客户端方面,需将生成的ca.crt、client1.crt、client1.key三个文件打包发送给用户,并配置OpenVPN客户端连接参数,常见客户端配置包括:
- 指定服务器地址(公网IP)
- 使用UDP协议
- 加载上述三个证书文件
建议在生产环境中进一步强化安全性,如启用TLS验证、限制用户权限、定期轮换证书等,通过以上步骤,你可以在CentOS上成功部署一套功能完整的OpenVPN服务,满足远程办公、站点间互联等多种场景需求。

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






