在当今远程办公和跨地域协作日益普遍的背景下,企业与个人用户对安全、稳定的网络连接需求不断增长,虚拟私人网络(VPN)作为实现加密通信、绕过地理限制和保护数据隐私的重要工具,成为网络基础设施中的关键一环,本文将详细介绍如何在CentOS操作系统(以CentOS 7或8为例)上搭建一个功能完备、安全性高的OpenVPN服务器,适用于小型团队或个人使用。
第一步:准备工作
确保你有一台运行CentOS的服务器(物理机或云主机均可),并拥有root权限,建议使用静态IP地址,避免因IP变动导致连接失败,登录服务器后,先执行以下命令更新系统软件包:
sudo yum update -y
第二步:安装OpenVPN及相关组件
OpenVPN是开源、跨平台且广泛支持的VPN解决方案,通过以下命令安装所需软件:
sudo yum install epel-release -y sudo yum install openvpn easy-rsa -y
easy-rsa用于生成证书和密钥,是OpenVPN认证机制的核心。
第三步:配置证书颁发机构(CA)
OpenVPN依赖PKI(公钥基础设施)进行身份验证,首先复制EasyRSA模板到指定目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑 vars 文件,设置国家、组织等基本信息(如CN=China, O=MyCompany),然后执行初始化脚本:
./clean-all ./build-ca
这会生成根证书(ca.crt)和私钥(ca.key),它们将用于签发客户端和服务器证书。
第四步:生成服务器证书与密钥
继续在当前目录下执行:
./build-key-server server
该命令会生成服务器证书(server.crt)、私钥(server.key)及Diffie-Hellman参数文件(dh.pem),后续步骤中,这些文件将被配置进OpenVPN服务端配置文件。
第五步:创建OpenVPN服务器配置文件
复制默认配置模板:
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/
编辑 /etc/openvpn/server.conf,修改关键参数如下:
port 1194:指定监听端口(可改为其他)proto udp:推荐UDP协议以提高性能dev tun:使用TUN模式建立点对点隧道ca ca.crt、cert server.crt、key server.key:引用之前生成的证书文件dh dh.pem:指定Diffie-Hellman参数文件
第六步:启用IP转发与防火墙规则
为了让客户端访问外部网络,需开启IP转发:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置iptables允许流量转发:
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 enable openvpn@server systemctl start openvpn@server
为每个客户端生成独立证书,并分发配置文件(包含ca.crt、client.crt、client.key等),客户端可通过OpenVPN GUI或命令行工具连接至服务器。
至此,一个基于CentOS的OpenVPN服务器已成功部署,它具备良好的扩展性、安全性与稳定性,能够满足多数场景下的远程接入需求,运维过程中建议定期更新证书、监控日志、强化防火墙策略,以保障网络安全。

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

