我正在 ssh'ing 到无法访问 Internet 的服务器 (SLES 10 sp2)。我需要在此服务器上运行更新并安装新软件,最好使用 Yast。
所以我的想法是:
- 使用 ssh 创建一个代理到可以访问外部的盒子。
- 设置 Yast 以使用此代理。
我在隔离服务器上运行的 ssh 命令如下所示:
ssh -D 9999 username@ip-of-box-with-internet-access
在 Yast 中,我转到网络服务 > 代理并输入以下内容作为 HTTP 代理 URL:
http://localhost:9999
当我去测试代理设置它失败了。
我怀疑 Yast 不知道它是 SOCKS5 代理。
谁能告诉我如何设置 Yast 以使用通过 ssh 创建的代理?
任何帮助,将不胜感激!
好的,所以您在网络上有一台机器,它的流量没有通过网关路由到互联网,但它在与其他机器的网络上,它们的流量确实通过网关路由到互联网。
1.) 为什么盒子是隔离的?这是安全风险还是偏执狂?防火墙规则应该足以使盒子与网络隔离,同时仍然允许出站连接和对这些连接的响应。
2.) 更简单的方法可能是使用 VPN 软件而不是代理。YAST 使用各种协议和子工具(即 curl)来获取补丁,其中大部分忽略了其他系统范围的设置。
3.) 您可以考虑使用 VPN 解决方案或使用 Novell 的补丁镜像应用程序(称为“SMT”)和您的镜像凭据(均可从 Novell 客户中心获得)来设置本地镜像,而不是代理。
“HTTP 代理”和“SOCKS5 代理”不是一回事。这就是 YAST 没有得到它的原因 :)
一个快速的解决方法是在 上安装 Squid 或其他一些 HTTP 代理
ip-of-box-with-internet-access
,然后ssh -L 12345:localhost:8080 user@ip-of-box-with-internet-access
从服务器执行类似的操作。我一直这样做。快速 HTTP 代理的一个示例是micro proxy,但我没有使用过,因此无法给出建议。鱿鱼设置起来还不错。