通过 ssh 访问正在运行的 Firefox

通过 ssh 访问正在运行的 Firefox

我的办公室里有一个linux盒子。我在那里打开了一个 Firefox 窗口,然后就回到了家。我想从家里通过 ssh 访问 Firefox 窗口。是否可以?

答案1

您需要启动x11vncvino-server在该 X 会话中,将连接端口转发到该 VNC 服务器并附加到该服务器。

$pid以firefox的pid为例:

ssh -Y host vino-preferences

启用共享而不提示并设置 VNC 密码。

ssh host

在远程 shell 上,运行:

xargs -0a "/proc/$pid/environ" sh -c '
  exec env "$@"  /usr/lib/vino/vino-server --tube' sh

开始vino

请注意 vnc 服务器所在的端口。

键入~C以显示 ssh 提示符,然后运行(此处如果 VNC 在端口 2 上)

-L 5900:localhost:5902

设置端口转发。

然后使用 ssh 客户端连接到该 VNC 服务器:

vinagre :0

(如果 VNC 端口已在本地计算机上使用,请使用与上述 5900/:0 不同的端口)。

这有点简单x11vnc

在远程主机上运行vncpasswd以设置 VNC 密码并:

xargs -0a "/proc/$pid/environ" sh -c '
  exec env "$@" x11vnc' sh

并按照上述步骤进行端口转发并连接到 VNC 服务器。

答案2

默认情况下,否。您正在运行的 Firefox 实例正在与桌面上的 X 服务器通信。

根据您的桌面,它可能内置了“桌面共享”,这通常是内置的 VNC 服务器。您可以连接到该设备并远程访问整个桌面。

或者还有一些解决方案,例如 XPRA (http://xpra.org/) 是“X11 的屏幕”;您运行 XPRA 服务器,它会创建一个 X 服务器。在里面你可以运行你的 firefox、xterm 等等。然后远程连接到该服务器。但这需要预先规划。

相关内容