Ответ Кабабунги правильный, но у них нет другого варианта: --proxy-ntlm
.Некоторые прокси не будут правильно авторизоваться с помощью --proxy-anyauth
, поэтому в идеале вы захотите указать метод аутентификации, который использует ваш прокси.Если вы запустите curl -v -U user:pass -x proxy:port --url http://www.google.com
, вы должны получить что-то вроде следующего:
- О подключении () к порту прокси [ваш прокси] [ваш порт] (# 0)
- Попытка [IP] ...
- подключено
- Подключено к порту [ваш прокси] ([IP]) [ваш порт] (# 0)
- УстановитьПрокси-туннель HTTP для www.google.com:443
- Проверка подлинности прокси с использованием Basic с пользователем '[user]'
- ПОДКЛЮЧИТЕ www.google.com:443 HTTP / 1.1
- Хост: www.google.com:443
- Прокси-авторизация: базовая [gibberish]
- Пользователь-агент: curl / [ver] ([OS]) libcurl / [ver] OpenSSL/ [ver] zlib / [ver]
- Proxy-Connection: Keep-Alive
- HTTP / 1.1 407 Proxy Authentication Required
- Proxy-Authenticate: NEGOTIATE
- Proxy-Authenticate: NTLM
Добавьте флаг для всего, что вы видите в параметре Proxy-Authenticate, и вам будет хорошо идти.В этом примере вы бы добавили флаг --proxy-ntlm
.