自建VPN完全指南:从VPS选购到WireGuard部署的实战教程
5/5/2026 · 3 min
一、VPS选购要点
自建VPN的第一步是选择合适的VPS。建议优先考虑以下因素:
- 地理位置:选择离你物理位置较近或目标网络环境友好的数据中心,以降低延迟。
- 带宽与流量:至少1Gbps端口,不限流量或大流量套餐更适合长期使用。
- 网络质量:避免高峰时段拥堵严重的线路,可参考第三方评测或试用。
- 性价比:入门配置(1核CPU、1GB内存、25GB SSD)即可满足WireGuard需求,月费约5-10美元。
推荐提供商:DigitalOcean、Vultr、Linode(国际线路);阿里云国际、腾讯云轻量(亚洲优化)。
二、操作系统与初始配置
推荐使用Ubuntu 22.04 LTS或Debian 11,稳定且社区支持完善。
- 通过SSH登录VPS:
ssh root@your_server_ip - 更新系统:
apt update && apt upgrade -y - 启用防火墙:
ufw allow 22/tcp && ufw enable - 创建普通用户并禁用root登录(安全加固)。
三、WireGuard部署步骤
WireGuard以其简洁、高效和现代加密算法著称。
3.1 安装WireGuard
apt install wireguard -y
3.2 生成密钥对
wg genkey | tee /etc/wireguard/server_private.key | wg pubkey > /etc/wireguard/server_public.key
chmod 600 /etc/wireguard/server_private.key
3.3 配置服务器端
创建/etc/wireguard/wg0.conf:
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <服务器私钥>
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = <客户端公钥>
AllowedIPs = 10.0.0.2/32
3.4 启动服务
systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
3.5 客户端配置
在本地设备安装WireGuard客户端,创建类似配置:
[Interface]
PrivateKey = <客户端私钥>
Address = 10.0.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = <服务器公钥>
Endpoint = your_server_ip:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
四、性能优化与安全加固
- 启用TCP BBR:
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf && echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf && sysctl -p - 调整MTU:根据网络环境设置MTU=1420可减少分片。
- 定期更新:保持系统与WireGuard版本最新。
- 监控流量:使用
iftop或vnstat观察带宽使用。
五、常见问题排查
- 连接超时:检查防火墙是否开放UDP 51820端口。
- DNS泄漏:确保客户端配置中指定了DNS服务器。
- 速度慢:尝试更换VPS节点或启用BBR。