После борьбы с концепцией на некоторое время я, наконец, понял, как получить это настроить.
После установки 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