WireGuard的配置文件详解

WireGuard的配置文件详解

mohuangNPC
2025-12-16 / 0 评论 / 2 阅读 / 正在检测是否收录...

记录一下wireguard的配置文件参数详解

组成

WireGuard 配置文件通常命名为 wg0.conf(接口名可自定义),分为 [Interface](本地配置)和 [Peer](对等节点配置)两部分。

[Interface] 部分(本地配置)

必需参数

PrivateKey (必填)

  • 本地私钥,用于解密接收的数据
  • 生成命令:wg genkey
  • 示例:PrivateKey = yAnz5TF+lXXJte14tji3zlMNq+hd2rYUIgJBgB3fBmk=

Address (必填)

这里的Address的代表的是本机的ip地址,也就是说是别的节点能通过这个Address去访问
本机

  • 本地虚拟网络地址,可指定多个
  • CIDR 格式(IPv4/IPv6)
  • 示例

    Address = 10.0.0.1/24
    Address = 10.0.0.1/24, fd86:ea04:1115::1/64

可选参数

ListenPort (可选,默认随机)

  • 监听端口(UDP)
  • 示例:ListenPort = 51820

MTU (可选,默认自动)

  • 最大传输单元
  • 示例:MTU = 1420

DNS (可选)

  • DNS 服务器地址
  • 示例:

    DNS = 1.1.1.1
    DNS = 8.8.8.8, 8.8.4.4

Table (可选)

  • 路由表规则
  • 值:auto (默认), off, 或数字
  • 示例:Table = 1234

PreUp, PostUp (可选)

  • 接口启动前/后执行的脚本
  • 示例:PostUp = iptables -A FORWARD -i %i -j ACCEPT

PreDown, PostDown (可选)

  • 接口关闭前/后执行的脚本
  • 示例:PreDown = iptables -D FORWARD -i %i -j ACCEPT

SaveConfig (可选)

  • 运行时是否保存配置
  • 示例:SaveConfig = true

FwMark (可选)

  • 防火墙标记
  • 示例:FwMark = 0x1234

[Peer] 部分(对等节点配置)

必需参数

PublicKey (必填)

  • 对等节点的公钥,用于加密发送的数据
  • 从对等节点的私钥生成:wg pubkey < private.key
  • 示例:PublicKey = xTIBA5rboUvnH4htodjb6e697QjLERt1NAB4mZqp8Dg=

AllowedIPs (必填)

这里的意思是发往AllowedIPs的流量走这个Endpoint,就是配置路由

  • 允许通过该对等节点路由的 IP 范围
  • 特殊值:0.0.0.0/0 表示全部流量
  • 示例:

    AllowedIPs = 10.0.0.2/32
    AllowedIPs = 10.0.0.0/24, 192.168.1.0/24
    AllowedIPs = 0.0.0.0/0  # 完整隧道

可选参数

Endpoint (可选,但至少一个节点需要)

  • 对等节点的公网地址和端口
  • 格式:IP或域名:端口
  • 示例:Endpoint = 203.0.113.1:51820

PersistentKeepalive (可选)

  • NAT 穿透保持连接间隔(秒)
  • 示例:PersistentKeepalive = 25

PresharedKey (可选,增强安全性)

  • 预共享密钥,对称加密
  • 生成命令:wg genpsk
  • 示例:PresharedKey = /UwcSPg38hW/D9Y3tcS1FOV0K1wuURMbS0sesJEP5ak=

完整配置文件示例

服务器端配置 (wg0.conf)

[Interface]
# 服务器配置
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <server_private_key>
# 可选配置
DNS = 8.8.8.8
MTU = 1420
# 防火墙规则
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
# 客户端1
PublicKey = <client1_public_key>
AllowedIPs = 10.0.0.2/32

[Peer]
# 客户端2
PublicKey = <client2_public_key>
AllowedIPs = 10.0.0.3/32

客户端配置 (wg0.conf)

[Interface]
# 客户端配置
Address = 10.0.0.2/24
PrivateKey = <client_private_key>
DNS = 8.8.8.8

[Peer]
# 服务器端
PublicKey = <server_public_key>
Endpoint = server.example.com:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
0

评论 (0)

取消

Warning: file_put_contents(/var/www/html/rss.xml): failed to open stream: Permission denied in /var/www/html/usr/plugins/CustomRSS/Plugin.php on line 149