🌐 在 VPS 上安装 WireGuard VPN
本指南将教您如何使用简化的安装脚本在 VPS 服务器上安装 WireGuard VPN。WireGuard 是一个现代、快速且安全的 VPN,可以让您创建自己的专用虚拟网络。
📋 先决条件
- 具有 root 或 sudo 访问权限的 VPS 服务器
- 活动的 SSH 连接
- Ubuntu/Debian(脚本适用于这些发行版)
- 已安装并配置 UFW(请参阅教程 安装 UFW)
📥 安装 WireGuard
下载安装脚本
我们将使用自动安装脚本,它大大简化了配置:
# 下载安装脚本 curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh # 使脚本可执行 chmod +x wireguard-install.sh
运行安装脚本
sudo ./wireguard-install.sh
交互式配置
脚本会问您几个问题。以下是推荐的答案:
- 接口:按
Enter使用eth0(默认) - IPv4 地址:按
Enter使用自动私有地址(例如:10.7.0.1/24) - WireGuard 端口:按
Enter使用端口51820(默认) - DNS:选择一个 DNS:
1用于 Cloudflare (1.1.1.1) - 推荐2用于 Google (8.8.8.8)3用于 OpenDNS (208.67.222.222)4用于 Quad9 (9.9.9.9)
- 客户端:为您的第一个客户端输入一个名称(例如:
my-pc,laptop,smartphone)
脚本将:
- 自动安装 WireGuard
- 生成私钥和公钥
- 配置服务器
- 创建您的第一个客户端
📱 客户端配置
检索配置文件
安装后,脚本会生成一个客户端配置文件。要检索它:
# 显示配置文件内容 cat /root/[客户端名称].conf # 示例:如果您将客户端命名为 "my-pc" cat /root/my-pc.conf
配置文件示例
文件将如下所示:
[Interface]
PrivateKey = [您的私钥]
Address = 10.7.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = [服务器公钥]
Endpoint = [您的VPS IP]:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
在设备上安装客户端
在 Windows 上
- 从 wireguard.com 下载 WireGuard
- 安装应用程序
- 打开 WireGuard 并点击 "Add Tunnel" > "Add empty tunnel"
- 复制粘贴
.conf文件的内容 - 保存并激活连接
在 macOS 上
- 从 App Store 或 wireguard.com 下载 WireGuard
- 安装应用程序
- 打开 WireGuard 并点击 "Add Tunnel" > "Create from file" 或 "Create from clipboard"
- 导入您的配置文件
- 激活连接
在 Linux (Ubuntu/Debian) 上
# 安装 WireGuard sudo apt update sudo apt install wireguard -y # 复制配置文件 sudo cp /root/my-pc.conf /etc/wireguard/wg0.conf # 启用 WireGuard sudo wg-quick up wg0 # 开机自启 sudo systemctl enable wg-quick@wg0
在 Android/iOS 上
- 从 Google Play Store 或 App Store 安装 WireGuard 应用
- 打开应用并点击 "+" 按钮
- 选择 "Create from file" 或 "Create from QR code"
- 导入您的配置文件
- 激活连接
🔐 添加新客户端
稍后添加新客户端(例如,为另一台设备):
sudo ./wireguard-install.sh
当脚本询问您要做什么时,选择 添加新客户端 的选项。
为新客户端输入一个名称,脚本将自动在 /root/[客户端名称].conf 中生成一个新的配置文件
🚀 有用的 WireGuard 命令
服务管理
# 启动 WireGuard sudo systemctl start wg-quick@wg0 # 停止 WireGuard sudo systemctl stop wg-quick@wg0 # 重启 WireGuard sudo systemctl restart wg-quick@wg0 # 服务状态 sudo systemctl status wg-quick@wg0 # 开机自启 sudo systemctl enable wg-quick@wg0 # 禁用开机自启 sudo systemctl disable wg-quick@wg0
连接信息
# 查看 WireGuard 信息 sudo wg show # 查看传输统计 sudo wg show wg0 transfer # 查看当前配置 sudo wg show wg0 dump
日志
# 实时查看日志 sudo journalctl -u wg-quick@wg0 -f # 查看最后条目 sudo journalctl -u wg-quick@wg0 -n 50
🔐 在 UFW 中允许 WireGuard
安装 WireGuard 后,在 UFW 中允许端口:
# 允许 WireGuard 端口(默认 51820) sudo ufw allow 51820/udp # 重新加载 UFW sudo ufw reload # 验证规则是否激活 sudo ufw status | grep 51820
✅ 验证
验证 WireGuard 是否工作
# 检查服务状态 sudo systemctl status wg-quick@wg0 # 检查活动连接 sudo wg show # 验证端口是否打开 sudo netstat -ulnp | grep 51820
从客户端测试
从客户端连接后:
- 检查您的公网 IP:
curl ifconfig.me(应显示您的 VPS IP) - 测试连通性:
ping 8.8.8.8 - 验证您是否通过网络接口连接到 VPN
🆘 故障排除
WireGuard 无法启动
# 检查日志 sudo journalctl -u wg-quick@wg0 -n 50 # 检查配置 sudo wg-quick down wg0 sudo wg-quick up wg0 # 验证端口是否可用 sudo netstat -ulnp | grep 51820
无法从客户端连接
-
检查端口是否在 UFW 中打开:
sudo ufw status | grep 51820 -
检查服务器是否在端口上监听:
sudo netstat -ulnp | grep 51820 -
检查客户端配置:确保
Endpoint中的服务器 IP 正确 -
检查服务器端日志:
sudo journalctl -u wg-quick@wg0 -f
安装脚本失败
如果安装脚本遇到错误:
- 验证您是否有 root 或 sudo 权限
- 检查您的互联网连接
- 确保您的系统是最新的:
sudo apt update && sudo apt upgrade -y - 尝试重新下载脚本:
rm wireguard-install.sh curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh chmod +x wireguard-install.sh
📚 其他资源
❓ 常见问题
问:我可以同时使用多个客户端吗?
答:可以,WireGuard 支持多个同时连接的客户端。只需使用脚本添加新客户端即可。
问:WireGuard 的速度如何?
答:WireGuard 是最快的 VPN 之一,性能接近本机速度。
问:WireGuard 安全吗?
答:是的,WireGuard 使用现代加密技术,并已通过安全审计。
问:安装后可以更改 WireGuard 端口吗?
答:可以,但您需要手动修改配置。如有必要,使用脚本重新安装会更简单。
配置顺利!🚀