Introdução
Se estiver utilizando um linux em uma rede com proxy, faz-se necessário configurar o proxy para que o linux 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, o proxy https: 'https_proxy'; http: 'http_proxy';e o proxy ftp: 'ftp_proxy'.Para verificar se estas variáveis estão setadas, pode-se executar os seguintes comandos 'env' ou 'export': #envO Comando 'env', exibe todas as variáveis carregadas da sessão shell; #exportO comando 'export', exibe todas as variáveis exportadas e habilitadas na sessão shell;
Se não aparecer 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: 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:3128exemplo 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:8080Se por ventura a senha(password), contiver '@', será necessário proteger sua apresentação, exemplo: http_proxy=http://username:p\@ssword@proxy.incolume.com.br:8080Para 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; ouexport http_proxy=http://proxy.incolume.com.br:8080; ou
export http_proxy=http://username:password@proxy.incolume.com.br:8080Entretanto 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 no arquivo ~/.bashrc, ou o 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:3128Se 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
export ftp_proxy=http://proxy.incolume.com.br:3128Se 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
Configuração Perene yum
# vim /etc/yum.confE inclua trecho no arquivo:
proxy=http://user:senha@ip-do-servidor:porta
Configuração Perene wget
# vim /etc/wgetrcE inclua as seguintes linhas dentro do arquivo:
http_proxy=http://user:senha@ip-do-servidor:porta
https_proxy=http://user:senha@ip-do-servidor:porta
ftp_proxy=http://user:senha@ip-do-servidor:porta
Configuração Perene User Shell
# vim ~/.profileE inclua as seguintes linhas dentro do arquivo:
export http_proxy=http://user:senha@ip-do-servidor:porta
export https_proxy=http://user:senha@ip-do-servidor:porta
export ftp_proxy=http://user:senha@ip-do-servidor:porta
Configuração Perene System Shell
# vim /etc/profileE inclua as seguintes linhas dentro do arquivo:
export http_proxy=http://user:senha@ip-do-servidor:porta
export https_proxy=http://user:senha@ip-do-servidor:porta
export ftp_proxy=http://user:senha@ip-do-servidor:porta
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 pagina for apresentada está tudo certo e pronto para utilização.exemplos de teste:
- elinks http://perfumes.incolume.com.br; ou
- lynx http://perfumes.incolume.com.br; ou
- wget http://www.perfumes.incolume.com.br/2011/03/lista-completa-dos-perfumes-importados.html
Desvantagens
Se o proxy for autenticado, a senha de autenticação no proxy será gravada em claro nos arquivos '/etc/profile', ~/.bash_profile ou ~/.bashrc; além de ser exibida em texto claro ao executar os comandos 'env' ou 'export';Atualizações
Atualizado em 17/09/2011; 22/09/2011; 22/05/2012;Versão PDF
Referências:
http://pt.wikipedia.org/wiki/Proxyhttp://pt.wikipedia.org/wiki/FQDN
http://rationalpie.wordpress.com/2010/02/20/linux-http_proxy-escape-character/
http://www.vivaolinux.com.br/dica/Proxy-com-autenticacao-na-linha-de-comando
http://www.vivaolinux.com.br/dica/Utilizando-o-Yum-atraves-de-um-servidor-proxy
Comentários