在 Cntlm 能帮助包管理器之前先把它下载下来
用已在工作的已认证客户端取得正确的 RPM 来打破下载依赖,然后单独处理包管理器自身的依赖。
如果包管理器无法通过办公代理完成身份验证,那么让它下载 Cntlm 就形成了依赖循环:辅助程序正是为获取辅助程序的那条路径所需要的。
已经可用的 curl 客户端可以先完成第一次下载。对于 NTLM 代理,curl 的 --proxy-ntlm 选项选择向代理进行身份验证;--ntlm 则选择向远程目标进行身份验证。通过 curl 的凭据配置提供代理账户。
从可信的软件包源获取为已安装发行版和架构构建的 Cntlm RPM。旧答案中的 Fedora 软件包直链描述的是那个发行版的包,并不是当前通用的安装地址。
本地 RPM 仍可能留下网络工作
下载辅助包与解决其依赖是两件事。不要因为另一台机器上的旧 RPM 不需要额外下载,就推断当前软件包没有依赖。
在基于 DNF 的系统上,文档给出的本地文件形式是:
dnf install ./cntlm.rpm
使用所下载文件的实际名称和适当的安装权限。DNF 仍可能需要仓库元数据或缺少的依赖包。如果该网络路径仍不可用,请通过已批准且可用的途径获取同一发行版所需的软件包,并保持发行版常规的软件包校验策略。
辅助程序安装并配置完成后,包管理器就可以在后续请求中使用它的本地监听器。仅因为保存了一个 RPM 文件,并不会让该监听器出现;它的回环地址只在运行该辅助程序的机器上有意义。