![通过 ssh 通过另一台服务器建立 yum 流量隧道](https://linux22.com/image/56494/%E9%80%9A%E8%BF%87%20ssh%20%E9%80%9A%E8%BF%87%E5%8F%A6%E4%B8%80%E5%8F%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BB%BA%E7%AB%8B%20yum%20%E6%B5%81%E9%87%8F%E9%9A%A7%E9%81%93.png)
我正在阻止流量的公司代理后面运行 Fedora 桌面yum
(特别是*.gz
和*.bz2
)。我可以通过 ssh 访问单独的 RedHat 机器,它可以下载它喜欢的任何内容。
当我执行yum update
其他 yum 命令时:是否可以将该流量路由到 RedHat 计算机来为我进行下载?我在 RedHat 机器上没有 root 访问权限,但我可以登录并使用 wget 下载文件。如果是这样,怎么办?
答案1
我的解决方案与@slm 类似,但我使用了 SOCKS,因为它更简单,并且不需要在服务器或客户端上安装代理。
在访问受限的计算机上运行所有命令。
设置yum.conf
代理如下
proxy=socks5h://localhost:1080
从终端类型
ssh -D 1080 YOUR_USER@YOUR_SERVER_WITH_FULL_WEB_ACCESS
按 Enter 键并输入您的密码。
现在,在一个单独的终端(不是 ssh 终端)中输入
yum update
答案2
您应该能够通过 SSH 连接代理 YUM 的流量,如下所示:
添加到受
/etc/yum.conf
保护服务器上:proxy=http://127.0.0.1:8080
从具有正常入站/出站 ssh 访问的服务器:
$ ssh -R 8080:ssh.server:8080 [email protected]
在要运行 YUM 命令的服务器上:
$ yum update