fooofei / cpp.notes

1 stars 0 forks source link

na #26

Closed fooofei closed 5 years ago

fooofei commented 6 years ago

使用背景:

某些代理是 NTLM 类型,该类型要求 在普通代理 host+port 的基础上增加 user password 认证。 但是我们普通的软件 如 Git 不支持这种 NTLM 代理方式。 需要增加一层转换。

使用的转换软件:

cntlm http://cntlm.sourceforge.net/

安装

Windows

安装时不要自己更改路径,一定要使用默认路径。因为 cntlm 是基于 linux 平台开发的软件, Windows 版本是直接用 linux 版本代码,cygwin 编译的。 在路径处理上有 bug。 在安装时如果更改过路径,会看到 warning cygwin warning: MS-DOS style path detected: D:\Program Files (x86)\Cntlm\cntlm.ini Preferred POSIX equivalent is: /Cntlm/cntlm.ini 不能改为 c:\cntlm 也不能改为 d:\program files\

linux

使用

获取认证信息 用来填充 cntlm.ini 文件 cntlm.exe -H 或者 cntlm.exe -v -c cntlm.ini -I -M http://www.baidu.com 生成的填充到 PassLM PassNT PassNTLMv2(可选) 有了这个不需要填写 Password

cntlm.ini 文件在 Windows linux 通用。

NoProxy 这个需要自己找找

Auth NTLM #这个一定要加上 Allow 127.0.0.1

Proxy 允许 domain + port, 不一定是 IP 地址

启动

以服务方式启动 在【服务】或者【开始菜单】见到名字 Cntlm Authentication Proxy

查看使用情况

定位问题。到 Windows 事件查看器。 【Windows 日志】 -> 【应用程序】