在当今远程办公和跨地域协作日益普遍的背景下,虚拟私人网络(VPN)已成为保障网络安全、实现资源访问控制的重要工具,对于使用Ubuntu操作系统的用户而言,无论是个人隐私保护还是企业级内网接入,掌握在Ubuntu上部署和管理VPN服务都是一项极具实用价值的技能,本文将详细介绍如何在Ubuntu系统中搭建和配置OpenVPN服务,涵盖环境准备、安装步骤、证书生成、配置文件编写、防火墙设置以及客户端连接等关键环节。
确保你的Ubuntu服务器具备公网IP地址,并已安装最新版本的Ubuntu Server或Desktop发行版(推荐20.04 LTS或22.04 LTS),更新系统包列表是第一步:
sudo apt update && sudo apt upgrade -y
安装OpenVPN及其依赖组件,OpenVPN是一个开源、跨平台的VPN解决方案,支持多种加密协议,适合大多数场景:
sudo apt install openvpn easy-rsa -y
easy-rsa 是用于生成SSL/TLS证书和密钥的工具包,对建立安全通信至关重要。
下一步是初始化PKI(公钥基础设施)目录,通常路径为 /etc/openvpn/easy-rsa/,执行以下命令完成初始化:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
然后编辑 vars 文件,根据实际需求修改国家、组织、单位等信息,
export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@example.com"
运行脚本生成CA证书和密钥:
./clean-all ./build-ca
接下来生成服务器证书和密钥:
./build-key-server server
并生成客户端证书(每个用户一个):
./build-key client1
最后生成Diffie-Hellman参数和TLS密钥:
./build-dh openvpn --genkey --secret ta.key
配置服务器端主文件 /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
tls-auth /etc/openvpn/ta.key 0
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
启用IP转发并配置iptables规则以允许流量通过:
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf sudo sysctl -p 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
重启OpenVPN服务后,即可分发客户端配置文件(包含客户端证书、密钥和服务器地址),供用户连接使用。
Ubuntu下搭建OpenVPN不仅灵活可控,还能满足不同规模的网络需求,通过以上步骤,你可以在本地或云服务器上快速部署一套稳定可靠的VPN服务,为远程访问和数据加密提供坚实保障。

半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速









