我正在运行 Windows 或 Linux 的客户端 PC 上浏览网页。我想浏览一个http://access.lan:52050//cgi-bin/login.cgi
无法从我的电脑直接访问的网站 ( )。
- 如果我通过代理机器就可以浏览该网站。它的IP地址是192.168.1.1。它运行的是 Red Hat Linux。
- 我可以使用 SSH 版本 1 从客户端 PC 登录 Red Hat 计算机。
我怎样才能以简单的方式进行设置?
答案1
您可以使用 ssh 隧道来访问该网站。由于IP 192.168.1.1的PC可以访问该网站,因此您可以让192.168.1.1代表您询问该网站。您发送的所有请求将首先通过 ssh 隧道发送到 192.168.1.1。
您必须使用以下命令:
$ ssh -N -L your-port:access.lan:52050 [email protected]
笔记:
1. your-port: Port > 1024 which you will make as your end of tunnel.
2. user-name: login name of the user on 192.168.1.1 whose passwd you know.
答案2
在 Linux 客户端 (212.1.1.1) 的终端中运行以下命令:
ssh -L 3130:localhost:3128 192.168.1.1
这会将 Linux 客户端上 TCP 端口 3130 的连接重定向到 192.168.1.1 上的 TCP 端口 3128。您可以选择您喜欢的端口,而不是本地计算机上的 3130。在代理上,使用代理程序运行的任何端口(可以是 3128、8080 或其他端口)。
当您想要使用代理时,请告诉您的浏览器使用本地主机端口 3130 作为代理 ( http://127.0.0.1:3030/
)。
如果您不想每次启动和停止使用代理时都编辑浏览器设置,请使用浏览器扩展,例如狡猾的代理对于 Firefox 或相当于铬合金并将其设置为http://127.0.0.1:3030/
仅用作 URL 匹配的代理http://access.lan:52050/*
。
如果您要经常这样做,请将以下行添加到文件中~/.ssh/config
:
Host some_proxy
HostName 192.168.1.1
LocalForward 3130 localhost:3128
然后运行ssh some_proxy
(您可以选择比 更重要的名称some_proxy
)。
注意:SSH 版本 1 已经过时了。我认为我提到的命令当时就存在,但我没有检查。令我惊讶的是 SSH 第 1 版服务器仍在运行。您确定不能使用 SSH 协议版本 2 吗?