문제

제가 뒤에 있는 방화벽은 Microsoft ISA 서버를 NTLM 전용 모드로 실행하고 있습니다.Ruby SSPI gem이나 다른 방법을 통해 Ruby gem을 설치/업데이트하는 데 성공한 사람이 있나요?

...아니면 내가 게으른 걸까?

메모:rubysspi-1.2.4가 작동하지 않습니다.

이는 IronRuby 프로젝트의 일부인 "igem"에서도 작동합니다.

도움이 되었습니까?

해결책

명령줄 스위치로는 작업을 수행할 수 없었지만 설정만으로 작업을 수행할 수 있었습니다. HTTP_PROXY 환경 변수.(케이스가 중요한 것 같습니다.)다음과 같은 줄이 포함된 배치 파일이 있습니다.

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

분명히 이 줄에 도달하기 전에 4개의 참조 변수를 설정했습니다.예를 들어 내 사용자 이름이 "wolfbyte"이고 비밀번호가 "secret"이고 내 프록시가 "pigsy"이고 포트 8080에서 작동하는 경우:

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

암호는 컴퓨터 세션에 일반 텍스트로 저장되므로 관리 방법에 주의해야 할 수도 있지만 크게 문제가 될 것은 아니라고 생각합니다.

다른 팁

Windows OS의 경우 Fiddler를 사용하여 문제를 해결했습니다.

  1. www.fiddler2.com에서 Fiddler 설치/실행
  2. 보석을 실행하세요:

    $ gem install --http-proxy http://localhost:8888 $gem_name
    

이것은 완전히 작동했습니다.

gem install --http-proxy http://COMPANY.PROXY.ADDRESS $gem_name

