12.4. 使用 RHEL web 控制台配置 WireGuard 服务器

您可以使用基于浏览器的 RHEL web 控制台配置 WireGuard 服务器。使用此方法让 NetworkManager 管理 WireGuard 连接。

先决条件

  • 已登陆到 RHEL web 控制台。
  • 您知道以下信息:

    • 服务器和客户端的静态隧道 IP 地址和子网掩码
    • 客户端的公钥

流程

  1. 在屏幕左侧的导航中选择 Networking 选项卡。
  2. Interfaces 部分中点 Add VPN
  3. 如果还没有安装 wireguard-toolssystemd-resolved 软件包,Web 控制台会显示一条相应的通知。点 Install 安装这些软件包。
  4. 输入您要创建的 WireGuard 设备的名称。
  5. 配置此主机的密钥对:

    • 如果要使用 web 控制台创建的密钥:

      1. Private key 区域中保持预先选择的 Generated 选项。
      2. 请注意 Public key 值。配置客户端时需要此信息。
    • 如果要使用现有的私钥:

      1. Private key 区域中选择 Paste existing key
      2. 将私钥粘贴到文本字段中。Web 控制台自动计算相应的公钥。
  6. 为传入的 WireGuard 连接设置一个侦听端口号,如 51820

    在主机上始终设置固定端口号,接收传入的 WireGuard 连接。如果您没有设置端口,WireGuard 会在每次激活接口时都使用一个随机的空闲端口。

  7. 设置服务器的隧道 IPv4 地址和子网掩码。

    要也设置 IPv6 地址,您必须在创建连接后编辑它。

  8. 为您要允许与此服务器进行通信的每个客户端添加对等配置:

    1. 单击 Add peer
    2. 输入客户端的公钥。
    3. Endpoint 字段留空。
    4. Allowed IP 字段设置为允许向这个服务器发送数据的客户端的隧道 IP 地址。
    WireGuard 服务器设置
  9. Add 创建 WireGuard 连接。
  10. 如果您还想设置隧道 IPv6 地址:

    1. Interfaces 部分点 WireGuard 连接的名称。
    2. IPv6 旁的 edit
    3. Addresses 字段设置为 Manual,并输入服务器的隧道 IPv6 地址和前缀。
    4. Save

验证

  1. 显示 wg0 设备的接口配置:

    # wg show wg0
    interface: wg0
      public key: UtjqCJ57DeAscYKRfp7cFGiQqdONRn69u249Fa4O6BE=
      private key: (hidden)
      listening port: 51820
    
    peer: bnwfQcC8/g2i4vvEqcRUM2e6Hi3Nskk6G9t4r26nFVM=
      allowed ips: 192.0.2.2/32, 2001:db8:1::2/128

    要在输出中显示私钥,请使用 WG_HIDE_KEYS=never wg show wg0 命令。

  2. 显示 wg0 设备的 IP 配置:

    # ip address show wg0
    20: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1000
        link/none
        inet 192.0.2.1/24 brd 192.0.2.255 scope global noprefixroute wg0
           valid_lft forever preferred_lft forever
        inet6 2001:db8:1::1/32 scope global noprefixroute
           valid_lft forever preferred_lft forever
        inet6 fe80::3ef:8863:1ce2:844/64 scope link noprefixroute
           valid_lft forever preferred_lft forever