putty 和 X11 转发

putty 和 X11 转发

我想我不明白PuTTY中的X11转发设置有什么作用......

当 SSH->X11 设置未勾选时,但我在 SSH 设置下指定远程命令“export DISPLAY=192.168.32.106:0.0; xterm”,那么我就可以在我的 PC 上显示远程窗口。

如果我删除远程命令并勾选 SSH->X11 复选框并指定 192.168.32.106:0.0 作为显示位置,则什么都不起作用。建立连接后:

$ 回显 $DISPLAY

本地主机:10.168

我做错了什么或者理解错了什么?

答案1

DISPLAY如果 SSH 服务器已定义,则根本不需要设置环境变量X11DisplayOffset。由于您看到localhost:10.168(这是假的),SSH 服务器似乎有 10 个该设置,这是典型的默认值。

只需勾选 SSH > X11 框并建立连接。验证$DISPLAY远程机器上的值,它应该如下所示:

$ echo $DISPLAY
localhost:10.0

显示内容是localhost从远程计算机的角度显示的,因为 SSH 会截取该显示内容并通过隧道将其转发回本地计算机。假设您的本地计算机上正在运行 X 服务器,则在远程计算机上启动 xterm 或其他程序,它应该会立即弹出到您的本地显示器上。

答案2

PuTTY X11 转发连接 SSH 隧道,以便服务器 localhost:10 处的 X 连接通过管道传输到您的 PC。

  1. 远程 X 软件连接到 localhost:10(服务器的 localhost)
  2. 服务器sshd监听服务器的 localhost:10 并通过 SSH 隧道转发到 putty
  3. PuTTY 将 X 连接从服务器转发到 localhost:0(在您的电脑上)

通常情况下,X 转发可以正常工作。需要检查的事项:

  • PuTTY 是否允许通过:0 访问本地 X 服务器?
  • Putty 知道要转发到哪个 X 服务器吗?PuTTY 能看到 DISPLAY=:0 环境变量吗?

相关内容