Pular para o conteúdo

Configuração de proxy no Linux (Ubuntu/Debian): métodos de sistema e console

Гайды
Configuração de proxy no Linux (Ubuntu/Debian): métodos de sistema e console

Configurar um proxy no Linux (Ubuntu/Debian) exige definir variáveis de ambiente para o terminal e alterar arquivos de configuração do sistema para manter a conectividade de forma persistente. Você pode escolher entre exports temporários por sessão para tarefas específicas ou alterações permanentes em arquivos como /etc/environment e /etc/apt/apt.conf.d/ para garantir que todo o tráfego passe pelo servidor proxy.

Variáveis de ambiente globais para acesso via console

O método mais comum para redirecionar tráfego em um terminal Linux é por meio de variáveis de ambiente. Essas variáveis informam a utilitários de linha de comando como curl, wget e git qual servidor proxy usar nas requisições de saída. O Linux diferencia tráfego HTTP, HTTPS e FTP, exigindo variáveis específicas para cada protocolo.

Para definir um proxy temporário na sessão atual do terminal, use o comando export. Isso é ideal para tarefas pontuais ou ao testar um novo endpoint residencial da GProxy. Substitua proxy_address e port pelas suas credenciais:

# Temporary session configuration
export http_proxy="http://username:[email protected]:8080"
export https_proxy="http://username:[email protected]:8080"
export ftp_proxy="http://username:[email protected]:8080"
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"

A variável no_proxy é essencial. Ela impede que o sistema tente usar o proxy para tráfego local, o que resultaria em timeouts de conexão ao acessar bancos de dados locais ou servidores de desenvolvimento internos. Sempre inclua 127.0.0.1 e localhost nessa lista.

Para uma configuração permanente que sobrevive a reinicializações para um usuário específico, adicione essas linhas ao arquivo ~/.bashrc ou ~/.profile. Abra o arquivo com um editor de texto como o Nano:

nano ~/.bashrc

Vá até o fim do arquivo e cole os comandos export. Depois de salvar (Ctrl+O, Enter) e sair (Ctrl+X), recarregue a configuração executando source ~/.bashrc. Assim, sempre que você abrir uma nova aba do terminal, suas configurações da GProxy serão aplicadas automaticamente.

Configuração de proxy no Linux (Ubuntu/Debian): métodos de sistema e console

Configuração global via /etc/environment

Embora o .bashrc funcione para usuários individuais, administradores de servidores muitas vezes precisam de uma configuração global que valha para todos os usuários e serviços do sistema. O arquivo /etc/environment é o local padrão para variáveis de ambiente de todo o sistema no Debian e no Ubuntu.

Diferente de arquivos de script, /etc/environment é um arquivo de texto simples com pares KEY=VALUE. Ele não aceita comandos de shell como export. Para configurá-lo, siga estes passos:

  1. Abra o arquivo com privilégios de root: sudo nano /etc/environment
  2. Adicione as strings de proxy exatamente como mostrado abaixo:
http_proxy="http://user:pass@host:port/"
https_proxy="http://user:pass@host:port/"
ftp_proxy="http://user:pass@host:port/"
no_proxy="localhost,127.0.0.1"

Observe que, para que as mudanças em /etc/environment tenham efeito, normalmente é necessário reiniciar o sistema por completo ou fazer logout e login novamente. Esse método é muito eficaz em servidores headless, onde vários cron jobs ou processos em segundo plano precisam de acesso constante à internet pelos nós de alta disponibilidade da GProxy.

Configurando o gerenciador de pacotes APT

O Advanced Package Tool (APT), usado por Ubuntu e Debian, nem sempre respeita as variáveis de ambiente padrão. Se você executar sudo apt update sem configurações de proxy específicas do APT, a conexão pode falhar ou ignorar o proxy por completo. Esse é um obstáculo de segurança comum em ambientes corporativos restritos.

Para resolver, crie um arquivo de configuração dedicado ao APT. É melhor criar um novo arquivo em /etc/apt/apt.conf.d/ do que alterar o arquivo principal apt.conf, pois isso evita a perda da configuração durante atualizações do sistema.

sudo nano /etc/apt/apt.conf.d/95proxies

Insira as linhas a seguir, garantindo que cada uma termine com ponto e vírgula:

Acquire::http::Proxy "http://username:[email protected]:8080";
Acquire::https::Proxy "http://username:[email protected]:8080";

