在当今远程办公和分布式团队日益普及的背景下,构建一个稳定、安全且易于管理的虚拟私人网络(VPN)服务已成为企业和个人用户的基本需求,Ubuntu作为最受欢迎的Linux发行版之一,凭借其稳定性、强大的社区支持以及丰富的软件包生态,成为搭建VPN服务器的理想平台,本文将详细介绍如何在Ubuntu系统上使用OpenVPN搭建一个功能完整的VPN服务器,涵盖环境准备、安装配置、客户端连接及安全优化等关键步骤。

确保你拥有一个运行Ubuntu 20.04或更高版本的服务器实例(物理机或云主机均可),并具备root权限或sudo访问权限,建议服务器操作系统为Ubuntu Server版,以减少不必要的图形界面资源占用。

第一步是更新系统并安装OpenVPN及相关依赖,执行以下命令:

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

easy-rsa 是用于生成SSL/TLS证书和密钥的工具,是OpenVPN认证机制的核心组件。

第二步是配置证书颁发机构(CA),进入EasyRSA目录并初始化PKI(公钥基础设施):

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
sudo cp vars.example vars

编辑 vars 文件,根据需要修改国家代码(C)、组织名(O)、省份(L)等信息,然后执行:

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

这一步会生成CA证书(ca.crt),用于后续所有证书的签名。

第三步是生成服务器证书和密钥:

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

接着生成Diffie-Hellman参数(用于密钥交换):

sudo ./easyrsa gen-dh

第四步是创建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:指定监听端口(可更改)
  • proto udp:推荐使用UDP协议以提升性能
  • dev tun:创建TUN设备,实现三层隧道
  • ca ca.crtcert server.crtkey server.key:指定证书路径
  • dh dh.pem:指定Diffie-Hellman参数文件
  • server 10.8.0.0 255.255.255.0:分配给客户端的IP段
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN隧道
  • push "dhcp-option DNS 8.8.8.8":推送DNS服务器

第五步启用IP转发和防火墙规则,编辑 /etc/sysctl.conf,取消注释 net.ipv4.ip_forward=1,然后执行:

sudo sysctl -p

使用iptables设置NAT转发规则:

sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -m state --state RELATED,ESTABLISHED -i eth0 -o tun0 -j ACCEPT
sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT

为了持久化规则,可以使用 iptables-save > /etc/iptables/rules.v4

第六步启动OpenVPN服务并设置开机自启:

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

为客户端生成证书和配置文件,使用 easyrsa 为每个客户端生成唯一证书,并打包成.ovpn配置文件供下载。

通过以上步骤,你便成功在Ubuntu上搭建了一个功能完备、基于TLS加密的OpenVPN服务器,该方案不仅适用于小型办公室网络扩展,也适合家庭用户实现远程访问内网资源,后续可根据需求添加双因素认证、日志审计、限速策略等高级功能,进一步提升安全性与可用性。

Ubuntu下搭建高效安全的VPN服务器,从零开始配置OpenVPN服务  第1张

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