在当今远程办公、跨地域协作日益普遍的背景下,虚拟私人网络(VPN)已成为企业和个人用户保障网络安全与隐私的重要工具,无论是需要访问公司内网资源的员工,还是希望绕过地理限制观看流媒体内容的用户,一个稳定、安全的自建VPN服务器都能提供强大支持,本文将带你从零开始,逐步完成一台Linux服务器上OpenVPN服务的架设,确保你掌握核心技术并具备实际部署能力。
准备工作必不可少,你需要一台运行Linux系统的服务器(推荐Ubuntu 20.04或CentOS 7以上版本),拥有公网IP地址,并配置好防火墙规则(如iptables或ufw),若使用云服务商(如阿里云、腾讯云、AWS等),记得开放UDP端口1194(OpenVPN默认端口)和SSH端口22,用于后续管理。
第一步是安装OpenVPN及相关组件,在Ubuntu系统中,可通过以下命令完成安装:
sudo apt update sudo apt install openvpn easy-rsa -y
Easy-RSA用于生成证书和密钥,这是实现加密通信的核心环节。
第二步是配置PKI(公钥基础设施),进入Easy-RSA目录并初始化证书颁发机构(CA):
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa ./easyrsa init-pki ./easyrsa build-ca nopass
接下来生成服务器证书和密钥:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
然后为客户端生成证书(每台设备一张):
./easyrsa gen-req client1 nopass ./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"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
第四步是启用IP转发和配置防火墙,编辑 /etc/sysctl.conf,取消注释 net.ipv4.ip_forward=1,然后执行:
sysctl -p
接着设置NAT规则(假设外网接口为eth0):
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -A INPUT -p udp --dport 1194 -j ACCEPT
最后启动服务并测试:
systemctl enable openvpn@server systemctl start openvpn@server
客户端可使用OpenVPN GUI(Windows)或Tunnelblick(macOS)导入证书和配置文件连接。
通过上述步骤,你不仅获得了一套可扩展、高可用的私有网络解决方案,还深入理解了SSL/TLS加密、隧道协议、路由控制等核心机制,这不仅是技术实践,更是通往网络自主权的关键一步。

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






