Как обновить Ruby Gems из-за прокси (ISA-NTLM)

голоса
207

Брандмауэр я за запущен сервер Microsoft ISA в режиме NTLM-только. Хэш-нибудь есть успех получить их драгоценные камни на Ruby для установки / обновления через рубин ССПИ камень или другой метод?

... или я просто лениться?

Примечание: rubysspi-1.2.4 не работает.

Это также работает для «ИГЕМА», в рамках проекта IronRuby

Задан 07/08/2008 в 06:21
источник пользователем
На других языках...                            


19 ответов

голоса
197

Я не был в состоянии получить выработок от переключателя командной строки , но я был в состоянии сделать это , просто установив свое HTTP_PROXYпеременное окружение. (Обратите внимание , что случай представляется важным). У меня есть пакетный файл , который имеет такую строку в ней:

SET HTTP_PROXY=http://%USER%:%PASSWORD%@%SERVER%:%PORT%

Я поставил четыре ссылаются переменные, прежде чем добраться до этой линии очевидно. В качестве примера, если мое имя пользователя «wolfbyte», мой пароль «секретный» и мой прокси-сервер называется «Pigsy» и работает на порту 8080:

SET HTTP_PROXY=http://wolfbyte:secret@pigsy:8080

Вы можете быть осторожными, как вам это удалось, потому что он сохраняет пароль в виде простого текста в сессии машины, но я не думаю, что это должно быть слишком много вопрос.

Ответил 07/08/2008 в 06:49
источник пользователем

голоса
194

Для ОС Windows я использовал Скрипач для работы по этому вопросу.

  1. Установка / Запуск Fiddler от www.fiddler2.com
  2. Run перл:

    $ gem install --http-proxy http://localhost:8888 $gem_name
    
Ответил 15/11/2010 в 18:45
источник пользователем

голоса
117

Это полностью работает:

gem install --http-proxy http://COMPANY.PROXY.ADDRESS $gem_name
Ответил 26/03/2012 в 04:35
источник пользователем

голоса
46

