Настройка и использование cntlm
Если вы привыкли пользоваться Linux, но вынуждены работать в Windows-окружении, то вам может пригодиться прокси-сервер cntlm. Этот прокси сервер умеет аутентифицироваться на прокси-сервере, работающем под управлением Windows, по алгоритмам LM, NT и NTLMv2.
Устанавливаем cntlm из репозитория:
# apt-get install cntlm
Генерируем хэш пароля учётной записи:
$ cntlm -H -d domain.tld -u stupin
Password:
PassLM B58AF0D6D2FAB837579B085E5E3D896C
PassNT 4EFC855DBCC77DA945B489A78FB17DAD
PassNTLMv2 8F6C40E03ED13AAC14299399E417F4FD # Only for user 'stupin', domain 'domain.tld'
Прописываем логин, домен и хэш из строчки PassNTLMv2 в файл конфигурации /etc/cntlm.conf. Указываем необходимость использовать алгоритм аутентификации NTLMv2 и дополняем прочими настройками. В итоге файл конфигурации должен принять примерно следующий вид:
$ egrep -v '^(#|$)' /etc/cntlm.conf
Username stupin
Domain domain.tld
PassNTLMv2 8F6C40E03ED13AAC14299399E417F4FD
Proxy 10.0.25.3:8080
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*
Listen 3128
Auth NTLMv2
Осталось перезапустить прокси, чтобы новые настройки вступили в силу:
# systemctl restart cntlm
После запуска cntlm будет готов принимать TCP-подключения на локальном адресе 127.0.0.1 на порт 3128:
# netstat -tnlp | grep port 3128
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3128 0.0.0.0:* LISTEN 7643/cntlm
Для проверки работы cntlm можно попробовать скачать какую-нибудь веб-страницу с его использованием, например вот так:
$ http_proxy=http://127.0.0.1:3128/ wget http://stupin.su/blog/index.html
Чтобы перенаправлять веб-трафик от любых программ в прокси прозрачным образом, можно настроить redsocks.