在现代网络环境中,尤其是在远程办公、多设备接入或需要访问特定区域资源时,通过Linux系统搭建一个支持VPN共享上网的服务,变得越来越重要,相比传统的路由器方案,基于Linux的VPN共享不仅成本低、灵活性高,还能结合防火墙规则、路由策略等实现精细化控制,本文将详细介绍如何在Linux(以Ubuntu Server为例)上部署OpenVPN服务,并实现多设备共享上网。

第一步:环境准备
确保你有一台运行Linux系统的服务器(如Ubuntu 22.04 LTS),具备公网IP地址(或通过NAT映射暴露端口),并已安装基础工具包,如openvpniptablesdnsmasqnetfilter-persistent,可以通过以下命令安装:

sudo apt update && sudo apt install openvpn dnsmasq iptables-persistent -y

第二步:生成证书与密钥(使用Easy-RSA)
为了安全通信,需使用Easy-RSA工具生成CA证书和客户端/服务器证书,安装后执行:

sudo make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass
sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server
sudo ./easyrsa gen-req client1 nopass
sudo ./easyrsa sign-req client client1

第三步:配置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

注意:push "redirect-gateway def1 bypass-dhcp" 是实现共享上网的关键,它会强制所有流量经由VPN出口,实现“翻墙”效果。

第四步:启用IP转发与NAT规则
修改/etc/sysctl.conf,启用IP转发:

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 tun0 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT

保存规则以持久化:

sudo netfilter-persistent save

第五步:启动服务与客户端连接
启动OpenVPN服务:

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

客户端(如Windows、Android)可使用.ovpn配置文件连接,其中包含CA证书、客户端证书和密钥。

第六步:验证与优化
通过客户端访问ipinfo.io检查IP是否为服务器公网IP,确认共享上网成功,若需提升性能,可考虑启用TCP协议或调整MTU值。


Linux下的OpenVPN共享上网方案,既满足了安全性需求,又实现了灵活的网络控制,特别适合中小企业、家庭网络或临时远程办公场景,只要合理配置路由、防火墙与DNS策略,即可构建一个稳定、高效的私有网络出口,掌握此技术,意味着你拥有了自主可控的网络基础设施能力。

Linux下实现VPN共享上网的完整指南,从配置到实战部署  第1张

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