Я использую cntlm ( http://cntlm.sourceforge.net/ ) на работе. Конфигурация очень похожа на ntlmaps.

Прекрасно работает, а также позволяет мне подключить мой ящик Ubuntu к прокси-серверу ISA.

Проверьте http://cntlm.wiki.sourceforge.net/ для получения дополнительной информации

Ответил 31/08/2008 в 22:59
источник пользователем

голоса
36

Я попробовал некоторые из этих решений, и ни один из них не работал. Я наконец-то нашел решение, которое работает для меня:

gem install -p http://proxy_ip:proxy_port rails

используя -pпараметр , чтобы передать полномочие. Я использую Gem версии 1.9.1.

Ответил 02/08/2012 в 00:32
источник пользователем

голоса
14

Это решило мою проблему полностью:

gem install -p http://proxy_ip:proxy_port compass

Вам может понадобиться, чтобы добавить имя пользователя и пароль к нему:

gem install -p http://[username]:[password]@proxy_ip:proxy_port compass
Ответил 09/04/2014 в 09:48
источник пользователем

голоса
13

Создайте файл .gemrc (либо в / и т.д. / gemrc или ~ / .gemrc или, например, с поваром жемчужиной в / Opt / повар / встроенный / и т.д. / gemrc), содержащий:

http_proxy: http://proxy:3128

Тогда вы можете , gem installкак обычно.

Ответил 22/12/2015 в 09:14
источник пользователем

голоса
10

Если у вас возникли проблемы с началом проверки подлинности через прокси-сервер, не забудьте установить переменные среды в точности ниже формате:

set HTTP_PROXY=some.proxy.com
set HTTP_PROXY_USER=user
set HTTP_PROXY_PASS=password

user:password@Синтаксис , кажется, не работает , и есть также некоторые плохо именованные переменные окружения , плавающие вокруг на переполнение стека и различных сообщений на форуме.

Также следует знать, что это может занять некоторое время для ваших драгоценных камней, чтобы начать загрузку. Сначала я думал, что это не работает, но с немного терпения, они начали загрузку, как и ожидалось.

Ответил 21/02/2012 в 18:26
источник пользователем

голоса
8

Я перепробовал все вышеуказанные решения, однако ни один из них не работал. Если вы на Linux / MacOS я настоятельно рекомендую использовать tsocks над SSH туннель. Что вам нужно для того, чтобы получить эту работу установки является машиной, где вы можете войти через SSH, и в дополнение к этому установлена ​​программа называется tsocks.

Идея заключается в том, чтобы создать динамический туннель через SSH (а SOCKS5 прокси). Затем настроить tsocks использовать этот туннель и запустить наши приложения, в данном случае:

tsocks gem install ...

или для учета рельсов 3.0:

tsocks bundle install

Более подробное руководство можно найти по адресу:

http://blog.byscripts.info/2011/04/bypass-a-proxy-with-ssh-tunnel-and-tsocks-under-ubuntu/

Несмотря на то , написанные для Ubuntu процедура должна быть применима для всех машин на базе Unix. Альтернативой tsocks для Windows , является FreeCap ( http://www.freecap.ru/eng/ ). Жизнеспособная SSH - клиент на окнах называется шпатлевка.

Ответил 06/09/2011 в 06:04
источник пользователем

голоса
7

Сообщения изобилуют по этой теме, и помочь другим сэкономить часы пробовать разные решения, вот окончательный результат моих часов мастерить.

Три решения по всему Интернету на данный момент являются: rubysspi apserver cntlm

rubysspi работает только с компьютера Windows, AFAIK, поскольку он опирается на библиотеку WIN32API. Так что, если вы находитесь на поле Windows, пытается запустить через прокси-сервер, это решение для Вас. Если вы находитесь на дистрибутиве Linux, вы не повезло.

apserver кажется мертвым проектом. Ссылка перечисленные в постах я видел привести к 404 страницы на SourceForge. Я ищу «apserver» на SourceForge возвращает ничего.

Ссылка SourceForge для cntlm , что я видел перенаправляет http://cntlm.awk.cz/ , но таймаут. Поиск по SourceForge оказывается эту связь, которая делает работу: http://sourceforge.net/projects/cntlm/

После загрузки и настройки cntlm мне удалось установить драгоценный камень через прокси-сервер, так что это, кажется, является лучшим решением для дистрибутивов Linux.

Ответил 10/03/2009 в 11:33
источник пользователем

голоса
5

Обойти это установить http://apserver.sourceforge.net на локальном компьютере, настроить и запустить камни через этот прокси - сервер.

  • Установка: Просто скачайте apserver 097 (а не экспериментальный 098!) И распаковать.
  • Настройка: Отредактируйте файл server.cfg и поместить значения для MS прокси в PARENT_PROXYи PARENT_PROXY_PORT. Введите значения для домена и пользователя. Оставьте пароль пустым (ничего после двоеточия) - вам будет предложено при запуске его.
  • Запуск apserver: cd aps097; python main.py
  • Запуск Gems: gem install—http-proxy http://localhost:5865/ library
Ответил 07/08/2008 в 06:25
источник пользователем

голоса
4

Я работаю за прокси - сервера и только что установил SASS, загрузив непосредственно из http://rubygems.org .

Затем я побежал sudo gem install [path/to/downloaded/gem/file]. Я не могу сказать , что это будет работать для всех драгоценных камней, но это может помочь некоторым людям.

Ответил 26/11/2012 в 12:23
источник пользователем

голоса
3

Это работает для меня в коробке с Windows:

set HTTP_PROXY=http://server:port
set HTTP_PROXY_USER=username
set HTTP_PROXY_PASS=userparssword
set HTTPS_PROXY=http://server:port
set HTTPS_PROXY_USER=username
set HTTPS_PROXY_PASS=userpassword

У меня есть пакетный файл с этими линиями, которые я использую, чтобы установить значение окружающей среды, когда мне это нужно.

Хитрость, в моем случае, была HTTPS_PROXYмножество. Без них, я всегда получал ошибку аутентификации на прокси - 407.

Ответил 13/01/2015 в 11:35
источник пользователем

голоса
2

Если вы на системе * NIX, используйте:

export http_proxy=http://${proxy.host}:${port}
export https_proxy=http://${proxy.host}:${port}

а затем попробовать:

gem install ${gem_name}
Ответил 25/10/2013 в 18:50
источник пользователем

голоса
2

rubysspi-1.3.1 работает для меня на Windows 7, используя инструкции с этой страницы:

http://www.stuartellis.eu/articles/installing-ruby/

Ответил 04/11/2011 в 08:46
источник пользователем

голоса
1

Если за прокси - сервером, вы можете перейти к загрузке Руби , нажмите Скачать, которая скачивает указанное обновление (или Gem) в нужное место.

Далее, с помощью командной строки Ruby, перейдите к загруженному местоположению с помощью: pushd [directory]

например: pushd D:\Setups

Затем выполните следующую команду: gem install [update name] --local

например: gem install rubygems-update --local.

Проверено на Windows 7 с Ruby, обновление версии 2.4.1.

Для проверки использования следующей команды: ruby -v

Ответил 11/08/2014 в 14:27
источник пользователем

голоса
1

Если вы хотите использовать SOCKS5 прокси, вы можете попробовать RubyGems-socksproxy https://github.com/gussan/rubygems-socksproxy .

Это работает для меня на OSX 10.9.3.

Ответил 06/06/2014 в 17:52
источник пользователем

голоса
1

Вместо того, чтобы редактировать командные файлы (которые вы, возможно, придется сделать для других драгоценных камней Рубин, например Bundler), это, вероятно, лучше, чтобы сделать это один раз, и сделать это правильно.

В Windows, за моей корпоративной прокси, все , что я должен был сделать , это добавить в HTTP_PROXYпеременную окружения в моей системе.

  1. Пуск -> правой кнопкой мыши Компьютер -> Свойства
  2. Выберите «Дополнительные параметры системы»
  3. Нажмите Дополнительно -> Переменные среды
  4. Создать новую переменную системы под названием « HTTP_PROXY» и установите значение для прокси - сервера
  5. Перезагрузка или выйти из системы и обратно снова

В зависимости от ваших требований аутентификации, то HTTP_PROXYзначение может быть столь же просто , как:

http://proxy-server-name

Или более сложный, как и другие отмечают,

http://username:password@proxy-server-name:port-number
Ответил 16/05/2014 в 07:27
источник пользователем

голоса
0
gem install --http-proxy http://host:port/ package_name

gem update --http-proxy http://host:port/ package_name
Ответил 17/06/2019 в 21:50
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more