我剛剛在我的新 Ubuntu 12.04 上安裝了 cntlm。在設定檔中etc/cntlm.conf
,我插入了網路配置,如下所示:
Username: myUsername
Domain : myDomain
Password: myPassword
Proxy : myProxy:8080
Listen: 3128
但是當我設定127.0.0.1:3128
為瀏覽器網路代理程式並想要存取網站時,會出現 cntlm 的彈出式選單並要求輸入使用者名稱和密碼。
解決這個問題的方法是什麼?如何取得我的網路網域?我認為我的域名或其他詳細資訊可能有誤。
答案1
1) 將 CNTLM 安裝到預設目錄(在 Windows 上,C:\Program Files (x86)\cntlm\ )。
2) 跑步執行程式
3) 類型:cd "C:\Program Files (x86)\cntlm\"
4) 類型:cntlm.exe -H -d 你的網域 -u 你的用戶名
它會詢問您的密碼。輸入您的密碼,cntlm 將為您提供一些雜湊。像這樣的事情:
c:\Program Files (x86)\Cntlm>cntlm -H -d your_domain -u your_username
Password:
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassNTLMv2 2A0B7C2457FB7DD8DA4EB737C4FA224F
現在您已經對密碼進行了哈希處理。將它們儲存到文字編輯器。
5) 類型:cntlm-Mhttp://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,則必須同時使用 PassLM 和 PassNT
- 如果 Auth 是 NTLMv2,則您必須只使用 PassNTLMv2
現在我們得到了我們想要的一切。對於我的配置,Auth 說 NTLM,因此我將在 cntlm.ini 設定檔中使用 PassNT 和 PassLM。
這是根據給定答案的範例設定檔:
#
# 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
現在您可以使用電腦的 IP 位址和連接埠 3132 作為代理。
注意 1:不要使用網域名稱\使用者名稱作為使用者名稱 注意 2:如果有,請不要忘記在您的網域後使用「.intra」副檔名(yourdomain.intra)
答案2
在cntlm.conf
文件中,請確保將該欄位替換Password
為以下欄位之一:
PassLM
(如果你使用LM哈希)PassNT
(如果您使用 NT 哈希)PassNTLMv2
(如果您使用 NTLMv2 哈希)
然後,你不應該寫明文密碼,而應該寫對應的雜湊值,可以用以下指令計算cntlm -H -d <domain> -u <user>
答案3
我也有同樣的問題。
首先,嘗試這個指令:
sudo cntlm -M http://www.google.com
查看結果。如果唯一的方法好的是授權=LM,那你需要修改設定檔(取消註解這行):
Auth LM
Flags 0x06820000
如果您不知道如何更改配置文件,請執行以下操作:
gksudo gedit /etc/cntlm.conf
請記得重新啟動 CNTLM:
sudo service cntlm restart