<编辑> 如果您使用的是 Windows,那么我强烈推荐px而不是 Cntlm,因为它不需要任何握手机制。
px注意事项:
它主要设计用于在 Windows 系统上运行,并使用当前登录的 Windows 用户帐户代表应用程序进行身份验证
< /编辑>
1) 将 CNTLM 安装到默认目录(在 Windows 上,C:\Program Files (x86)\cntlm\)。
2) 运行cmd.exe
3) 类型:cd "C:\Program Files (x86)\cntlm\"
4) 类型:cntlm.exe -H -d your_domain -u your_username
它会询问您的密码。输入你的密码,cntlm 会给你一些哈希值。像这样的东西:
c:\Program Files (x86)\Cntlm>cntlm -H -d your_domain -u your_username
Password:
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassNTLMv2 2A0B7C2457FB7DD8DA4EB737C4FA224F
现在您已经对密码进行了哈希处理。将它们保存到文本编辑器。
5) 类型:cntlm -M http://www.google.com
再次输入您的密码。它会给你这样的东西:
c:\Program Files (x86)\Cntlm>cntlm -M http://www.google.com
Password:
Config profile 1/4... Credentials rejected
Config profile 2/4... OK (HTTP code: 302)
----------------------------[ Profile 1 ]------
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
------------------------------------------------
现在您看到配置文件 2 是成功的。因为它对配置文件 2 表示 OK。它可能在您的系统上有所不同。
诀窍是,
- 如果 Auth 是 NT,那么您必须只使用 PassNT
- 如果 Auth 是 LM,那么您必须只使用 PassLM
- 如果 Auth 是 NTLM,那么您必须同时使用 PassNT 和 PassLM
- 如果 Auth 是 NTLMv2,那么您必须只使用 PassNTLMv2
现在我们得到了我们想要的一切。对于我的配置,Auth 表示 NTLM,因此我将在 cntlm.ini 配置文件中同时使用 PassNT 和 PassLM。
这是一个示例配置文件 NTLM(不是 NTLMv2!):
#
# Cntlm Authentication Proxy Configuration File
#
Username yourusername
Domain yourdomain
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
Workstation yourhostname.yourdomain
# Most probably proxy.yourdomain:8080
Proxy yourProxyIP:yourProxyPort
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*
Listen 3132
Gateway yes
# end of config
6) 要测试您的配置,请键入:cntlm -c cntlm.ini -I -M http://www.google.com
7) 要启动 cntlm,请键入:net start cntlm
现在您可以使用计算机的 IP 地址和端口 3132 作为代理。
您可以在此处获取最新的 Cntlm 二进制文件:http: //cntlm.sourceforge.net/