이와 같이 "Http-proxy"를 통해 "apt-get"을 사용하는 방법은 무엇입니까?


20

apt-get프록시를 사용하는 네트워크에서 다음과 같은 명령 을 사용하려고합니다 .

우리는 포트 80에서 10.114.7.7을 Http-proxy로 사용하고 그 후에 사용자 이름과 암호를 묻는 인증 창이 나타납니다.

사용자 이름 / 도메인은 다음과 같습니다 : username@urmia.ac.ir

http_proxy=http://User:Pass@Proxyserver:Port이 상황에서 어떻게 사용할 수 있는지 궁금 합니다!? 또한 프록시 서버로 10.114.7.7과 urmia.ac.ir을 모두 시도했지만 결과는 없습니다!

답변:


35

프록시를 통해 apt-get을 사용하려면 프록시 /etc/apt/apt.conf.d/라고 하는 파일 이나 인식 할 파일을 만들거나 존재하지 않는 경우 /etc/apt/apt.conf다음 줄을 삽입하십시오.

Acquire::http::Proxy "http://username:password@proxy.server:port/";

사용자 이름과 비밀번호를 로그인 세부 정보로 바꾸고 proxy.server : port를 올바른 주소 (귀하의 경우 10.114.7.7:80)로 바꾸면 다음과 같은 결과가 나타납니다.

Acquire::http::Proxy "http://username:password@10.114.7.7:80";

@사용자 이름에 기호 를 사용해야하는 경우 백 슬래시 ( username@urmia.ac.ir) 로 이스케이프해야합니다.

백래시를 사용하여 문자를 이스케이프 처리 할 수없는 경우 (예 : \@in exportwget) URL 인코딩으로 특수 문자를 이스케이프 할 수 있습니다. 예를 들어 username:my@pass@server.com:port됩니다 username:my%40pass@server.com:port. 자세한 내용은이 URL 인코딩 문자 목록 을 참조하십시오.


/ etc / apt 내부에 프록시 항목을 추가하기위한 제안 된 솔루션은 저에게 효과적이지만 프록시 서버가 자격 증명을 캐시하는 경우 다른 프로세스에서 프록시 서버를 통해 단순히 인증하여 구성 파일에 자격 증명을 포함시키는 것을 피할 수 있습니다 ( bash 쉘에서 apt 명령을 실행하기 전에 Windows의 웹 브라우저). 이를 통해 / etc / apt 내의 프록시 항목 을 " username : password @ server : port " 대신 " server : port " 로 지정할 수있었습니다 .
Peter Sanza

6

또는 다음을 배치 할 수 있습니다 /etc/apt/apt.conf

Acquire::http::Proxy "http://proxy.server.port:8080";

8080은 포트 번호이며 표준이라고 생각합니다.

따옴표 나 세미콜론을 잊지 마십시오.


4

문제를 해결해야합니다.

export http_proxy=http://username:password@10.114.7.7:80/

EXPORT HTTP_proxy=http://username:password@10.114.7.7:80/Bash 결과에서 실행하십시오 EXPORT: command not found.
David Foerster

소문자로 내보내기와 http 모두. 대쉬는 대소 문자를 구분합니다. 그렇지 않으면 작동해야합니다. 적어도 그것은 2 년 동안 저를 위해 일해 왔습니다.
s3lph

6
curl에는 적합하지만 apt에는 적합하지 않습니다.
FGM
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.