dfbn6 2026-05-15 VPN翻墙 1 0

Linux系统部署OpenVPN服务完整指南:从安装到安全配置

在当今远程办公和分布式团队日益普及的背景下,建立一个稳定、安全的虚拟私人网络(VPN)是企业与个人用户的刚需,OpenVPN是一款开源、跨平台且高度可定制的VPN解决方案,特别适合在Linux服务器上部署,本文将详细讲解如何在主流Linux发行版(如Ubuntu或CentOS)中安装、配置并优化OpenVPN服务,确保数据传输的安全性与稳定性。

准备阶段需要一台运行Linux的服务器(推荐使用Ubuntu 20.04 LTS或CentOS 7/8),确保系统已更新至最新版本,并具备root权限或sudo权限,执行以下命令更新系统包:

sudo apt update && sudo apt upgrade -y   # Ubuntu/Debiansudo yum update -y                       # CentOS/RHEL

接着安装OpenVPN及相关依赖,在Ubuntu上,使用apt包管理器即可完成:

sudo apt install openvpn easy-rsa -y

对于CentOS,则使用yum或dnf:

sudo yum install epel-release -y
sudo yum install openvpn easy-rsa -y

安装完成后,需生成SSL/TLS密钥对,Easy-RSA工具集提供了便捷的密钥管理流程,进入其目录并初始化PKI环境:

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

编辑vars文件,设置国家、省份、组织等信息,这将用于证书签名,随后执行:

./clean-all
./build-ca    # 创建根证书颁发机构(CA)
./build-key-server server     # 生成服务器证书
./build-key client1           # 为客户端生成证书(可多用户)
./build-dh                    # 生成Diffie-Hellman参数

接下来配置OpenVPN服务器,复制示例配置文件到/etc/openvpn目录,并重命名为server.conf

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

编辑该文件,关键修改包括:

  • port 1194(默认端口,可自定义)
  • proto udp(UDP协议更高效)
  • dev tun(隧道模式)
  • 指定之前生成的证书路径(ca.crt, server.crt, server.key, dh.pem)
  • 启用TLS认证(tls-auth ta.key 0,需生成)

生成TLS密钥:

openvpn --genkey --secret /etc/openvpn/ta.key

配置防火墙允许UDP流量(如UFW或firewalld),并启用IP转发:

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl -p

最后启动OpenVPN服务并设置开机自启:

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

客户端方面,需将生成的客户端证书(client1.crt)、私钥(client1.key)、CA证书(ca.crt)和TLS密钥(ta.key)打包成.ovpn配置文件,通过FTP或邮件分发给用户。

至此,一个功能完整的OpenVPN服务器已在Linux上成功部署,它支持多用户接入、加密通信和灵活的路由策略,是构建安全远程访问网络的理想选择,后续可根据需求扩展至双因素认证(如Google Authenticator)或集成LDAP身份验证,进一步提升安全性。

或

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