저는 cntlm(http://cntlm.sourceforge.net/) 직장에서.구성은 ntlmaps와 매우 유사합니다.

훌륭하게 작동하며 Ubuntu 상자를 ISA 프록시에 연결할 수도 있습니다.

확인해 보세요 http://cntlm.wiki.sourceforge.net/ 자세한 내용은

나는 이러한 솔루션 중 일부를 시도했지만 그 중 아무것도 작동하지 않았습니다.마침내 나에게 맞는 솔루션을 찾았습니다.

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

사용하여 -p 프록시를 전달하는 매개변수입니다.저는 Gem 버전 1.9.1을 사용하고 있습니다.

이것은 내 문제를 완벽하게 해결했습니다.

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

여기에 사용자 이름과 비밀번호를 추가해야 할 수도 있습니다.

gem install -p http://[username]:[password]@proxy_ip:proxy_port compass

다음을 포함하는 .gemrc 파일(/etc/gemrc 또는 ~/.gemrc 또는 예를 들어 /opt/chef/embedded/etc/gemrc의 Chef Gem을 사용하여)을 생성합니다.

http_proxy: http://proxy:3128

그러면 당신은 할 수 있습니다 gem install 평소처럼.

프록시를 통해 인증받는 데 문제가 있는 경우 환경 변수를 정확히 아래 형식으로 설정해야 합니다.

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

그만큼 user:password@ 구문이 작동하지 않는 것 같고 스택 오버플로 및 다양한 포럼 게시물에 이름이 잘못된 환경 변수가 떠다니기도 합니다.

또한 보석 다운로드를 시작하는 데 시간이 걸릴 수 있다는 점에 유의하세요.처음에는 작동하지 않는 줄 알았으나 인내심을 갖고 예상한 대로 다운로드가 시작되었습니다.

위의 모든 해결 방법을 시도했지만 그 중 아무 것도 작동하지 않았습니다.Linux/macOS를 사용한다면 SSH 터널을 통해 tsocks를 사용하는 것이 좋습니다.이 설정이 작동하도록 하려면 ssh를 통해 로그인할 수 있는 시스템과 tsocks라는 프로그램이 설치되어 있어야 합니다.

여기서 아이디어는 SSH(Sock5 프록시)를 통해 동적 터널을 생성하는 것입니다.그런 다음 이 터널을 사용하고 애플리케이션을 시작하도록 tsocks를 구성합니다. 이 경우:

tsocks gem install ...

또는 Rails 3.0을 설명하려면 다음을 수행하십시오.

tsocks bundle install

더 자세한 가이드는 다음에서 확인할 수 있습니다.

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

Ubuntu용으로 작성되었음에도 불구하고 이 절차는 모든 Unix 기반 시스템에 적용 가능합니다.Windows용 tsocks의 대안은 FreeCap(http://www.freecap.ru/eng/).Windows에서 실행 가능한 SSH 클라이언트를 putty라고 합니다.

이 주제에 관한 게시물이 많으며 다른 사람들이 다른 솔루션을 시도하는 데 드는 시간을 절약할 수 있도록 몇 시간 동안 고민한 최종 결과는 다음과 같습니다.

현재 인터넷 주변의 세 가지 솔루션은 다음과 같습니다.Rubysspi apserver cntlm

rubysspi는 Win32Api 라이브러리를 사용하므로 Windows 시스템인 AFAIK에서만 작동합니다.따라서 Windows 상자에서 프록시를 통해 실행을 시도하는 경우 이것이 솔루션입니다.Linux 배포판을 사용하고 있다면 운이 좋지 않습니다.

apserver는 죽은 프로젝트인 것 같습니다.내가 본 게시물에 나열된 링크는 sourceforge의 404 페이지로 연결됩니다.sourceforge에서 "apserver"를 검색하면 아무것도 반환되지 않습니다.

내가 본 cntlm에 대한 sourceforge 링크는 다음으로 리디렉션됩니다. http://cntlm.awk.cz/, 하지만 시간이 초과되었습니다.sourceforge에서 검색하면 작동하는 다음 링크가 나타납니다. http://sourceforge.net/projects/cntlm/

cntlm을 다운로드하고 구성한 후 프록시를 통해 gem을 설치했는데 이것이 Linux 배포판에 가장 적합한 솔루션인 것 같습니다.

해결 방법은 설치하는 것입니다. http://apserver.sourceforge.net 로컬 머신에서 이를 구성하고 이 프록시를 통해 gem을 실행하세요.

  • 설치하다:실험용 098이 아닌 apserver 097을 다운로드하고 압축을 풀면 됩니다.
  • 구성:server.cfg 파일을 편집하고 MS 프록시 값을 다음 위치에 입력하세요. PARENT_PROXY 그리고 PARENT_PROXY_PORT.DOMAIN 및 USER에 대한 값을 입력합니다.PASSWORD를 비워두세요(콜론 뒤에 아무것도 없음). 실행 시 메시지가 표시됩니다.
  • apserver를 실행합니다: cd aps097; python main.py
  • 보석 실행: gem install—http-proxy http://localhost:5865/ library

저는 프록시 뒤에서 작업 중이며 다음에서 직접 다운로드하여 SASS를 설치했습니다. http://rubygems.org.

나는 그 다음 달렸다 sudo gem install [path/to/downloaded/gem/file].이것이 모든 보석에 적용된다고 말할 수는 없지만 일부 사람들에게는 도움이 될 수 있습니다.

이것은 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 프록시 인증 오류가 발생합니다.

*nix 시스템을 사용하는 경우 다음을 사용하세요.

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

그런 다음 다음을 시도하십시오.

gem install ${gem_name}

rubysspi-1.3.1은 이 페이지의 지침을 사용하여 Windows 7에서 저에게 효과적이었습니다.

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

SOCKS5 프록시를 사용하려면 rubygems-socksproxy를 사용해 보세요. https://github.com/gussan/rubygems-socksproxy.

OSX 10.9.3에서 작동합니다.

프록시 뒤에 있는 경우 다음으로 이동할 수 있습니다. 루비 다운로드, 에서 다운로드를 클릭하면 지정된 업데이트(또는 Gem)를 원하는 위치에 다운로드합니다.

다음으로 Ruby 명령줄을 통해 다음을 사용하여 다운로드한 위치로 이동합니다. pushd [directory]

예: pushd D:\Setups

그런 다음 다음 명령을 실행하십시오. gem install [update name] --local

예: gem install rubygems-update --local.

Ruby 업데이트 버전 2.4.1이 설치된 Windows 7에서 테스트되었습니다.

다음 명령 사용을 확인하려면 다음을 수행하십시오. ruby -v

배치 파일을 편집하는 대신(다른 Ruby gem에 대해 수행해야 할 수도 있습니다.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
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top