O firewall que estou atrás está executando o Microsoft ISA Server no modo somente NTLM. Alguém hash tem sucesso em obter suas gemas Ruby para instalar / atualizar via gem SSPI Ruby ou outro método?
... ou estou apenas sendo preguiçoso?
Nota: rubysspi-1.2.4 não funciona.
Isso também funciona para "igem", parte do projeto IronRuby
alias gem='ruby -rspa `which gem`'
sudo
tem acesso a suas variáveis de ambiente, adicionando o-E
interruptor, por exemplo,sudo -E doSomething
Respostas:
Não consegui fazer o meu funcionar na opção de linha de comando, mas consegui fazê-lo apenas definindo minha
HTTP_PROXY
variável de ambiente. (Observe que o caso parece ser importante). Eu tenho um arquivo em lotes que possui uma linha como esta:Defino as quatro variáveis referenciadas antes de chegar a essa linha obviamente. Como exemplo, se meu nome de usuário for "wolfbyte", minha senha for "secreta" e meu proxy for chamado "pigsy" e operar na porta 8080:
Você pode ter cuidado ao gerenciar isso, porque ele armazena sua senha em texto sem formatação na sessão da máquina, mas acho que não deve ser um problema demais.
fonte
@
por%40
etcPara o sistema operacional Windows, usei o Fiddler para solucionar o problema.
Executar gema:
fonte
gem install --http-proxy http://COMPANY.PROXY.ADDRESS $gem_name
é tudo o que era necessário para mim.sudo gem install jekyll --http-proxy=http://web-proxy.company.com:8080
Isso funcionou totalmente:
fonte
SSL_connect SYSCALL returned=5 errno=0 state=unknown state (https://rubygems.global.ssl.fastly.net/quick/Marshal.4.8/jekyll-3.0.0.gemspec.rz)
. Isso funcionou para mim comgem install --http-proxy http://127.0.0.1:8580 jekyll
alias geminstall='gem install --http-proxy ${http_proxy}'
para facilitar minha vida.Eu tenho usado cntlm ( http://cntlm.sourceforge.net/ ) no trabalho. A configuração é muito semelhante ao ntlmaps.
Funciona muito bem e também me permite conectar minha caixa Ubuntu ao proxy ISA.
Confira http://cntlm.wiki.sourceforge.net/ para obter mais informações
fonte
Tentei algumas dessas soluções, e nenhuma delas funcionou. Finalmente encontrei uma solução que funciona para mim:
usando o
-p
parâmetro para passar o proxy. Estou usando o Gem versão 1.9.1.fonte
proxy_ip
que é usado parahttps
conexões, a fim de trabalhar! Great: D (versão gem 2.0.14)Crie um arquivo .gemrc (em / etc / gemrc ou ~ / .gemrc ou, por exemplo, com chef gem em / opt / chef / incorporado / etc / gemrc) contendo:
Então você pode,
gem install
como de costume.fonte
--http-proxy
mas não com um.gemrc
arquivo, ele pode vir dasudo
configuração. Eu tive que verificar o/etc/sudoers
arquivo para adicionar:Defaults env_keep = "http_proxy ftp_proxy"
antes:Defaults env_reset
Isso resolveu meu problema perfeitamente:
Pode ser necessário adicionar seu nome de usuário e senha a ele:
fonte
Se você estiver tendo problemas para se autenticar através do seu proxy, certifique-se de definir as variáveis de ambiente exatamente no formato abaixo:
A
user:password@
sintaxe parece não funcionar e também existem algumas variáveis de ambiente com nomes incorretos flutuando no Stack Overflow e em várias postagens no fórum.Também esteja ciente de que pode demorar um pouco para que suas gemas comecem a baixar. No começo, pensei que não estava funcionando, mas com um pouco de paciência eles começaram a baixar conforme o esperado.
fonte
Eu tentei todas as soluções acima, mas nenhuma delas funcionou. Se você estiver no linux / macOS, sugiro o uso de tsocks em um túnel ssh. O que você precisa para que essa configuração funcione é uma máquina na qual você possa efetuar login via ssh e, além disso, um programa chamado tsocks instalado.
A idéia aqui é criar um túnel dinâmico via SSH (um proxy socks5). Em seguida, configuramos os tsocks para usar esse túnel e iniciar nossos aplicativos, neste caso:
ou para contabilizar o Rails 3.0:
Um guia mais detalhado pode ser encontrado em:
http://blog.byscripts.info/2011/04/bypass-a-proxy-with-ssh-tunnel-and-tsocks-under-ubuntu/
Apesar de ter sido escrito para o Ubuntu, o procedimento deve ser aplicável a todas as máquinas baseadas em Unix. Uma alternativa aos tsocks para Windows é o FreeCap ( http://www.freecap.ru/eng/ ). Um cliente SSH viável no Windows é chamado de massa de vidraceiro.
fonte
Há muitas publicações sobre esse tópico e, para ajudar outras pessoas a economizar horas tentando soluções diferentes, aqui está o resultado final das minhas horas de mexer.
As três soluções atualmente disponíveis na Internet são: rubysspi apserver cntlm
O rubysspi funciona apenas em uma máquina Windows, AFAIK, pois depende da biblioteca Win32Api. Portanto, se você estiver em uma caixa do Windows tentando executar um proxy, esta é a solução para você. Se você está em uma distribuição Linux, está sem sorte.
apserver parece ser um projeto morto. O link listado nas postagens que eu vi levou à página 404 no sourceforge. Eu procuro por "apserver" no sourceforge não retorna nada.
O link sourceforge para o cntlm que eu vi redireciona para http://cntlm.awk.cz/ , mas esse tempo excede o tempo limite. Uma pesquisa no sourceforge exibe esse link, que funciona: http://sourceforge.net/projects/cntlm/
Depois de baixar e configurar o cntlm, consegui instalar uma jóia por meio do proxy, portanto essa parece ser a melhor solução para as distribuições do Linux.
fonte
Resposta rápida: adicione configuração de proxy com parâmetro para instalação / atualização
fonte
Uma solução alternativa é instalar http://web.archive.org/web/20060913093359/http://apserver.sourceforge.net:80/ na sua máquina local, configurá-la e executar gems através desse proxy.
PARENT_PROXY
ePARENT_PROXY_PORT
. Digite os valores para DOMAIN e USER. Deixe PASSWORD em branco (nada após os dois pontos) - você será solicitado ao iniciá-lo.cd aps097; python main.py
gem install—http-proxy http://localhost:5865/ library
fonte
Estou trabalhando com um proxy e apenas instalei o SASS baixando diretamente do http://rubygems.org .
Eu então corri
sudo gem install [path/to/downloaded/gem/file]
. Não posso dizer que isso funcione para todas as gemas, mas pode ajudar algumas pessoas.fonte
Isso funcionou para mim em uma caixa do Windows:
Eu tenho um arquivo em lotes com essas linhas que eu uso para definir valores de ambiente quando necessário.
O truque, no meu caso, foram os
HTTPS_PROXY
sets. Sem eles, eu sempre obtinha um erro de autenticação de proxy 407.fonte
Se você estiver em um sistema * nix, use o seguinte:
e tente:
fonte
O rubysspi-1.3.1 funcionou para mim no Windows 7, usando as instruções desta página:
http://www.stuartellis.eu/articles/installing-ruby/
fonte
Se você quiser usar o proxy SOCKS5, tente o rubygems-socksproxy https://github.com/gussan/rubygems-socksproxy .
Funciona para mim no OSX 10.9.3.
fonte
Se estiver atrás de um proxy, você poderá navegar para downloads do Ruby , clique em Download, que fará o download da atualização especificada (ou Gem) para o local desejado.
Em seguida, via linha de comando Ruby, navegue até o local baixado usando:
pushd [directory]
por exemplo :
pushd D:\Setups
em seguida, execute o seguinte comando:
gem install [update name] --local
por exemplo:
gem install rubygems-update --local
.Testado no Windows 7 com Ruby atualização versão 2.4.1.
Para verificar, use o seguinte comando:
ruby -v
fonte
Em vez de editar arquivos em lote (o que você pode fazer em outras gemas Ruby, por exemplo, Bundler), provavelmente é melhor fazer isso uma vez e fazê-lo corretamente.
No Windows, por trás do meu proxy corporativo, tudo que eu precisava fazer era adicionar a
HTTP_PROXY
variável de ambiente ao meu sistema.HTTP_PROXY
" e defina o valor como seu servidor proxyDependendo dos seus requisitos de autenticação, o
HTTP_PROXY
valor pode ser tão simples quanto:Ou mais complexo como outros já apontaram
fonte
para qualquer pessoa que faça tunelamento com SSH; você pode criar uma versão do
gem
comando que usa o proxy SOCKS:socksify
comgem install socksify
(você precisará poder executar esta etapa sem proxy, pelo menos)Copie seu gem existente
Abra-o no seu editor favorito e adicione-o no topo (após o shebang)
Configure seu túnel
Execute seu comando gem com proxy_gem
fonte