Ale*_*ber 5 ssh command-line networking
所以,我想访问一个只允许从某些 IP 域访问计算机的网站。我的 ip 不是来自允许的域之一,但我已经通过 ssh 连接到位于允许域之一的另一个位置的(linux)机器。
如何在我的本地机器上启动 Web 浏览器,通过远程机器的 ip 访问网站?
Clemens 的答案中的 SSH 隧道适用于一个特定的网站,但有一些警告......如果该网站进行虚拟托管,其中内容取决于指向特定主机名的 HTTP 请求,则简单的端口隧道将不起作用。而且它只会让您到达一个站点。
更可靠的解决方案是使用 OpenSSH 动态端口转发。命令是:
ssh -D 1080 ssh-server.example.com
Run Code Online (Sandbox Code Playgroud)
接下来,将客户端上的浏览器设置为使用位于 127.0.0.1、端口 1080 的 SOCKS 代理。
现在,无论您访问哪个站点,您的所有浏览活动(包括 DNS 查找)都将使用远程服务器。
更多详细信息请参见:SSH/OpenSSH/PortForwarding:动态端口转发
如果您需要在正常浏览和通过远程 SSH 服务器浏览之间频繁切换,请考虑为您的浏览器安装一个插件以进行快速代理切换。他们有很多。