🌐 在 VPS 上安装 WireGuard VPN

使用简化脚本在 VPS 服务器上安装和配置 WireGuard VPN 的完整指南。创建您自己的专用 VPN 网络。

🌐 在 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

交互式配置

脚本会问您几个问题。以下是推荐的答案:

  1. 接口:按 Enter 使用 eth0(默认)
  2. IPv4 地址:按 Enter 使用自动私有地址(例如:10.7.0.1/24
  3. WireGuard 端口:按 Enter 使用端口 51820(默认)
  4. 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)
  5. 客户端:为您的第一个客户端输入一个名称(例如: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 上

  1. wireguard.com 下载 WireGuard
  2. 安装应用程序
  3. 打开 WireGuard 并点击 "Add Tunnel" > "Add empty tunnel"
  4. 复制粘贴 .conf 文件的内容
  5. 保存并激活连接

在 macOS 上

  1. 从 App Store 或 wireguard.com 下载 WireGuard
  2. 安装应用程序
  3. 打开 WireGuard 并点击 "Add Tunnel" > "Create from file" 或 "Create from clipboard"
  4. 导入您的配置文件
  5. 激活连接

在 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 上

  1. 从 Google Play Store 或 App Store 安装 WireGuard 应用
  2. 打开应用并点击 "+" 按钮
  3. 选择 "Create from file" 或 "Create from QR code"
  4. 导入您的配置文件
  5. 激活连接

🔐 添加新客户端

稍后添加新客户端(例如,为另一台设备):

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

从客户端测试

从客户端连接后:

  1. 检查您的公网 IP:curl ifconfig.me(应显示您的 VPS IP)
  2. 测试连通性:ping 8.8.8.8
  3. 验证您是否通过网络接口连接到 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

无法从客户端连接

  1. 检查端口是否在 UFW 中打开

    sudo ufw status | grep 51820
  2. 检查服务器是否在端口上监听

    sudo netstat -ulnp | grep 51820
  3. 检查客户端配置:确保 Endpoint 中的服务器 IP 正确

  4. 检查服务器端日志

    sudo journalctl -u wg-quick@wg0 -f

安装脚本失败

如果安装脚本遇到错误:

  1. 验证您是否有 root 或 sudo 权限
  2. 检查您的互联网连接
  3. 确保您的系统是最新的:sudo apt update && sudo apt upgrade -y
  4. 尝试重新下载脚本:
    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 端口吗?
答:可以,但您需要手动修改配置。如有必要,使用脚本重新安装会更简单。


配置顺利!🚀