9

Я использую Ubuntu за (Windows) прокси. Я хотел бы использовать утилиту cabal .

jem@Respect:~$ cabal update
Config file path source is default config file.
Config file /home/jem/.cabal/config not found.
Writing default configuration to /home/jem/.cabal/config
Downloading the latest package list from hackage.haskell.org
Warning: invalid http proxy uri:
"http://domain\\user:pass@internetproxy:3128/"
Warning: proxy uri must be http with a hostname
Warning: ignoring http proxy, trying a direct connection
^C

URL прокси был прочитан из среды. Мой прокси-сервер требует аутентификации, но cabal хочет, чтобы URL-адрес прокси-сервера начинался с имени хоста, поэтому, возможно, он запросит у меня учетные данные ...

jem@Respect:~$ http_proxy=http://internetproxy:3128/ cabal update
Downloading the latest package list from hackage.haskell.org
No action for prompting/generating user+password credentials  provided (use: setAuthorityGen); returning Nothing
cabal: Failed to download index 'ErrorMisc "Unsucessful HTTP code: (4,0,7)"'

Что такое setAuthorityGen и как его использовать? Что еще более важно, я могу разрешить доступ через прокси-сервер аутентификации? Мне нужно будет туннель?

3 ответа3

2

Мой стандартный подход к прокси-серверам ISA заключается в настройке локального прокси-сервера аутентификации, например cntlm. После установки cntlm на вашем компьютере с Ubuntu вы настраиваете его для аутентификации через NTLM на прокси-сервере ISA с вашим именем пользователя и паролем Windows. Затем вы устанавливаете для переменной HTTP_PROXY значение http://localhost:3128 (т. Е. Порт, который прослушивает cntlm).

Преимущество этого подхода состоит в том, что только одна программа имеет дело с прокси-сервером Windows. Все другие программы могут проходить через использование cntlm в качестве шлюза.

2

Ответ от Haskell-cafe pipermail

cabal-install настраивается в ~/.cabal/config . Добавьте эту строку в файл конфигурации:

export http_proxy=http://${username}:${password}@${proxy_address}
0

У меня это работает с полипо. Мой университет использует http-proxy с аутентификацией. В /etc/polipo/config вам нужно добавить эти строки

parentProxy = "proxy.server.com:80"
parentAuthCredentials = "myusername:mypassword"

И экспортируйте http_proxy=http://localhost:8123" . И это сработало как прелесть.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .