在本地浏览器中打开服务器浏览器

An0*_*n0n 8 server python3 remote-login

当我通过 ssh 进入我的服务器并在那里做我的事情时。例如,我如何在远程机器上打开浏览器,并在我的本地机器上显示它,

我在本地机器上运行 Ubuntu 桌面。在服务器端,我使用 Ubuntu 16.04 服务器。它是一个开发服务器,所以我在那里有一个 python 脚本,它使用:

webbrowser.open("https://" + url)
Run Code Online (Sandbox Code Playgroud)

使用我需要的 URL 打开默认浏览器。

换句话说,当我登录到服务器时,如何在我的本地机器上打开一个链接。

更一般地说,我如何使用我的 Ubuntu 远程服务器机器,就好像它是我的本地机器一样?

自从:

  • 服务器端机器不需要 GUI。
  • 我不想安装服务器 GUI 并使用远程桌面。

如何访问我自己的开发服务器并在我的本地机器上打开一个简单的程序?

vid*_*rlo 12

最简单的方法是使用SSH 的socks 代理。从手册页:

-D [bind_address:] 端口

指定本地“动态”应用程序级端口转发。这通过分配一个套接字来侦听本地端的端口来工作,可选地绑定到指定的 bind_address。每当与此端口建立连接时,该连接就会通过安全通道转发,然后使用应用程序协议来确定从远程机器连接到何处。

浏览器也可以使用socks 代理。如何配置它取决于您碰巧使用的浏览器,但我通常使用一个浏览器来处理袜子,而另一个用于非代理工作。

首先,使用以下命令启动 ssh:

ssh -D1080 user@example.com
Run Code Online (Sandbox Code Playgroud)

这将运行 ssh,为远程主机创建一个socks 代理,监听端口 1080。在你的浏览器中,在本地主机,端口 1080 上输入一个socks 代理。在 Firefox 中,它位于首选项 - 高级 - 网络下:

火狐代理设置

这会将流量从浏览器隧道传输到远程机器,并且流量似乎来自远程机器。

  • 不,您在 **local** 浏览器中进行更改,然后 ssh 将流量通过隧道传输到远程主机。您不需要(并且可能不应该)在远程端安装 Firefox。 (2认同)

小智 7

首先,在您的服务器 sshd_config 中,启用 X11 转发如下

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes
Run Code Online (Sandbox Code Playgroud)

然后在您的服务器中 ssh:

$ ssh user@server -C -X
Run Code Online (Sandbox Code Playgroud)

然后启动火狐

$ firefox
Run Code Online (Sandbox Code Playgroud)

  • OP 说 _“我在服务器上没有 GUI”_ - 他们是否不仅需要安装 Firefox,还需要在服务器上安装某些版本的 X(即 GUI)才能执行此操作?如果他们想_“在远程机器上使用 Firefox *打开浏览器*”_(强调),那么这是正确的答案。如果他们想在本地运行 Firefox,另一个答案是正确的 (3认同)