我有这样的情况:
服务器1:公共IP xxxx私有IP 192.168.0.1
服务器2:私有IP 192.168.0.10
服务器 1 可以通过以下两个接口访问互联网:
ping -i x.x.x.x www.google.com
www.google.com is alive
ping -i 192.168.0.1 www.google.com
www.google.com is alive
服务器 2 只能通过 ssh 访问服务器 1。我需要更新一些软件包并在此服务器上安装一些新软件包(所有 shell 命令)。我已经尝试使用:
ssh -D 9001 root@server1
并在服务器 2 上使用 localhost:9001 导出 http_proxy/ftp_proxy,但它似乎不起作用。如何使用服务器1的公共连接?
答案1
该-D
选项启用 SOCKS4/5 服务器。它与普通的 HTTP/FTP 代理不同,因此需要不同的接口。许多浏览器支持 SOCKS 代理,但通常不通过 http_proxy/ftp_proxy 环境变量。
您可以将不直接支持 SOCKS 的程序包装为tsocks。
也可以看看https://superuser.com/questions/262956/how-to-invoke-a-command-using-specific-proxy-server和如何通过SSH服务器下载文件?