首页/免费加速器/Ubuntu系统下搭建与配置OpenVPN服务的完整指南

Ubuntu系统下搭建与配置OpenVPN服务的完整指南

作为一名网络工程师,在企业或家庭环境中部署安全可靠的虚拟私人网络(VPN)服务是日常工作中常见且重要的任务,Ubuntu作为一款广泛使用的Linux发行版,因其稳定性、安全性以及丰富的社区支持,成为搭建OpenVPN服务器的理想选择,本文将详细介绍如何在Ubuntu系统上从零开始搭建并配置OpenVPN服务,涵盖安装、证书生成、配置文件设置、防火墙规则调整及客户端连接测试等关键步骤。

确保你有一台运行Ubuntu 20.04或22.04 LTS的服务器(可以是物理机、虚拟机或云服务器),并拥有root权限或sudo权限,我们以Ubuntu 22.04为例进行操作。

第一步:更新系统并安装OpenVPN和Easy-RSA
打开终端,执行以下命令更新软件包列表并安装必要的工具:

sudo apt update
sudo apt install openvpn easy-rsa -y

Easy-RSA是一个用于管理SSL/TLS证书和密钥的工具,OpenVPN依赖它来建立安全的加密通信。

第二步:初始化PKI(公钥基础设施)
运行以下命令创建证书颁发机构(CA)和密钥对:

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

编辑 vars 文件(使用nano或vim)以设置你的国家、组织名称等信息,

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

然后执行以下命令生成CA证书和私钥:

./easyrsa init-pki
./easyrsa build-ca

接下来生成服务器证书和密钥:

./easyrsa gen-req server nopass
./easyrsa sign-req server server

再为客户端生成证书(可重复多次为不同用户生成):

./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1

第三步:配置OpenVPN服务器
复制示例配置文件到 /etc/openvpn/server/ 目录,并根据需要修改:

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

关键配置项包括:

  • port 1194:指定监听端口(默认UDP)
  • proto udp:使用UDP协议提高性能
  • dev tun:创建TUN设备(路由模式)
  • ca ca.crtcert server.crtkey server.key:指向刚生成的证书和私钥
  • dh dh.pem:生成Diffie-Hellman参数(需手动执行 ./easyrsa gen-dh

保存后,启用IP转发(让服务器能转发流量):

echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

第四步:配置防火墙(UFW)
如果使用UFW(Ubuntu防火墙),添加规则允许OpenVPN流量:

sudo ufw allow 1194/udp
sudo ufw enable

第五步:启动OpenVPN服务

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

第六步:客户端配置与连接
将服务器证书(ca.crt)、客户端证书(client1.crt)、私钥(client1.key)打包发送给客户端,在客户端(如Windows、macOS或Android)安装OpenVPN客户端软件,导入配置文件(.ovpn),即可连接。

至此,一个功能完整的OpenVPN服务器已在Ubuntu上成功部署,该方案具备高安全性(基于TLS加密)、灵活性强(支持多用户)、易于扩展(可配合Radius认证)等优点,适用于远程办公、跨地域访问内网资源等多种场景。

通过本文,你可以掌握在Ubuntu环境下构建OpenVPN服务的核心技能,为后续深入学习IPSec、WireGuard或企业级SD-WAN解决方案打下坚实基础,网络工程师不仅要会用工具,更要理解其原理——这才是真正的专业价值所在。

Ubuntu系统下搭建与配置OpenVPN服务的完整指南

本文转载自互联网,如有侵权,联系删除