Você está na página 1de 3

Configurando proxy no shell [Artigo]

Page 1 of 3

Introdução

Se estiver utilizando um Linux em uma rede com proxy, faz-se necessário configurar o proxy para que o sistema possa baixar as atualizações, e alguns serviços funcionem, como dropbox, wget, svn, elinks, skype, scp, entre muitos.

O que é proxy

O servidor proxy surgiu com a necessidade de conectar uma rede local (Local Area Network), que

possui endereços não roteáveis (10.0.0.0 até 10.255.255.255; 172.16.0.0 até 172.31.255.255; e 192.168.0.0 até 192.168.255.255) à Internet através de um computador da rede que compartilha a sua conexão com a WAN (World Area Network). Ou seja, considerando que a rede local é uma rede "interna" e a Internet é uma rede "externa", podemos dizer que o proxy é aquele que permite que outras máquinas da rede interna, tenham acesso a rede externa.

Geralmente as máquinas da rede interna não possuem endereços válidos na Internet e, portanto, não podem ser roteadas em uma conexão direta com a Internet. Assim, toda a solicitação de conexão de uma máquina da rede local para uma máquina da Internet é direcionada ao proxy; este, por sua vez, realiza a requisição com a web, encaminhando a solicitação para a máquina da rede local. Por este motivo, é utilizado o termo proxy para este tipo de serviço, que é geralmente traduzido como 'intermediário'. Assim, o mais comum é termos um proxy com conexão direta com a Internet, ou entre redes distintas como DMZ/ZDM (Zona Desmilitarizada).

Como identificar a configuração do serviço de proxy

O proxy em qualquer distribuição Linux é configurado através de variáveis de sistema:

proxy https: https_proxy http: http_proxy proxy ftp: ftp_proxy

Para verificar se estas variáveis estão setadas, pode-se executar os seguintes comandos:

$ env

ou

$ export

Onde:

O comando env exibe todas as variáveis carregadas da sessão shell; O comando export exibe todas as variáveis exportadas e habilitadas na sessão shell.

Se não aparecerem as variáveis, quer dizer que não há proxy configurado.

Configuração

Para definir o proxy é simples, basta configurar as variáveis com os valores desta forma:

Configurando proxy no shell [Artigo]

Page 2 of 3

protocolo_proxy=protocolo://FQDN:porta

Ou se for autenticado:

protocolo_proxy=protocolo://username:password@FQDN:porta

Exemplo com proxy sem autenticação:

$ https_proxy=http://proxy.incolume.com.br:3128

$ http_proxy=http://proxy.incolume.com.br:3128

$ ftp_proxy=http://proxy.incolume.com.br:3128

Exemplo com proxy autenticado:

$ https_proxy=http://username:password@proxy.incolume.com.br:8080

$ http_proxy=http://username:password@proxy.incolume.com.br:8080

$ ftp_proxy=http://username:password@proxy.incolume.com.br:8080

Se por ventura a senha(password) contiver '@', será necessário proteger sua apresentação,

exemplo:

$ http_proxy=http://username:p\@ssword@proxy.incolume.com.br:8080

Para que a configuração de proxy esteja em vigor em todas subsessões, execute com o comando export desta forma:

$ export http_proxy=http://username:p\@ssword@proxy.incolume.com.br:8080

ou

$ export http_proxy=http://proxy.incolume.com.br:8080

ou

$ export http_proxy=http://username:password@proxy.incolume.com.br:8080

Entretanto tudo que foi apresentado até agora é volátil, ou seja, desaparece após o logout.

Para tornar esta configuração permanente, há duas formas:

A primeira por usuário, usando o usuário logado como exemplo, acrescente a configuração ao

arquivo ~/.bashrc, ou ao arquivo ~/.bash_profile.

export https_proxy=http://proxy.incolume.com.br:3128 export http_proxy=http://proxy.incolume.com.br:3128 export ftp_proxy=http://proxy.incolume.com.br:3128

Se o proxy for autenticado, acrescente:

export https_proxy=http://username:password@proxy.incolume.com.br:3128 export http_proxy=http://username:password@proxy.incolume.com.br:3128 export ftp_proxy=http://username:password@proxy.incolume.com.br:3128

A segunda é no sistema, acrescente a configuração no arquivo /etc/profile.

export https_proxy=http://proxy.incolume.com.br:3128 export http_proxy=http://proxy.incolume.com.br:3128

Configurando proxy no shell [Artigo]

Page 3 of 3

export ftp_proxy=http://proxy.incolume.com.br:3128

Se o proxy for autenticado, acrescente:

export https_proxy=http://username:password@proxy.incolume.com.br:3128 export http_proxy=http://username:password@proxy.incolume.com.br:3128 export ftp_proxy=http://username:password@proxy.incolume.com.br:3128

Desfecho

Para testar a conexão com o proxy no shell, basta acessar uma pagina web ou iniciar um download com alguma ferramenta get. Se a página for apresentada está tudo certo e pronto para utilização.

Exemplos de teste:

$ elinks http://perfumes.incolume.com.br

$ lynx http://perfumes.incolume.com.br

$ wget http://www.perfumes.incolume.com.br/2011/03/lista-completa-dos-perfumes- importados.html

Se a página não for carregada, será necessário verificar a conectividade (ifconfig), rotas (route), firewall (iptables -L) e suas permissões de acesso no proxy (com administrador do proxy).

As atualizações deste artigo e o formato PDF pode ser encontrado em:

Brito: Configurando Proxy no shell

Referências

Proxy - Wikipédia, a enciclopédia livre FQDN - Wikipédia, a enciclopédia livre Linux http_proxy: escape @ character « Rational Pie Proxy com autenticação na linha de comando [Dica]