SSH- 在客户端而不是服务器上启动应用程序

SSH- 在客户端而不是服务器上启动应用程序

我遇到了一个奇怪的问题。当我使用 ssh 登录到我的服务器时,它会在那里启动 Firefox,理想情况下它应该在那台机器上启动 Firefox。但是,它启动的是我的计算机上的 Firefox,而不是客户端的 Firefox。为什么会发生这种情况?我使用这个登录到服务器
ssh -X username@ipfirefox

答案1

使用该-X标志,您将启用 X11 转发。这意味着当 ssh 服务器配置相同时...

# cat /etc/ssh/sshd_config | grep X11
X11Forwarding yes
X11DisplayOffset 10

...您正在将窗口从目标机器转发到本地机器。因此 Firefox 确实在目标机器上启动,但它显示在本地机器上。

答案2

firefox启动时(在远程系统上),它想要使用 X 服务器来显示自身。它通过其环境中的 DISPLAY 变量找到要使用的 X 服务器。通过使用命令-X上的选项ssh,您告诉ssh在远程会话中设置 DISPLAY 变量以将 X 连接转发回本地 X 服务器(“转发...后退?”),以便远程系统上的内容firefox显示在本地系统上。

要验证,pgrep firefox在每个系统上执行,甚至pkill -9 firefox

相关内容