Configure o proxy para o APT?

56

Eu preciso configurar o proxy. Não foi o arquivo apt.conf em etc/apt/ , então criei-o usando nano .

Mas não entendo o que preciso escrever lá. eu escrevi http_proxy = http://lgn:[email protected]:8080/ lá e, em seguida, reiniciado networking . Mas quando tento apt-get update - não funciona.

Na verdade eu não entendo qual porta e ip devo escrever no arquivo apt.conf (houve exemplo com 192.168.1.254 ip e 8080 port então decidi usá-los).

    
por lapots 17.02.2013 / 13:24

6 respostas

87

Para usar um proxy, você precisa de um servidor proxy. O IP e a porta devem ser deste servidor proxy. Login e pwd devem ser seu usuário e senha no servidor proxy (se o proxy exigir login).

De site help.ubuntu.com :

% bl0ck_qu0te%

Se o seu proxy precisar de um login / senha, substitua:

"http://yourproxyaddress:proxyport";

com:

"http://username:[email protected]:proxyport";

usando nome de usuário e senha do servidor proxy.

    
por laurent 17.02.2013 / 14:08
18

Algo como o seguinte deve funcionar:

Acquire::http::proxy "http://lgn:[email protected]:8080/";
Acquire::https::proxy "http://lgn:[email protected]:8080/";
    
por Dennis Kaarsemaker 17.02.2013 / 13:31
12

Esta é uma resposta mais geral junto com o apt config.

Como há muitos lugares para definir configurações de proxy, pode ser confuso no começo. Deixe-me resumir algumas coisas e sugerir algumas boas práticas.

Para programas de console

Ex: wget, git e quase todos os aplicativos de console que se conectam à internet.

Se você quiser configurar o proxy toda vez que executar seus comandos por algum motivo, defina as variáveis de ambiente usando os seguintes comandos.

export http_proxy=http://DOMAIN\USERNAME:[email protected]:PORT/
export ftp_proxy=http://DOMAIN\USERNAME:[email protected]:PORT/

Caso você queira usar as mesmas configurações todas as vezes para todos os usuários, use-as.

Configure no bashrc

$ nano /etc/bash.bashrc
export http_proxy=http://DOMAIN\USERNAME:[email protected]:PORT/
export ftp_proxy=http://DOMAIN\USERNAME:[email protected]:PORT/

Configure em /etc/environment

$ nano /etc/environment
https_proxy="http://myproxy.server.com:8080/" 
ftp_proxy="http://myproxy.server.com:8080/" ...

Configure usando a GUI

Abra as configurações de rede e defina o seu proxy de rede para todo o sistema.

Rede - > Proxy de rede - > Configurar - > Aplique em todo o sistema.

Mas isso pode não ser útil se você tiver autenticação para o proxy.

Para o apt.

Você precisa fazer algum trabalho extra para o apt, já que, por acaso, o apt não obedece a variáveis de ambiente,

$ nano /etc/apt/apt.conf
Acquire::http::Proxy "http://USERNAME:[email protected]:PORT";
Acquire::https::Proxy "https://USERNAME:[email protected]:PORT";

Para tudo fora desse escopo, deve haver uma opção para definir as configurações de proxy no próprio aplicativo. Se não me desculpe;)

    
por matrixisreal 30.05.2017 / 05:50
2

O que você pode fazer é também tentar executar o comando com sudo -E , o que levará as configurações do ambiente. Parece funcionar para mim quando tento atualizar, adicionar o apt-repository e instalar. Exemplo:

sudo -E add-apt-repository ppa:xxxxx

De acordo com @David Foerster, isso só funciona para interação manual usando shell, mas não funciona em tarefas automatizadas e serviços que invocam o Apt sem interação com o usuário.

    
por Frank Qiu 20.06.2017 / 18:32
1

Se você precisa usar o apt por trás de um proxy, provavelmente tudo o mais também precisa da configuração do proxy. Eu gosto de gerenciar minhas configurações de proxy em um só lugar, que seria a variável de ambiente.

Para isso, eu crio um /etc/profiles.d/99-proxy.sh , que contém as configurações de proxy necessárias (como descrito acima):

export http_proxy=http://DOMAIN\USERNAME:[email protected]:PORT/
export https_proxy=$http_proxy
export ftps_proxy=$http_proxy

Dessa forma, todos os usuários dessa máquina têm acesso ao proxy. (não se esqueça de chmod a+x )

Quando você usa apt ou apt-get como usuário, esse usuário pode usar o sudo. Como Frank Qiu descreveu, o sudo não passa variáveis de ambiente. Para isso você pode adicionar

Defaults env_keep += "http_proxy https_proxy ftp_proxy"

para (por exemplo,)

/etc/sudoers.d/00-environment 

ou diretamente no

/etc/sudoers
arquivo

. Dessa forma, você só precisa gerenciar as configurações de proxy em um só lugar.

    
por muluman88 20.09.2018 / 11:14
0

A pergunta original pode estar na direção errada. Eu acredito que você quer configurar um servidor proxy no Linux?

Bem, isso é completamente diferente de querer usar um proxy existente no ambiente Linux.

Se a sua pergunta for a primeira, use os serviços de terceiros para configurar um servidor proxy no Linux. Um exemplo poderia ser o squid.

Comandos simples para instalar o squid:

$ sudo apt-get install squid3

Em seguida, edite a configuração para permitir a Rede Local (nesse caso, sua própria máquina).     $ sudo vi /etc/squid3/squid.conf

Adicione / edite as seguintes linhas:

http_access allow local_net
acl local_net src 192.168.1.0/255.255.255.0

Assumindo que seu IP para a máquina Linux está no bloco 192.168.1 / 24.

    
por Neo 02.06.2016 / 05:51

Tags