Utilizando APT-GET, WGET e GIT com Proxy no Ubuntu 10.10

Ano novo, ambiente de trabalho novo, problemas novos e o melhor: novas soluções! Sobre esse assunto, vou falar em 2 posts de 2 problemas que tive.

Esse primeiro é sobre o uso do APT-GET, do WGET e do GIT em conexões que fazem o acesso a rede via Proxy (no meu caso, no Ubuntu 10.10).

APT-GET e WGET com Proxy:

Procurei sobre o uso dos dois gerenciadores de pacotes e encontrei diversas soluções via google, a maioria alterava de maneiras diversas algum arquivo de configuração no diretório “etc”. Mas após algumas soluções que não resolveram (ou claramente não resolveriam e eu nem tentei!), encontrei nesse artigo do Guia do Hardware a resolução da questão. O artigo é grande e eu resumo aqui (parte copiado, parte com minhas palavras) a sessão que aborda esse assunto:

– Configurar o APT para usar proxy:

PASSO 1: Crie o arquivo “/etc/apt/apt.conf.d/98proxy”

PASSO 2: Adicione nesse arquivo uma seção “Acquire”, especificando o login e a senha de acesso (se houver autenticação, senão, basta omitir o usuário e a senha), o endereço do servidor e a porta, como no exemplo:

Acquire{
HTTP::proxy “http://usuario:senha@192.168.1.254:3128”;
FTP::proxy “http://usuario:senha@192.168.1.254:3128”;
}

A linha “FTP” é necessária apenas se o arquivo sources.list incluir algum endereço de repositório acessado via FTP, o que é suportado pelo apt, porém raramente usado.

PASSO 3: Salve e feche o arquivo.

PASSO 4: Use o “apt-get update” para que seja checada a configuração (processo feito a cada vez que o APT é iniciado). Não é necessário reiniciar nenhum serviço.

– Configurar o WGET para usar proxy:

PASSO 1: abra o arquivo “/etc/wgetrc”

PASSO 2: adicione a configuração no final do arquivo, seguindo este modelo (se não o proxy precisar de autenticação basta omitir usuário e senha!):

http_proxy = http://usuario:senha@192.168.1.254:3128
ftp_proxy = http://usuario:senha@192.168.1.254:3128
use_proxy = on

PASSO 3: salve e feche o arquivo. Na próxima vez que usar o wget, já estará considerando essas configurações.

– Configurar o GIT para usar proxy:

Também achei várias soluções e fiz tentativas inúteis nesse caso… No final das contas, o artigo que resolveu o meu problema foi esse, encontrado na lista de blogs do Gnome.

O que faço abaixo é uma tradução, com complementos e adaptada livremente do artigo.

OBS: Você precisa ter instalado o netcat (o OpenBSD é um: netcat-openbsd) para poder usar o comando nc com a opção-x.

Em caso de não existir o diretório, crie-o:

$ mkdir ~/bin 

É necessário um wrapper para o proxy:

$ cat <<EOF>> ~/bin/proxy-wrapper
#!/bin/sh
# Coloque seus próprios valores nos campos abaixo:
PROXY_IP=10.0.0.80
PROXY_PORT=22000

nc -x${PROXY_IP}:${PROXY_PORT} -X5 $*

EOF
$ chmod +x ~/bin/proxy-wrapper

Então você tem que ter certeza de ter setado o diretório ~/ bin no seu PATH e em seguida, adicionar a variável env GIT_PROXY_COMMAND. Essa variável será usada pelo git para fazer pushes através do protocolo git ou ssh:

$ cat <<EOF>> ~/.bashrc
export PATH=~/bin:"${PATH}"
export GIT_PROXY_COMMAND=~/bin/proxy-wrapper
EOF

Agora já será possível utilizar o git normalmente, com o proxy!

PS: Para conexões que exigem autenticação, a sintaxe do comando nc é a seguinte:

$ nc -Pusuario -xendereco:porta -X5

Anúncios

About Mari

Eu mexma, a campistoca. Ver todos os artigos de Mari

3 responses to “Utilizando APT-GET, WGET e GIT com Proxy no Ubuntu 10.10

  • tarsis azevedo

    Muito massa o post! xD

    Só uma dica: ao inves do wget, voce pode usar o axel, ele tem tudo do wget, com uma pequena vantagem, voce pode abrir N conexoes para download 😀 logo fica muito mais rapido!!!

    Abraços

  • Danilo

    Parabéns pelo artigo!

    Eu consegui fazer o proxy funcionar no Ubuntu server 10.10 criando o arquivo apt.conf e inserindo as linhas:

    Acquire::http::proxy “http://usuario:senha@lugar.que.está.o.proxy.com.br:8080/”;
    Acquire::ftp::proxy “ftp://usuario:senha@lugar.que.está.o.proxy.com.br:8080/”;
    Acquire::https::proxy “https://usuario:senha@lugar.que.está.o.proxy.com.br:8080/”;

    Valeu!!!

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

%d bloggers like this: