在当今远程办公和分布式团队日益普及的时代,安全、稳定的虚拟私人网络(VPN)已成为企业和个人用户不可或缺的基础设施,Ubuntu作为开源操作系统中的佼佼者,凭借其稳定性、灵活性与庞大的社区支持,成为搭建VPN服务器的理想平台,本文将手把手教你如何在Ubuntu系统上部署一个高效且安全的OpenVPN服务,实现跨地域的安全通信。
确保你拥有一台运行Ubuntu 20.04或更高版本的服务器(推荐使用云服务商如阿里云、腾讯云或AWS),并具备公网IP地址,登录服务器后,建议先更新系统软件包:
sudo apt update && sudo apt upgrade -y
接着安装OpenVPN及相关工具:
sudo apt install openvpn easy-rsa -y
Easy-RSA用于生成SSL/TLS证书和密钥,是OpenVPN认证体系的核心组件,复制Easy-RSA模板到配置目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件,设置国家、组织等基本信息(如CN=China, O=MyCompany),保存后执行初始化脚本:
./clean-all ./build-ca
这会生成CA证书(root certificate),是后续所有客户端和服务器证书的信任基础,然后生成服务器证书和密钥:
./build-key-server server
注意:在提示输入Common Name时,务必填写“server”以确保正确识别,接着生成Diffie-Hellman参数(提升加密强度):
./build-dh
服务器端的证书已准备就绪,下一步是创建OpenVPN配置文件,在/etc/openvpn目录下新建server.conf如下:
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/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 /var/log/openvpn-status.log
verb 3
关键配置说明:
port 1194:标准OpenVPN端口,可改为其他避免冲突;push "redirect-gateway":强制客户端流量走VPN隧道;comp-lzo:启用压缩提升传输效率;verb 3:日志级别适中,便于调试。
保存后,启用IP转发功能(使服务器能路由流量):
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置iptables规则(若使用UFW,也可用ufw命令):
sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT sudo iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
最后启动服务:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
至此,服务器端完成,客户端只需获取CA证书、客户端证书和密钥(通过./build-key client1生成),并配置.ovpn文件即可连接,建议为每个用户单独生成证书,增强安全性。
此方案不仅满足基本需求,还可扩展为多用户管理、Web界面(如OpenVPN Access Server)或集成双因素认证(如Google Authenticator),记住定期备份证书、更新系统补丁,并监控日志防止滥用,Ubuntu + OpenVPN组合,是构建企业级私有网络的坚实起点。

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






