配置 Linux 以使用 Windows 代理

Dan*_* K. 11 windows linux proxy

我需要一个 Debian 盒子(没有 X)来使用带有身份验证的 Windows 代理服务器。

通常我可以用 env 变量做到这一点:

http_proxy=http://USERNAME:PASSWORD@PROXYIP:PROXYPORT
Run Code Online (Sandbox Code Playgroud)

不幸的是,Windows 域使事情变得复杂。

简而言之,如何将 Debian 配置为在身份验证需要 Windows 域和用户名的情况下使用代理domain\myname

Li-*_*Yip 11

我认为您的“Windows 代理”是一个需要 NTLM 身份验证(用户名、密码、Windows 域)的代理。典型的例子是 Microsoft ISA 服务器,它是运行 Windows 环境的大型企业环境的标准代理服务器。

如果您必须通过 NTLM 代理,请在您和公司的代理之间使用CNTLM( sourceforge )。它存储您的 NTLM 凭据并使用它们与公司的代理通信,为您提供本地代理(即localhost:3128),您无需身份验证即可连接。

您的配置将如下所示:

  • CNTLM设置为指向贵公司的代理proxy.big-company.com:8080,与您的凭据user = jsmithpass = god123domain = BIGCOMPANY,和当地的代理端口localhost:3128
  • 您的HTTP_PROXY环境变量设置为localhost:3128

在我对 Server Fault 上的这个问题的回答中有更多关于它的信息。


Har*_*ton 8

RFC1738定义了 URL 的语法,它允许使用十六进制表示对字符进行编码。因此,如果双反斜杠不起作用,您应该尝试

http_proxy=http://DOMAIN%5CUSERNAME:PASSWORD@PROXYIP:PROXYPORT
Run Code Online (Sandbox Code Playgroud)

或者

http_proxy=http://USERNAME%40DOMAIN:PASSWORD@PROXYIP:PROXYPORT
Run Code Online (Sandbox Code Playgroud)

(注意 %5C 是反斜杠的编码,%40 是at 符号的编码。)