在CentOS系统上搭建和配置OpenVPN服务,从零开始的网络隧道指南

在当今高度互联的数字世界中,虚拟专用网络(VPN)已成为企业和个人用户保障网络安全、访问远程资源的重要工具,尤其在Linux服务器环境中,CentOS作为企业级操作系统的代表,因其稳定性与开源生态广受青睐,本文将详细介绍如何在CentOS 7或CentOS 8/9系统上搭建并配置OpenVPN服务,实现安全、可靠的点对点加密通信。

准备工作必不可少,你需要一台运行CentOS的服务器(物理机或云主机均可),确保系统已更新至最新状态,登录服务器后,执行以下命令升级系统:

sudo yum update -y

安装EPEL仓库(Extra Packages for Enterprise Linux),因为OpenVPN及相关依赖包可能不在默认源中:

sudo yum install epel-release -y

安装OpenVPN核心组件和easy-rsa(用于证书管理):

sudo yum install openvpn easy-rsa -y

完成安装后,进入证书生成目录,OpenVPN使用PKI(公钥基础设施)进行身份认证,因此需要先初始化密钥库:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

编辑vars文件,设置你的组织信息(如国家、省份、公司名等),这将用于生成CA证书和客户端证书。

export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@mycompany.com"

执行以下命令生成CA根证书和服务器证书:

./clean-all
./build-ca
./build-key-server server
./build-key client1

注意:client1是客户端名称,可根据需求创建多个客户端证书。

证书生成完毕后,复制相关文件到OpenVPN配置目录:

cp ca.crt server.crt server.key /etc/openvpn/
cp dh2048.pem /etc/openvpn/

现在配置OpenVPN服务器主文件 /etc/openvpn/server.conf,这是一个关键步骤,需根据实际网络环境调整参数,以下是基础模板:

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh 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协议、分配10.8.0.0/24子网给客户端,并推送DNS和路由规则。redirect-gateway表示客户端流量将通过VPN转发,适用于远程访问内网资源的场景。

配置完成后,启动OpenVPN服务并设置开机自启:

sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

服务器端已准备好,要让客户端连接,需将ca.crtclient1.crtclient1.key下载到本地,并创建.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
comp-lzo
verb 3

将此文件保存为client1.ovpn,导入到OpenVPN客户端(如Windows的OpenVPN GUI或Android的OpenVPN Connect),即可建立安全连接。

别忘了防火墙设置,若启用firewalld,开放UDP端口1194并允许IP转发:

sudo firewall-cmd --add-port=1194/udp --permanent
sudo firewall-cmd --add-masquerade --permanent
sudo firewall-cmd --reload

至此,你已在CentOS上成功部署了功能完整的OpenVPN服务,既可满足远程办公需求,也能为多分支网络提供安全隧道,这一方案具备高扩展性,适合中小型企业或个人开发者使用,记住定期备份证书和日志,确保长期稳定运行。

在CentOS系统上搭建和配置OpenVPN服务,从零开始的网络隧道指南

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