Linux Debian - Proxy (Squid) Tutorial
Índice:
- Instalando o Squid no Debian
- Configurando o Squid
- Autenticação Squid
- Configurando firewall
- Configurando o navegador para usar proxy
- Raposa de fogo
- Google Chrome
- Conclusão
O Squid é um proxy de cache completo que suporta protocolos de rede populares como HTTP, HTTPS, FTP e muito mais. Ele pode ser usado para melhorar o desempenho do servidor da Web, armazenando em cache solicitações repetidas, filtrando o tráfego da Web e acessando conteúdo com restrição geográfica.
Neste tutorial, explicaremos como configurar um Squid Proxy no Debian Buster. Também mostraremos como configurar os navegadores Firefox e Google Chrome para usá-lo.
Instalando o Squid no Debian
O pacote Squid está incluído no padrão nos repositórios Debian 10. Execute os seguintes comandos como usuário sudo para instalar o Squid:
sudo apt update
sudo apt install squid
Quando a instalação estiver concluída, o serviço Squid será iniciado automaticamente.
Verifique se a instalação foi bem-sucedida e o serviço Squid está sendo executado, verificando o status do serviço Squid:
sudo systemctl status squid
● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Sat 2019-08-03 08:52:47 PDT; 3s ago…
Configurando o Squid
O Squid pode ser configurado editando o arquivo de configuração
/etc/squid/squid.conf
. Arquivos de configuração separados podem ser incluídos usando a diretiva "incluir".
O arquivo de configuração
squid.conf
inclui comentários que descrevem o que cada opção de configuração faz.
Antes de fazer alterações, é sempre uma boa idéia fazer backup do arquivo original:
sudo cp /etc/squid/squid.conf{,.orginal}
Para modificar a configuração, abra o arquivo no seu editor de texto:
sudo nano /etc/squid/squid.conf
Por padrão, o Squid escuta na porta
3128
em todas as interfaces de rede.
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
Rodar o Squid em todas as interfaces e na porta padrão deve ser bom para a maioria dos usuários.
As Listas de controle de acesso (ACLs) permitem controlar como os clientes podem acessar recursos da Web. Por padrão, o Squid permite acesso apenas a partir do host local.
Se todos os clientes que usarão o proxy tiverem um endereço IP estático, a opção mais simples é criar uma ACL que inclua os IPs permitidos.
Em vez de adicionar os endereços IP no arquivo de configuração principal, criaremos um novo arquivo de inclusão que armazenará os endereços IP:
/etc/squid/allowed_ips.txt
192.168.33.1 # All other allowed IPs
Depois de aberto, abra o arquivo de configuração principal e crie uma nova ACL denominada
allowed_ips
(primeira linha destacada) e permita o acesso a essa ACL usando a diretiva
http_access
(segunda linha destacada):
#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
A ordem das regras
http_access
é importante. Certifique-se de adicionar a linha antes que o
http_access deny all
.
A diretiva
http_access
funciona de maneira semelhante às regras do firewall. O Squid lê as regras de cima para baixo e, quando uma regra corresponde às regras abaixo, não são processadas.
Sempre que você faz alterações no arquivo de configuração, é necessário reiniciar o serviço Squid para que as alterações entrem em vigor:
Autenticação Squid
O Squid pode usar diferentes back-ends, incluindo autenticação básica Samba, LDAP e HTTP para usuários autenticados.
Neste exemplo, configuraremos o Squid para usar autenticação básica. É um método simples de autenticação embutido no protocolo
Usaremos o utilitário
openssl
para gerar as senhas e anexar o
username:password
par de
username:password
ao arquivo
/etc/squid/htpasswd
com o comando
tee
como mostrado abaixo:
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
Vamos criar um usuário chamado "buster" com a senha "
Sz$Zdg69
":
printf "buster:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd
buster:RrvgO7NxY86VM
A próxima etapa é habilitar a autenticação básica HTTP. Abra a configuração principal e adicione o seguinte:
/etc/squid/squid.conf
#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all
As três primeiras linhas destacadas estão criando uma nova ACL denominada
authenticated
e a última linha destacada está permitindo o acesso a usuários autenticados.
Reinicie o serviço Squid:
Configurando firewall
Os usuários do UFW podem abrir a porta
3128
ativando o perfil 'Squid':
sudo ufw allow 'Squid'
sudo nft add rule inet filter input tcp dport 3128 ct state new, established counter accept
Se o Squid estiver sendo executado em outra porta não padrão, você precisará permitir o tráfego nessa porta.
Configurando o navegador para usar proxy
Nesta seção, mostramos bem como configurar seu navegador para usar o proxy Squid.
Raposa de fogo
As etapas abaixo são as mesmas para Windows, macOS e Linux.
-
No canto superior direito, clique no ícone de hambúrguer
☰
para abrir o menu do Firefox:Clique no link
⚙ Preferences
.Role para baixo até a seção
Network Settings
e clique no botãoSettings…
Uma nova janela se abrirá.
- Selecione o botão de opção
Manual proxy configuration
Digite o endereço IP do servidor Squid no campoHTTP Host
e3128
no campoPort
Marque a caixa de seleçãoUse this proxy server for all protocols
Clique no botãoOK
para salvar as configurações.
- Selecione o botão de opção
Neste ponto, seu Firefox está configurado e você pode navegar na Internet através do proxy Squid. Para verificar, abra
google.com
, digite "what is my ip" e você verá o endereço IP do servidor Squid.
Para voltar às configurações padrão, vá para
Network Settings
, selecione o botão de opção
Use system proxy settings
e salve as configurações.
Existem também vários plugins que podem ajudá-lo a definir as configurações de proxy do Firefox, como o FoxyProxy.
Google Chrome
O Google Chrome usa as configurações padrão de proxy do sistema. Em vez de alterar as configurações de proxy do sistema operacional, você pode usar um complemento como o SwitchyOmega ou iniciar o navegador Chrome na linha de comando.
Para iniciar o Chrome usando um novo perfil e conectar-se ao servidor Squid, use o seguinte comando:
Linux:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
Mac OS:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
Janelas:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
O perfil será criado automaticamente se ele não existir. Dessa forma, você pode executar várias instâncias do Chrome ao mesmo tempo.
Para confirmar se o servidor proxy está funcionando corretamente, abra
google.com
e digite "what is my ip". O IP mostrado no seu navegador deve ser o endereço IP do seu servidor.
Conclusão
Nós cobrimos o básico de como instalar o Squid no Debian 10 e configurar o seu navegador para usá-lo.
O Squid é um dos servidores de cache proxy mais populares. Ele melhora a velocidade do servidor da Web e pode ajudá-lo a ter acesso restrito do usuário à Internet.
proxy debianUse o aplicativo Configurar os PCs da escola para configurar PCs com Windows em Escolas Baixe o aplicativo Configurar computadores da escola na Windows Store e use-o para configurar rapidamente seus computadores Windows 10 para melhores opções de aprendizado para os alunos
Os computadores agora se tornaram parte integrante da educação nas escolas, e quase todas as boas escolas têm os sistemas de computador definidos para seus alunos. O único problema com a educação em informática na escola ocorre quando os alunos se distraem com vários aplicativos e recursos dos PCs.
Como instalar e configurar o squid proxy no centos 7
O Squid é um proxy de cache completo que suporta protocolos de rede populares como HTTP, HTTPS, FTP e muito mais. Este tutorial explica como configurar o Squid no CentOS 7
Como instalar e configurar o squid proxy no ubuntu 18.04
O Squid é um proxy de cache completo que suporta protocolos de rede populares como HTTP, HTTPS, FTP e muito mais. Este tutorial o guiará pelo processo de configuração de um Squid Proxy no Ubuntu 18.04.