Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: slackware 13.1
Por tatuiano
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Configurando proxy no shell
Linux user
rbn_jesus
25/09/2011
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.
Por: Ricardo Brito do Nascimento | Blog: http://brito.blog.incolume.com.br
[ Hits: 6044 ]
Conceito: 10.0   1 voto(s)1 voto(s)1 voto(s)1 voto(s)1 voto(s) + quero dar nota ao artigo

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:

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
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

Próxima página >>




Páginas do artigo
   1. Introdução
   2. Desfecho

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por FernandoBasso em 25/09/2011 - 09:39h:

Eu uso o Arch Linux, e coloco a config do proxy em uma função no ~/.bashrc e em /root/.bashrc. Funciona para wget, curl, pacman, etc, mas, por exemplo, no firefox, se eu escolho "use system proxy settings" não funciona. O firefox parece não usar o proxy, e tenho que setar o proxy no próprio firefox.

O proxy 'integrado gnome 3' não adianta nada. Tanto faz configurar ou não. O mesmo acontece com o networkmanager, e o wicd nem supporte a proxy tem.

O chromium que é "Open Source" me diz isso quando tento configurar o proxy nele em meu sistem open source:

"When running Chromium under a *supported* desktop environment, the system proxy settings will be used. However, either _your system is not supported_ or there was a problem launching your system configuration."



[2] Comentário enviado por edps em 25/09/2011 - 11:17h:

@FernandoBasso,

sobre o proxy no Chromium veja essa minha dica:

http://www.vivaolinux.com.br/dica/Proxy-no-Chrome-Chromium-em-outros-WMs

* mas o engraçado é que atualmente e sem adicionar tal opção ao lançador meu Chromium no Debian usa as configurações de proxy do sistema.

[3] Comentário enviado por FernandoBasso em 25/09/2011 - 12:05h:

Então deve ser algo do arch mesmo. Quanto a opção chromium --proxy-server eu já tinha lido, mas acho estranho o chromium, sendo open-source - e por tal motivo fortemente atrelado ao linux em geral - não usar as variáveis de ambiente.



[4] Comentário enviado por edps em 25/09/2011 - 12:09h:

Esqueci de dizer que uso o OpenBox e Squid3, tanto no Debian, Arch ou Gentoo, antes de postar o comentário anterior rodei um 'tail -f' no log do squid para confirmar.

essa dica do colega já favoritei até porque no Arch Linux não configurei nem wget e pacman para rodar sob o Proxy.

[]'s

[5] Comentário enviado por FernandoBasso em 25/09/2011 - 13:19h:

Eu também uso o openbox, mas carrego o gnome-settings-daemon com ele. Já tentei rodar o gnome desktop completinho, só pra ver se funcionava o proxy, mas não funcionou.

Não sei se o iptables poderia estar bloquando alguma coisa, algum pacote que vem do proxy e ele não está deixando passar, sei lá. A princípio meu iptables bloqueia tudo, exceto acesso de hosts da lan.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.