通过 RDP 连接远程运行命令

通过 RDP 连接远程运行命令

这个问题是一。我试图从运行 Debian 的工作站通过运行 Windows 7 的远程计算机上的 SSH 会话通过命令行运行命令。设置基本如下:

debian box 1 === (SSH) ===> debian box 2 === (RDP) ===> Windows 7

我试过跑步桌面Debian 盒子 2

rdesktop <Windows 7 box network address> -u username -p password -r disk:local="./TestRDP" -s "cmd.exe /K net use C: \\\\tsclient\local & C:\\test.bat & logoff"

但远程设备上没有启动 cmd.exe。我也尝试过单独打开 cmd.exe:

rdesktop <Windows 7 box network address> -u username -p password -s "cmd.exe"

但登录后终端未启动(桌面通过 RDP 成功连接)。

我也尝试过使用自由RDP

xfreerdp /u:user /p:password /app:"||cmd" /v:<Windows 7 box network address>

但执行时出现此错误命令执行程序

RAIL exec error: execResult=RAIL_EXEC_E_NOT_IN_ALLOWLIST NtError=0x15

阅读(日期)博客条目建议添加一个包含二进制文件路径的注册表项(%windir%\System32\cmd.exe),但我无法在远程计算机上编辑注册表值。

问题建议使用 Windows 远程 shell 和第三方 rdp 客户端在远程 Windows 机器上运行终端。除了 FreeRDP 和 rdesktop 之外,还有其他 Linux 替代方案吗?

答案1

您必须在防火墙上打开一个端口以让客户端连接到它,SSH 在端口 22 上运行,所以这是您想要转发的端口。

如果你运行 KDE 桌面,你可能更喜欢 krdc教程,KDE RDP 查看器。命令行如下所示:

krdc --window --high-quality rdp:/1.2.3.4[:3389]

如果有必要,将“1.2.3.4”替换为主机 IP 地址,并将 3389 替换为其他端口。

答案2

您尝试启动的程序不在允许的程序列表中。此列表可在 Windows 2008 RC2 的“管理工具”->“远程桌面服务”->“RemoteApp 管理器”下找到

如果找不到此菜单项,请按照本指南操作安装终端服务器角色

相关内容