我在使用 Windows 10 笔记本电脑。我正在通过 SSH 连接到 Kali GNU/Linux(具有公共 IP 和 LAN 中的 IP)(没有 root 权限)。我正在尝试远程桌面连接到 Windows XP 计算机(在 LAN 上,没有公共 IP,没有 ssh)。
我已经通过 msfconsole 进入 Windows XP 计算机并获取了管理员用户名和密码run post/windows/manage/enable_rdp
(我认为这可以启用远程桌面)。当我rdesktop -u {adminuser] -p {adminpassword}
从 Kali 运行时,出现错误UI(error): ui_init(), failed to open X11 display:
。
我认为这里的问题是 Kali 电脑没有屏幕或类似的东西,但我不确定。如何设置它以便我可以远程桌面进入 Windows XP 电脑,从我的 Windows 10 笔记本电脑查看/与屏幕交互?
如果在 kali 电脑上没有 root 权限是一个大问题,我可以从 kali 电脑 ssh 到另一台运行的电脑Linux kali 5.15.0-kali2-amd64 SMP Debian 5.15.5-2kali2
(也在 LAN 上,没有公共 IP),我有 root 权限,然后 rdesktop 到 windows XP
请注意,这是迄今为止我在命令行上所做的最复杂的事情,所以请不要假设我知道随机术语。
答案1
我认为这里的问题是 Kali 电脑没有屏幕或类似的东西,但我不确定。
这并不是说电脑没有屏幕——而是SSH 连接没有。您的 SSH 会话仅设置为传输文本(终端会话),并且其自身无法弹出图形窗口。
SSH能传输 X11 图形,但您需要额外的软件:在本地机器上运行的“X11 服务器”,以便实际在屏幕上呈现它们。对于 Windows,有几种不同质量的选项(VcxSrv、Xming、X410、Cygwin 中的、MobaXterm 中的……)。安装并启动 X11 服务器后,在启用 SSH X11 转发的情况下连接到 Kali:
PS> $env:DISPLAY = "localhost:0" PS> ssh kali_address -C -Y
在该 SSH 会话中,X11 显示现在应该可用于图形程序。(它不会像 RDP 或 VNC 那样快;尽管 X11 曾经是为网络使用而设计的,但它是为具有非常不同 UI 的网络使用而设计的。)
更简单、更可靠的替代方案:不要在 Kali 上使用 rdesktop,而是在本地计算机上运行远程桌面客户端,并使用 SSH 建立 RDP TCP 连接隧道。这不需要任何其他软件 - 只需将选项添加
-L
到您的 SSH 连接即可:PS> ssh kali_address -L 3390:winxp_address:3389
只要此 SSH 会话正在运行,它就会在 localhost:3390 上监听连接(该连接将被转发到 RDP 服务器)。