在 Windows 10 上以非管理员身份运行 wireguard 的问题 - “用户界面只能从内置管理员的桌面访问”

Pat*_*パトシ 5 networking vpn administrator windows-10 wireguard

以非管理员身份运行时出现以下错误:

WireGuard 正在运行,但只能从内置管理员的桌面访问 UI

如何为 win10 启用wireguard 以仅与普通用户一起使用?

小智 11

正如之前的解决方案和评论所指出的,激活wireguard (WG) 隧道是不可能的——该操作需要某种特权提升。

到目前为止提到的解决方案有一些缺点,至少在我的用例中是这样。为了完整起见,我将列出所有提到的解决方案并添加我的解决方案。

  1. 正常WG安装,切换到管理员用户激活Wireguard,然后切换回来。

    • Pro:管理员用户可以访问 WG GUI 的所有功能
    • 缺点:切换用户需要时间和点击
  2. 正常WG安装,添加HKLM\Software\WireGuard\LimitedOperatorUI注册表项并将用户添加到Network Configuration Operators

    请参阅WG 注册表项文档

    • 优点:WG GUI 可访问
    • 缺点:扰乱注册表、GUI 功能严重受限、权限提升提示混乱

    最后一点需要澄清:当作为普通非特权用户工作时,Windows 出于多种原因要求特权提升,并且需要定期输入管理员密码。这非常简单,因为默认选择管理员帐户,并且可以快速输入密码。然而,作为 NCO 组的一部分,使用户在操作系统的眼中成为一种管理员,因此每个提升提示都会默认提供当前NCO 用户 - 现在为了输入真正的管理员的密码,有必要首先选择另一个用户。在最初几次需要提升权限后,这很快就会变得烦人。

  3. 企业 WG 安装无需启动管理 GUI,从以管理员身份运行的快捷方式启动/停止 WG 隧道

    • 优点:没有 GUI,没有 WG 后台服务,用户确实保持正常
    • 缺点:没有 GUI

    请参阅企业使用文档。

    简单来说:

    1. 下载WG MSI 安装程序(而不是 .exe)
    2. 在管理命令提示符下,运行msiexec /i <installer filename>.msi DO_NOT_LAUNCH=1
    3. 为 WG 创建桌面快捷方式:
      • 从命令开始wireguard /installtunnelservice <path to conf>.conf
      • 使用命令 `wireguard /uninstalltunnelservice停止
      • 勾选run as Administrator两个快捷方式

    可以使用 wg.exe 检查隧道状态


Pat*_*パトシ 8

Wireguard 3.1+ 现在支持非管理员运行wireguard,但您需要做一些小的修改:

https://lore.kernel.org/wireguard/X7vGOb0o6SHIvfDc@zx2c4.com/T/#u

  • 安装wireguard 3.1+
  • 将您的用户添加到“网络配置操作员”中。以管理员身份打开资源管理器右键单击“我的电脑”>“管理”>“用户/组”>网络配置操作员
  • 添加一个条目到注册表。Windows 键 + R > regedit > 创建注册表项 HKLM\SOFTWARE\WireGuard,然后在 HKLM\SOFTWARE\WireGuard\LimitedOperatorUI 创建一个 DWORD 并将其设置为 1
  • 注销并重新登录。
  • 运行线卫

在此输入图像描述

  • @SPRBRN HKLM 是 HKEY_LOCAL_MACHINE 的简写。HKCU 是 HKEY_CURRENT_USER 等。 (3认同)

小智 4

目前,您所要求的在 Windows 上是不可能的。

与其他 VPN 工具和技术不同,Wireguard 客户端会在您尝试连接时为您配置的每个连接创建一个隧道接口(显示为网络适配器),也称为“动态”。当您终止连接时,客户端会完全删除隧道接口。它在 Windows 的官方 VPN 管道之外执行此操作。该设计有一个严重的限制,您需要成为计算机的管理员,以便软件可以创建界面。

我在 Windows、Mac 和 Linux 上使用 Wireguard。Windows 是我遇到此问题的唯一平台。此外,我只使用 Wireguard 的官方客户端(撰写本文时版本为 0.38)。我不知道是否还有其他人。