You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows SSH会话中以管理员权限运行程序

Windows SSH会话中以管理员权限启动程序的解决方案

问题背景

在Windows 10搭建的OpenSSH服务器中,通过手机Jucy SSH以普通用户身份登录后,无法直接以管理员权限启动特定程序:

  • 直接运行程序路径无响应
  • 使用runas /user:Administrator "C:\Program Files (x86)\program.exe"输入密码后无反应
  • 本地可正常运行的PowerShell启动脚本,在SSH会话中触发安全限制

下面提供几种可行的解决方法:


方法1:调整PowerShell执行策略(解决脚本安全限制)

SSH会话默认的PowerShell执行策略可能为Restricted,禁止运行脚本。可临时调整当前用户的执行策略:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force

调整完成后,即可执行你的管理员启动脚本。但注意:此方法仅解决脚本运行限制,若程序启动需要UAC弹窗,仍会因SSH无桌面环境导致失败,需配合后续方法。


方法2:禁用交互式UAC(解决runas/脚本无响应)

SSH会话为无桌面(headless)环境,UAC弹窗无法交互是导致程序启动失败的核心原因。可通过本地安全策略调整:

  1. 本地打开本地安全策略(按下Win+R输入secpol.msc)
  2. 依次展开本地策略 → 安全选项
  3. 找到以下两项并修改设置:
    • 用户账户控制: 用于内置管理员账户的管理员批准模式 → 设置为已禁用
    • 用户账户控制: 提示提升时切换到安全桌面 → 设置为已禁用
  4. 重启OpenSSH服务(命令行:net stop sshd && net start sshd)或重启电脑

之后,无论是使用runas命令还是PowerShell脚本,都可以无交互式启动管理员权限的程序:

使用runas命令:

runas /user:Administrator "C:\Program Files (x86)\program.exe"

使用你的PowerShell脚本:

直接执行脚本即可,无需额外调整。


方法3:通过任务计划启动管理员程序

若不想修改UAC设置,可创建任务计划实现无交互启动:

  1. 本地打开任务计划程序(按下Win+R输入taskschd.msc)
  2. 点击创建任务,在常规选项卡勾选使用最高权限运行
  3. 切换到操作选项卡,点击新建,设置:
    • 操作:启动程序
    • 程序或脚本:C:\Program Files (x86)\program.exe
  4. 保存任务,记好任务名称(比如StartAdminProgram)
  5. 在SSH会话中触发任务:
schtasks /run /tn "StartAdminProgram"

方法4:直接启动管理员权限的PowerShell会话

若需要执行多个管理员命令,可先通过runas启动管理员PowerShell:

runas /user:Administrator powershell.exe

输入管理员密码后,即可在新的PowerShell会话中直接运行程序,无需额外权限提升。


内容的提问来源于stack exchange,提问作者Phil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 01:45:28