這個概念了,而我終於想通了如何得到這個成立後摔跤。
安裝cntlm後,我跑在命令提示符下輸入:
"c:\Program Files (x86)\Cntlm\cntlm.exe" -u <user_name> -d <domain_name> -H
這要求您輸入密碼,並吐出了三個哈希在配置文件中使用。
我消減下來所需的配置在cntlm.ini
到:
Username <user_name>
Domain <domain_name>
PassLM <LM_hash>
PassNT <NT_hash>
PassNTLMv2 <NTLMv2_hash>
Proxy 192.168.7.1:80 #random proxy
NoProxy *
Listen 3133 # unused port
cntlm會讓您指定的頂級代理,即使你並不需要一個或有一個,所以任何有效數量的該選項會做。將NoProxy
設置爲*
可確保任何請求永遠不會傳遞給指定的僞造代理。
在控制檯中運行"c:\Program Files (x86)\Cntlm\cntlm.exe" -f
以驗證一切正常。否則,請將其作爲服務啓動並停止。
要使用phantomjs測試我使用下面的腳本:
var page = require('webpage').create();
page.open('http://<machine_name>/myapp', function(status) {
console.log("Status: " + status);
if(status === "success") {
page.render('example.png');
}
phantom.exit();
});
<machine_name>
不能localhost
因爲phantomjs繞過代理主機時,localhost
,所以用你的機器名或IP地址來代替。
運行它:phantomjs --proxy=localhost:3133 test.js