Se a senha do seu proxy contém caracteres especiais (como @, # ou !), você precisa codificá-los em URL. Por exemplo, a senha P@ssword vira P%40ssword. Não codificar esses caracteres faz o APT interpretar a string de conexão de forma errada, gerando erros de autenticação.

Configuração de proxy no Linux (Ubuntu/Debian): métodos de sistema e console

Usando proxy em ferramentas de CLI específicas (Curl, Wget, Git)

Às vezes você quer que apenas alguns aplicativos usem o proxy. Esse "proxy seletivo" é útil para desenvolvedores que precisam testar conteúdo localizado ou coletar dados com a GProxy sem afetar o desempenho do restante do sistema.

1. Configuração do Wget

Altere o arquivo /etc/wgetrc (global) ou ~/.wgetrc (local). Adicione estas linhas para habilitar o suporte a proxy por padrão em todos os comandos wget:

use_proxy = on
http_proxy = http://username:[email protected]:8080
https_proxy = http://username:[email protected]:8080

2. Configuração do Curl

Para o curl, crie ou edite o arquivo ~/.curlrc. Isso é especialmente útil para scripts automatizados que interagem com APIs:

proxy = "http://username:[email protected]:8080"

3. Configuração do Git

Desenvolvedores que trabalham com repositórios remotos podem configurar o Git para usar proxy nas operações de clone, push e pull. Isso é feito pelo comando git config:

git config --global http.proxy http://username:[email protected]:8080
git config --global https.proxy http://username:[email protected]:8080

Para remover essas configurações depois, use a flag --unset: git config --global --unset http.proxy.

Comparação dos métodos de proxy no Linux

A escolha do método certo depende do seu caso de uso. A tabela a seguir compara as quatro abordagens principais discutidas neste guia.

Método Escopo Persistência Melhor caso de uso
Comando export Sessão atual do shell Temporária Testes e tarefas pontuais
~/.bashrc Usuário atual Permanente Ambientes de desenvolvimento pessoais
/etc/environment Todo o sistema Permanente Servidores de produção e sistemas multiusuário
Configuração do APT Apenas o gerenciador de pacotes Permanente Atualizações do sistema em redes restritas

Avançado: usando Proxychains para apps sem suporte a proxy

Alguns aplicativos Linux mais antigos ou scripts próprios não suportam configurações de proxy nativamente. Nesses casos, o proxychains4 é uma ferramenta valiosa. Ele "força" qualquer conexão TCP feita por um aplicativo a passar por um proxy (HTTP, SOCKS4 ou SOCKS5).

Primeiro, instale o pacote:

sudo apt update && sudo apt install proxychains4 -y

Edite o arquivo de configuração em /etc/proxychains4.conf. Vá até o fim e adicione os dados da sua GProxy. Comente a linha padrão socks4 127.0.0.1 9050:

[ProxyList]
# protocol host port username password
http proxy.gproxy.com 8080 username password

Para executar qualquer aplicativo pelo proxy, basta prefixar o comando com proxychains4. Por exemplo: proxychains4 telnet example.com ou proxychains4 python3 scraper.py. Esse método é muito eficaz em cenários de contorno em que as variáveis de ambiente padrão não funcionam.

Verificando sua conexão

Depois de configurar, é fundamental verificar se o tráfego realmente está passando pelo proxy. Use a abordagem baseada em Python a seguir ou um simples comando curl para checar seu endereço IP externo.

import requests

# Test script to verify proxy connectivity
proxies = {
    "http": "http://username:[email protected]:8080",
    "https": "http://username:[email protected]:8080",
}

try:
    response = requests.get("https://api.ipify.org?format=json", proxies=proxies, timeout=10)
    print(f"Current External IP: {response.json()['ip']}")
except Exception as e:
    print(f"Connection failed: {e}")

Se estiver usando o método via console, execute: curl -L https://api.ipify.org. A saída deve corresponder ao endereço IP do seu servidor GProxy, e não ao IP do seu ISP local. Se o IP não mudou, verifique se há erros de digitação nos arquivos de configuração ou se o seu firewall (ufw ou iptables) não está bloqueando a porta do proxy.

Pontos principais

Configurar um proxy no Ubuntu ou Debian é um processo em várias camadas. Enquanto as variáveis de ambiente cobrem a maioria das tarefas no terminal, ferramentas específicas como APT e Git exigem configuração dedicada para um desempenho ideal. Usando a infraestrutura estável da GProxy, você garante coleta de dados em alta velocidade e anonimato em todos os fluxos de trabalho baseados em Linux.

  • Use ~/.bashrc para uso pessoal: é a forma mais segura e flexível de gerenciar proxies no trabalho diário no terminal.
  • Não esqueça do APT: as atualizações do sistema vão falhar em redes restritas se /etc/apt/apt.conf.d/ não estiver configurado corretamente.
  • Codifique as credenciais em URL: se a sua senha da GProxy contém caracteres especiais, sempre codifique-os (por exemplo, # para %23) para evitar erros de sintaxe nos arquivos de configuração.
  • Aproveite o Proxychains: para aplicativos que se recusam a reconhecer variáveis de ambiente, o proxychains4 oferece uma solução confiável de roteamento "forçado".
support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.