在当前远程办公和安全通信需求日益增长的背景下,通过虚拟专用网络(VPN)连接访问私有网络资源已成为许多企业和个人用户的刚需,对于拥有 Ubuntu VPS(虚拟专用服务器)的用户而言,搭建一个稳定、安全且易于管理的 OpenVPN 服务是一个高效解决方案,本文将详细介绍如何在 Ubuntu 系统上部署 OpenVPN 服务,并提供完整的配置步骤与常见问题排查建议。
确保你的 VPS 已安装并运行 Ubuntu 20.04 或更高版本,登录服务器后,执行以下命令更新系统包列表并安装必要软件:
sudo apt update && sudo apt upgrade -y sudo apt install openvpn easy-rsa -y
OpenVPN 是开源的 SSL/TLS 协议实现,而 Easy-RSA 是用于生成证书和密钥的工具包,两者缺一不可。
我们配置证书颁发机构(CA)和服务器证书,进入 Easy-RSA 的默认目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑 vars 文件,根据需要修改默认参数,例如国家代码、组织名称等,然后初始化 PKI(公钥基础设施):
./easyrsa init-pki ./easyrsa build-ca nopass
这里会生成 CA 根证书,无需设置密码以便自动化部署,接着生成服务器证书:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
最后生成 Diffie-Hellman 密钥交换参数(此过程耗时较长,请耐心等待):
./easyrsa gen-dh
完成证书生成后,复制相关文件到 OpenVPN 配置目录:
cp pki/ca.crt pki/private/server.key pki/issued/server.crt pki/dh.pem /etc/openvpn/
现在创建主配置文件 /etc/openvpn/server.conf,一个基础但功能完备的配置如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.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 nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
关键参数说明:
port 1194:OpenVPN 默认端口,可改为其他端口以规避干扰。push "redirect-gateway":强制客户端流量经由 VPN 路由,实现全局代理。comp-lzo:启用压缩提升传输效率。
保存配置后,启用 IP 转发功能,让 VPS 成为网关:
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf sysctl -p
随后配置防火墙规则(若使用 UFW):
ufw allow 1194/udp ufw allow OpenSSH ufw enable
启动 OpenVPN 服务:
systemctl start openvpn@server systemctl enable openvpn@server
至此,服务已成功运行,客户端可通过 .ovpn 文件连接,该文件需包含 CA、证书、密钥及上述配置信息,推荐使用官方 OpenVPN GUI 客户端或手机端应用(如 OpenVPN Connect)进行连接测试。
注意事项:
- 若遇到连接失败,检查日志:
journalctl -u openvpn@server。 - 若无法访问互联网,请确认 iptables 规则正确转发流量(如
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE)。 - 定期轮换证书可增强安全性。
通过以上步骤,你即可在 Ubuntu VPS 上构建一个功能完善的 OpenVPN 服务,满足远程办公、跨地域访问或隐私保护等多场景需求。

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






