需升级至Windows 11 24H2(Build 26100+),再通过设置→系统→开发者选项开启“启用sudo”并选disableInput模式,或用sudo config --enable disableInput命令配置,或修改注册表EnableSudo=1强制启用,最后以sudo net session验证输入句柄是否关闭。

如果您在 Windows 11 命令行中输入 sudo 却提示“不是内部或外部命令”、“已在此计算机上禁用 Sudo”或无法触发 UAC 提权流程,则说明系统尚未启用微软官方集成的原生 Sudo 功能。该功能仅适用于 Windows 11 版本 24H2(Build 26100 及以上),启用后可在非管理员终端中直接使用 sudo 前缀执行提权操作,并通过运行模式配置控制输入句柄状态、窗口隔离性与交互能力,从而提升命令行操作安全性与权限控制精度。以下是多种独立可行的开启与配置方法:
一、通过系统设置启用 Sudo 功能并设定安全行为
此方法调用 Windows 内置图形界面完成启用与初始安全策略绑定,不依赖命令行基础,适用于所有已安装 Windows 11 24H2 或更高版本的设备。启用后,sudo 命令将注册至系统 PATH,且所选运行模式直接影响提权过程中的输入劫持风险与上下文继承边界。
1、按下 Win + I 打开「设置」应用。
2、在左侧导航栏点击「系统」,向下滚动并点击「开发者选项」。(部分语言版本路径可能为:隐私和安全性 → 开发者选项)
3、在右侧区域查找「启用 sudo」开关,将其设置为「开」。
4、启用后,在同一页面查找「配置 sudo 如何运行应用程序」下拉菜单。
5、从中选择禁止输入(disableInput)模式,该模式在当前终端提权执行命令的同时关闭 stdin 句柄,可有效防止恶意程序劫持控制台输入流。
二、使用命令行启用并强制应用高安全运行模式
此方式支持即时生效与脚本化部署,可绕过图形界面直接修改系统策略,且允许用户在启用功能的同时指定行为模式;disableInput 模式在提权时禁用当前会话的输入句柄,阻断潜在的键盘注入攻击面,是高安全场景下的推荐配置。
1、以标准用户身份打开 Windows Terminal 或 PowerShell(无需管理员权限)。
2、输入以下命令并回车启用 Sudo 功能并立即应用高安全模式:sudo config --enable disableInput。
3、若提示“需要先启用 Sudo”,系统将自动完成初始化;否则命令将直接写入运行时策略。
4、执行完成后,运行 sudo config --get 验证当前生效配置是否为 disableInput。
5、尝试运行 sudo net session,观察是否仅弹出 UAC 确认框而无后续键盘输入响应,确认输入句柄已被关闭。
三、通过注册表键值强制启用(适用于组策略受限或域环境)
当设备处于企业域控、组策略禁用开发者选项或设置界面不可访问时,可通过修改注册表键值强制启用 Sudo 功能,不依赖图形界面与命令行工具,适用于受限设备统一策略下发。该操作写入系统策略存储区,对所有用户生效。
1、按 Win + R 输入 regedit,以管理员身份运行注册表编辑器。
2、导航至路径:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System。
3、在右侧空白处右键 → 「新建」→「DWORD (32 位) 值」,命名为 EnableSudo。
4、双击该值,将数值数据设为 1,基数选「十进制」,点击确定。
5、关闭注册表编辑器,运行 gpupdate /force 刷新组策略,或注销当前用户后重新登录使策略生效。
四、通过注册表手动创建 Sudo 服务项启用(备用路径)
当策略路径不存在或被锁定时,可采用系统服务注册路径作为备用启用方式。该路径不依赖组策略容器,直接向系统运行时注册 Sudo 子系统,适用于开发测试环境或策略未覆盖的轻量部署场景。
1、按 Win + R 输入 regedit,以管理员身份运行注册表编辑器。
2、导航至路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Sudo。
3、若该键不存在,请右键 “CurrentVersion” 项 → 「新建」→「项」,命名为 Sudo。
4、在新建的 Sudo 项内,右键空白处 → 「新建」→「DWORD (32 位) 值」,命名为 Enabled。
5、双击 Enabled,将数值数据设为 1,基数选「十进制」或「十六进制」均可。
五、验证 Sudo 安全提权是否就绪
启用与配置完成后,需在非管理员权限终端中实测命令执行效果,确认 UAC 提示弹出、提权成功返回结果,且输入通道受控,从而排除权限继承异常、环境变量缺失或模式未生效问题。
1、关闭所有已打开的终端窗口。
2、按 Win + R,输入 cmd,回车启动普通权限命令提示符。
3、输入:sudo whoami,观察是否弹出 UAC 对话框并返回 NT AUTHORITY\SYSTEM 或当前主机 Administrators 组成员名。
4、再次输入:sudo net session,确认命令执行后无键盘输入响应,且仅显示会话列表或拒绝访问错误(表明 stdin 已关闭)。


















