省下90%VPN费用,腾讯云东京+WireGuard,打造你的专属高速VPN

Written by

in

省下90%VPN费用,腾讯云东京+WireGuard,打造你的专属高速VPN
n
n
n
nimg腾讯云东京2核4G服务器的完整WireGuard配置方案,从服务端到客户端一步到位。前提

    n

  • • 腾讯云东京2核4G服务器(不一定非要是东京)
    n
  • • 手机能下载WireGuard
    n

一、服务端配置1. 安装WireGuard
n
n
n# 更新系统
nsudo apt update && sudo apt upgrade -y
n
n# 安装WireGuard(Ubuntu 20.04+已内置,只需安装工具)
nsudo apt install wireguard wireguard-tools -y
n
n# 验证安装
nwg –version
n
nimg2. 生成密钥对
n
n
n# 进入配置目录
ncd /etc/wireguard
n
n# 生成服务器私钥和公钥
nwg genkey | tee server_privatekey | wg pubkey > server_publickey
n
n# 查看密钥(记下来,后面要用)
ncat server_privatekey # 服务器私钥,保密
ncat server_publickey # 服务器公钥,给客户端用
n
nimg3. 创建配置文件
n
n
nsudo nano /etc/wireguard/wg0.conf
n
n粘贴以下内容(替换为你的实际参数):
n
n
n
n# 服务器私钥
nPrivateKey =
n# VPN内网IP,服务器作为网关
nAddress = 10.200.200.1/24
n# 监听端口,建议用高位端口
nListenPort = 51820
n# 启用IP转发和NAT(eth0是你的网卡名,用ip addr确认)
nPostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
nPostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
n# DNS(可选,用腾讯云DNS或Google DNS)
nDNS = 119.29.29.29, 8.8.8.8
n# 保持连接(对移动端很重要)
nPersistentKeepalive = 25
n
n# 客户端1(手机)
n
nPublicKey =
nAllowedIPs = 10.200.200.2/32
n
n# 客户端2(电脑)
n
nPublicKey =
nAllowedIPs = 10.200.200.3/32
n
nimg4. 启用IP转发
n
n
n# 临时启用
nsudo sysctl -w net.ipv4.ip_forward=1
nsudo sysctl -w net.ipv6.conf.all.forwarding=1
n
n# 永久启用
necho “net.ipv4.ip_forward=1” | sudo tee -a /etc/sysctl.conf
necho “net.ipv6.conf.all.forwarding=1” | sudo tee -a /etc/sysctl.conf
nsudo sysctl -p
n
nimg5. 配置防火墙和腾讯云安全组服务器本地防火墙(UFW):
n
n
n# 安装UFW(如未安装)
nsudo apt install ufw -y
n
n# 放行SSH(别把自己锁外面!)
nsudo ufw allow 22/tcp
n
n# 放行WireGuard UDP端口
nsudo ufw allow 51820/udp
n
n# 启用防火墙
nsudo ufw enable
n
n# 检查状态
nsudo ufw status verbose
n
nimg腾讯云控制台安全组配置:
n

  • 1. 登录 腾讯云控制台 → 云服务器 → 安全组
    n
  • 2. 找到你的东京服务器绑定的安全组 → 修改规则
    n
  • 3. 入站规则 → 添加规则:
    n
    n
  • 1. 协议:UDP
    n
  • 2. 端口:51820
    n
  • 3. 源IP:0.0.0.0/0(或限制为你的常用IP)
    n
    n6. 启动WireGuard服务
    n
    n
    n# 启动wg0接口
    nsudo wg-quick up wg0
    n
    n# 验证运行状态
    nsudo wg show
    n
    n# 设置为开机自启
    nsudo systemctl enable wg-quick@wg0
    n
    n# 查看服务状态
    nsudo systemctl status wg-quick@wg0
    n
    nimgimg二、客户端配置客户端1:手机(iOS/Android)img生成客户端密钥对(在服务器上执行):
    n
    n
    n# 生成手机端密钥
    nwg genkey | tee client1_privatekey | wg pubkey > client1_publickey
    n
    n# 查看公钥,添加到服务端配置
    ncat client1_publickey
    n
    n添加到服务端配置:
    n
    n
    nsudo nano /etc/wireguard/wg0.conf
    n
    n在末尾添加:
    n
    n
    n
    nPublicKey =
    nAllowedIPs = 10.200.200.2/32
    n
    n重载服务端配置:
    n
    n
    nsudo wg-quick down wg0 && sudo wg-quick up wg0
    n
    n手机端配置文件(client1.conf):
    n
    n
    n
    nPrivateKey =
    nAddress = 10.200.200.2/24
    nDNS = 119.29.29.29, 8.8.8.8
    n
    n
    nPublicKey =
    nEndpoint = :51820
    nAllowedIPs = 0.0.0.0/0, ::/0 # 0.0.0.0/0表示全局代理
    nPersistentKeepalive = 25
    n
    n手机端操作:
    n
  • 1. 下载 WireGuard App(App Store / Google Play)
    n
  • 2. 创建隧道 → 扫描二维码或从文件导入
    n
  • 3. 生成二维码命令(服务器上):
    n
    n
  • 1.
    n
    n
    nqrencode -t ansiutf8 client2_publickey
    n
    n电脑端配置文件(client2.conf):
    n
    n
    n
    nPrivateKey =
    nAddress = 10.200.200.3/24
    nDNS = 119.29.29.29, 8.8.8.8
    n
    n
    nPublicKey =
    nEndpoint = :51820
    nAllowedIPs = 0.0.0.0/0
    nPersistentKeepalive = 25
    n
    nWindows/Mac: 下载WireGuard官方客户端 → 导入配置文件Linux:sudo wg-quick up ./client2.conf三、常用管理命令
    n命令作用
    nsudo wg show查看所有连接状态
    nsudo wg show wg0 peer 查看特定客户端流量
    nsudo systemctl restart wg-quick@wg0重启服务
    nsudo wg-quick down wg0停止接口
    nsudo wg set wg0 peer remove移除客户端
    n四、关键检查清单

      n
    • • 腾讯云安全组放行UDP 51820
      n
    • • 服务器UFW防火墙放行51820
      n
    • • /etc/sysctl.conf中net.ipv4.ip_forward=1
      n
    • • 配置文件中的eth0与实际网卡名一致(用ip addr确认)
      n
    • • 客户端AllowedIPs包含PersistentKeepalive = 25(防NAT超时)
      n
    • • 服务端PostUp/PostDown中的iptables规则正确
      n

    五、进阶优化(可选)1. 修改MTU优化传输:在段添加:
    n
    n
    nMTU = 1280 # 腾讯云内网通常用1400或1280
    n
    n2. 多客户端批量生成脚本:
    n
    n
    n#!/bin/bash
    n# create_client.sh
    nCLIENT_NAME=$1
    nCLIENT_IP=$2 # 如 10.200.200.4
    n
    nwg genkey | tee ${CLIENT_NAME}_privatekey | wg pubkey > ${CLIENT_NAME}_publickey
    n
    necho “” >> /etc/wireguard/wg0.conf
    necho “PublicKey = $(cat ${CLIENT_NAME}_publickey)” >> /etc/wireguard/wg0.conf
    necho “AllowedIPs = ${CLIENT_IP}/32” >> /etc/wireguard/wg0.conf
    n
    necho “客户端配置已生成,IP: ${CLIENT_IP}”
    n
    n3. 查看实时流量统计:
    n
    n
    nwatch -n 1 ‘sudo wg show’
    n
    n六、安装qrencode DNS解析失败DNS解析失败,mirrors.tencentyun.com 这个域名解析不了。这是腾讯云内网源,但你的服务器可能没配置内网DNS。快速解决(换公网源)
    n
    n
    n# 1. 恢复官方源(或换阿里云/清华公网源)
    nsudo cp /etc/apt/sources.list.bak /etc/apt/sources.list 2>/dev/null || echo “备份不存在”
    n
    n# 直接写入阿里云源(东京服务器访问很快)
    nsudo tee /etc/apt/sources.list > /dev/null << 'EOF'
    ndeb http://mirrors.aliyun.com/ubuntu/ noble main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-updates main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-backports main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-security main restricted universe multiverse
    nEOF
    n
    n# 2. 更新并安装
    nsudo apt update
    nsudo apt install qrencode -y
    n
    n如果还是解析失败(DNS问题)
    n
    n
    n# 检查DNS
    ncat /etc/resolv.conf
    n
    n# 临时修复:用Google DNS
    necho “nameserver 8.8.8.8” | sudo tee /etc/resolv.conf
    nsudo apt update && sudo apt install qrencode -y
    n
    n其实 qrencode 不是必须的!替代方案——直接显示配置文本,手动输入或复制:
    n
    n
    n# 生成客户端配置文件后,直接cat显示
    ncat /etc/wireguard/client1.conf
    n
    n# 或者生成base64链接(手机浏览器访问)
    ncat client1.conf | base64
    n
    n手机端可以手动创建配置,比装qrencode快多了。现在执行:
    n
    n
    nsudo tee /etc/apt/sources.list > /dev/null << 'EOF'
    ndeb http://mirrors.aliyun.com/ubuntu/ noble main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-updates main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-backports main restricted universe multiverse
    ndeb http://mirrors.aliyun.com/ubuntu/ noble-security main restricted universe multiverse
    nEOF
    n
    nsudo apt update && sudo apt install qrencode -y
    n
    n不行就直接跳过qrencode,手动配置。七、手动配置步骤手动配置很简单,不需要qrencode。以下是完整步骤:服务端:生成客户端配置并显示
    n
    n
    ncd /etc/wireguard
    n
    n# 1. 生成客户端1的密钥对(手机用)
    nwg genkey | tee client1_privatekey | wg pubkey > client1_publickey
    n
    n# 2. 查看公钥(复制这串字符)
    ncat client1_publickey
    n# 输出示例:aBcD1234…(很长的base64字符串)
    n
    n# 3. 添加到服务端配置
    nsudo nano /etc/wireguard/wg0.conf
    n
    n在末尾添加:
    n
    n
    n
    nPublicKey =
    nAllowedIPs = 10.200.200.2/32
    nPersistentKeepalive = 25
    n
    n重启服务:
    n
    n
    nsudo wg-quick down wg0 && sudo wg-quick up wg0
    n
    n创建客户端配置文件
    n
    n
    n# 创建手机端配置文件
    nsudo tee /etc/wireguard/client1.conf > /dev/null < ${CLIENT_NAME}_publickey
    n
    n# 添加到服务端
    necho ”
    n
    nPublicKey = $(cat ${CLIENT_NAME}_publickey)
    nAllowedIPs = ${CLIENT_IP}/32
    nPersistentKeepalive = 25″ | sudo tee -a /etc/wireguard/wg0.conf
    n
    n# 生成客户端配置
    nSERVER_PUB=$(cat server_publickey)
    nSERVER_IP=$(curl -s ifconfig.me)
    nCLIENT_PRIV=$(cat ${CLIENT_NAME}_privatekey)
    n
    necho ”
    n========== 手机端配置 ==========
    n
    nPrivateKey = ${CLIENT_PRIV}
    nAddress = ${CLIENT_IP}/24
    nDNS = 119.29.29.29, 8.8.8.8
    n
    n
    nPublicKey = ${SERVER_PUB}
    nEndpoint = ${SERVER_IP}:51820
    nAllowedIPs = 0.0.0.0/0, ::/0
    nPersistentKeepalive = 25
    n================================
    n复制以上内容到手机WireGuard App” | sudo tee ${CLIENT_NAME}.conf
    n
    n# 重启服务
    nsudo wg-quick down wg0 && sudo wg-quick up wg0
    n
    n# 显示配置
    ncat ${CLIENT_NAME}.conf
    n
    n保存为脚本执行,或直接复制上面分段命令。验证连接手机连接后,在服务端查看:
    n
    n
    nsudo wg show
    n
    n看到latest handshake有时间就是成功了!现在执行生成密钥和显示配置的命令,把输出的内容复制到手机即可。
    n
    n
    n

  • Comments

    Leave a Reply

    Your email address will not be published. Required fields are marked *