如何通过 ssh 远程在我的 Firefox 上访问互联网?

如何通过 ssh 远程在我的 Firefox 上访问互联网?

好吧,我完全空白的进入这个奇怪的世界。

假设我可以使用 ubuntu 中的终端(即我的带 GUI 的 PC)访问 ssh 远程服务器(有no GUIno monitor没有连接的服务器)。我的 PC 上没有互联网连接,但只能使用终端中的基于文本的浏览器internet访问服务器的互联网(没有 GUI 也没有显示器)。Elink

我还可以使用终端命令将任何文件保存到该 ssh 远程服务器上wget。它不会将文件保存到我的硬盘中,因为我正在访问另一台服务器(没有 GUI)。

但我希望通过我的 Firefox 访问该服务器(没有 GUI)的互联网。我被 elink 浏览器(基于文本的 shi* 浏览器)卡住了。请告诉我,我可以用 Firefox 访问该互联网吗?

帮助一定会很有帮助!!

答案1

您可以使用代理来实现SOCKS。使用-D选项与OpenSSH ssh客户端:

ssh -fND 12000 <REMOTE_IP>

它将SOCKS在端口上创建一个本地代理12000,您可以根据需要选择其他端口。-fN是将ssh命令放在后台,因为我们要做的只是创建SOCKS代理。 转到firefoxEdit->Preferences->Advanced->Network->Settings检查Manual proxy configuration,输入localhostSOCKS host在其旁边输入12000。从现在开始,您应该能够通过远程主机Port访问 Internet 。 这是经典形式的firefox隧道。它对于绕过过于急切的防火墙或网吧等的安全连接特别有用。如果你觉得你会更频繁地Firefox使用它,你可以使用mozrepl 插件。例如我使用以下脚本:

#!/usr/bin/env sh

ssh -4 -fND 12000 home

# modify firefox settings with mozrepl

(echo "prefs = Components.classes[\"@mozilla.org/preferences-service;1\"].getService(Components.interfaces.nsIPrefBranch)"; echo "prefs.setIntPref(\"network.proxy.type\", \"1\")"; sleep 2) | telnet 127.0.0.1 4242 > /dev/null

# got to http://v4.ident.me/ to make sure that IP changed
(echo "content.location.href = 'http://v4.ident.me/'"; sleep 2) | telnet 127.0.0.1 4242 > /dev/null

另请注意,您可以在许多其他程序(例如不支持使用包装器开箱即用的代理的SOCKS电子邮件客户端)中使用本地创建的代理。SOCKStsocks

相关内容