Dessa forma fica fácil ver os porquês de se utilizar servidores Proxy em redes locais (LANs).

Documentos relacionados
Administração de Sistemas Operacionais. Prof. Marlon Marcon

Redes de Computadores Serviço PROXY

Servidor Proxy/Cache

Sistemas Operacionais Livres. Servidor Proxy - Squid

Proxy/Cache. Prof: Alberto Felipe Friderichs Barros

Instalação e Configuração Squid ( Não Transparente)

Definição de Proxy. Utilizando o Software Squid

Segurança de Redes. Aula extra - Squid. Filipe Raulino filipe.raulino@ifrn.edu.br

SQUID Linux. Rodrigo Gentini

5/7/2010. Apresentação. Web Proxy. Proxies: Visão Geral. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux

Configurando VPS Proxy e SSH

Prof. Samuel Henrique Bucke Brito

Curso de extensão em Administração de redes com GNU/Linux

SERVIDOR PROXY COM SQUID3 em GNU/Linux Debian7 Por: Prof. Roitier Campos Gonçalves

Redes de Computadores Da Teoria à Prática com Netkit

Servidor proxy - Squid PROFESSOR : RENATO WILLIAM

Curitiba, Novembro Resumo

Lojamundi Tecnologia Sem Limites br

Linux Network Servers

CONSTRUINDO UM FIREWALL NO LINUX CENTOS 5.7

Principais características:

4. Abra o prompt de comando acesse o diretório c:\squid\sbin e digite os comandos abaixo:

Projeto de Ensino. iptables. Grupo de Estudos em Tecnologia de Redes e Processamento Paralelo. Prof. Luiz Antonio Unioeste

Configuração do Servidor Gateway Firewall e DHCP

Tutorial Servidor Proxy com Squid baseado em Linux Acadêmicos : Felipe Zottis e Cleber Pivetta. Servidor Proxy

MANUAL DE INSTALAÇÃO

MANUAL DE INSTALAÇÃO

Laboratório de Redes Prof. Dinailton

Depois que instalamos o Squid vamos renomear o arquivo de configuração para criarmos um do zero.

PRÁTICA DE NAT/PROXY - LINUX 1. TOPOLOGIA DE REDE PARA TODOS OS CENÁRIOS DIFERENÇAS NO ROTEIRO EM RELAÇÃO A IMAGEM DO DVD

Roitier Campos Gonçalves Goiânia, 18 de Novembro de Criando um Servidor Proxy/Firewall com Squid + IPTables!

Instalação e Configuração Iptables ( Firewall)

TUTORIAL DE SQUID Versão 3.1

Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo

Laboratório FTP. Francisco Edigleison da Silva Barbosa Professor: Kelvin Lopes Dias

STD SERVIÇO DE BACKUP EM NUVEM

Disciplina: Fundamentos de serviços IP Alunos: Estevão Elias Barbosa Lopes e Leonardo de Azevedo Barbosa

PAM (Autenticação) Programas, serviços e arquivos de configuração

Laboratório SMTP. Francisco Edigleison da Silva Barbosa Professor: Kelvin Lopes Dias

Responsáveis: Bruno Silva, André Coelho, Wellington Silva, Marcelo Hirano. Atualizado em: 08/09/2017 CONFIGURAÇÃO DE BACKUP DE ORIGEM LINUX

Professor: João Paulo de Brito Gonçalves Campus Cachoeiro Curso Técnico em Informática

CONSTRUINDO UM FIREWALL NO LINUX DEBIAN 6.0

Sarg Proxy transparente

INSTITUTO FEDERAL DO TRIÂNGULO MINEIRO CAMPUS PARACATU TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMA JOÊNIA OLIVEIRA LOPES SERVIDORES

Laboratório de Redes de Computadores INSTALANDO SERVIDOR APACHE NOS CENTOS 6.5

Prática NAT/Proxy. Edgard Jamhour. Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr.

SISTEMA COD CONFIGURAÇÃO DE ACESSO

Projeto e Configuração de Firewalls

Pré-requisitos e passos iniciais. Topologia visual

Aula 10 Proxy cache Squid

INSTALANDO O HYPER-V EM SISTEMAS OPERACIONAIS WINDOWS

2. Instalação do WinThor Anywhere (Linux ambiente terminal/console)... 10

Manual de instalação do Microsoft SQL Server 2008 R2 Express no Windows 10

TECNOLOGIA EM REDES DE COMPUTADORES - 3º PERÍODO ADS - ADMINISTRAÇÃO DE SERVIDORES Grupo: Alexandre - Leonel - Mateus - Ricardo

Procedimentos para Instalação do Sisloc (Estação de Trabalho) versão

Secure Client. Manual do Usuário. IPNv2. Secure Client IPNv2

INSTALAÇÃO PRINTERTUX. Tutorial

2- Com a tela de configuração aberta clique na guia Advanced e logo em seguida no botão Filters localizado à esquerda da página.

Projeto e Configuração de Firewalls. Squid. Requisitos de hardware

Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy

Linux Para Servidores Plano de Aula - 32 Aulas (Aulas de 1 hora).

Procedimentos para Redirecionamento de portas

MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS

Se a tela de instalação não for exibida após um minuto, inicie o CD manualmente:

Instalação Wiser. Sistema Operacional Linux Red Hat

Sinai Sistema Integrado Administrativo de Igreja

4.0 SP2 ( ) maio P Xerox FreeFlow Core Express Guia de Instalação

Meios de Comunicação de Dados.

Sophos UTM 9. Guia: Manual de instalação do Sophos UTM 9

Tutorial de Instalação LINUX EDUCACIONAL versão 4.0 Este tutorial foi elaborado a partir do material de autoria de Rafael Nink.

Guia de instalação do REIS

Aula 08 Gerador de Relatórios Squid - SARG

Servidor WWW Apache IFSC UNIDADE DE SÃO JOSÉ CURSO TÉCNICO SUBSEQUENTE DE TELECOMUNICAÇÕES.! Prof. Tomás Grimm

Administração de Sistemas Operacionais

Instalação e configuração do serviço proxy Squid.

Configuração do GIGAERP Integrado ao GIGA e-doc.

Instalação do IBM SPSS Modeler Entity Analytics

monsta Manual de Instalação

MANUAL DO SECURE CLIENT

Conteúdo ORIONTEC AUTOMAÇÃO COMERCIAL THOTAU ESSENCIAL. Guia Rápido

Administração dos serviços de redes utilizando linux

Assina Web S_Line Manual de Uso

WINDOWS. 1. Baixar o software cwrsync e efetuar a instalação.

Redes de Computadores. Laboratório de Interconexão de Redes e Serviços - 4º Período

Configurar o controlador CEM em CentOS 6.9

Instalação Oracle Database 10g Release 2 em distribuições Red Hat / Fedora, Suse ou Debian

Manual de instalação do Microsoft SQL Server 2008 R2 Express no Windows 10

Procedimentos para Configuração DMZ

BAIXA E INSTALAÇÃO DO CERTIFICADO DIGITAL. A3 em token

Manual de Instalação do pacote SICWEB

Manual de Instalação do TelEduc 4.4

S.O.R. A Interface de comando

Administração de Redes Linux

Nota de Aplicação: Utilização do Servidor Web MS IIS com BlueWave. Sumário

Administração de sistemas Linux. Gerenciamento de serviços

Linha de Sistemas Folhamatic

Configuração do GIGAERP Integrado ao GIGA e-doc.

Transcrição:

Squid Antes de explicar o que é o Squid devemos falar um pouco sobre Proxy, ou seja, o que é um Servidor Proxy. Para responder essa pergunta apresentamos a figura abaixo, na qual temos um rede DMZ, na qual há um servidor Proxy funcionando. Na figura abaixo temos diagrama mostrando 3 computadores acessando um mesmo endereço na internet (http://www.linuxbrasil.org.br/exemplo1.html). O que um servidor Proxy faz é ofertar as páginas estáticas em html e outros formatos estáticos, que no exemplo ao lado é a página exemplo1.html. Note que as consultas feitas pela página exemplo1.html e feita e respondida pelo servidor Proxy, o qual armazena localmente em cache esta página quando um dos 3 computadores da LAN faz a consulta pela mesma, ou seja, digamos por exemplo, que o computador à esquerda tenha feito a consulta inicialmente. Então o servidor Proxy terá que buscar esta página diretamente no site do Projeto Linux Brasil e, em seguida irá armazená-la em cache para que os outros 2 computadores a encontrem no servidor Proxy posteriormente. 1

2

Quando novos computadores forem adicionados a esta LAN, as consultas pela página exemplo1.html serão respondidas diretamente pelo servidor Proxy, não sendo necessária uma nova consulta diretamente no portal do Projeto Linux Brasil para repassar ao novo computador. Dessa forma fica fácil ver os porquês de se utilizar servidores Proxy em redes locais (LANs). 3

O Squid é um dos mais populares servidores Proxy no mundo Linux e um dos melhores programas para missão crítica de controle de conteúdo (controle do acesso à internet). Podendo esconder requisições repetidas (envitar consumo da largura de banda da rede junto ao seu provedor), esconder www e DNS, e outros recursos de rede compartilhados para um grupo de pessoas numa rede local (LAN). Ele pode ser usado tanto em sistemas Linux / Unix e Windows. Além dos atributos acima, o Squid está em desenvolvimento há muito tempo, seu código é aberto, com licença GNU GPL e funciona com muitos protocolos, tais como TLS, SSL e HTTPS, embora seja principalmente usado para HTTP e FTP. Com todas essas atribuições, este software torna-se completo e eficaz para realizar missões críticas em situações reais nas empresas. Tanto é que centenas de provedores de internet o utilizam para oferecer conteúdo aos seus usuários. Instalando o Squid O Squid pode ser encontrado diretamente no site oficial do Projeto: http://www.squid-cache.org/. Abordaremos aqui a instalação no Debian, Fedora / Red Hat. Para instalar o Squid no Debian e semelhantes use o seguinte comando (logado como root e conectado à internet, é claro): # apt-get install squid3 4

Siga as instruções que aparece (escolha S, é claro) para poder instalar. Já a instalação no Fedora é feita assim: # yum install squid Configuração do servidor Proxy Squid Arquivo de configuração Debian /etc/squid3/squid.conf /etc/squid/squid.conf Fedora Usaremos o arquivo squid.conf baseado no Debian, que contém aproximadamente 3000 linhas e pode ser editado retirando os comentários com #, portanto faça uma copia antes. 5

# cp squid.conf squid.conf.original Agora explicaremos as principais diretivas arquivo squid.conf onde você pode editá-lo com qualquer editor de texto kwrite, gedit (ambiente gráfico) e vi, nano e mcedit (modo texto) utilizando o recurso de localizar texto dos editores de texto. No final mostraremos o arquivo já configurado e pronto para ser utilizado. Editando o squid.conf Define a porta do squid http_port 3128 Esse é o diretório de cache do squid onde são armazenadas as páginas da internet, onde 100 é tamanho em MB (Megabytes) do cache, 16 o número de diretórios e 256 o número de subdiretórios de cada diretório. cache_dir ufs /var/spool/squid3 100 16 256 Essa opção indica a quantidade de memória RAM que o squid irá consumir, no caso de um servidor squid exclusivo para cache deve-se utilizar 80% a 90% de toda memória RAM do computador. Por exemplo 512 MB de RAM (80% de 512 MB = cache_mem 410 MB), 128 MB é um bom valor para começar com 512 MB ou 1 GB. cache_mem 8 MB Essa opção define a porcentagem de limite mínimo para substituição de um objeto(páginas e imagens), essa substituição inicia quando o swap em disco estiver acima do limite mínimo definido aqui. 6

cache_swap_low 90 Define o limite máximo, é o contrário de cache_swap_low cache_swap_high 95 Essa opção define o tamanho máximo de um objeto em cache, os objetos maiores do que esse limite, não serão salvos em disco. Um número grande indica economia de banda e perda de performance no cache, um número pequeno menor não economiza largura de banda, mas aumenta a velocidade do cache para o tempo de resposta. É recomendado um valor entre 4 e 16 MB. maximum_object_size 4096 KB Os objetos maiores do que esse tamanho, não serão armazenados em memória maximum_object_size_in_memory 8 KB Máscara de rede da sua rede client_netmask 255.255.255.0 Email do usuário do computador local que administra do squid cache_mgr admin@firewall.linuxbrasil.org.br usuário dono do squid cache_effective_user proxy (No Debian é proxy e no Red Hat / Fedora é squid) grupo dono do squid 7

cache_effective_group proxy (No Debian é proxy e no Red Hat / Fedora é squid) Nome do computador que está instalado o squid e onde será exibidas as mensagens de erro. visible_hostname firewall.linuxbrasil.org.br Diretório de erros do squid error_directory /usr/share/squid3/errors/english Para exibir os erros em português altere para: error_directory /usr/share/squid3/errors/portuguese Arquivos de logs de acesso e objetos do cache do squid access_log /var/log/squid3/access.log cache_log /var/log/squid3/cache.log cache_store_log /var/log/squid3/store.log Iniciando o squid Comandos do squid Debian # /etc/init.d/squid3 start 8

# /sbin/service squid start Fedora Verificando status do squid Com o comando netstat, podemos ver a porta e se o serviço está ativo. # netstat -nap grep ":3128" tcp 0 0 0.0.0.0:3128 0.0.0.0:* OUÇA 3914/(squid) Criando novo cache do squid As vezes o squid pode travar, e para tentar resolver o problema criando novos diretórios de cache, pare o squid e execute o comando: # /etc/init.d/squid3 stop # squid3 -z Reiniciando configurações do squid Caso você tenha feito algumas alteração no arquivo squid.conf, execute o comando com o squid executando: 9

# /etc/init.d/squid3 start # squid3 -k reconfigure Entrando em modo de depuração Para analizar erros você pode entrar em modo debug para fazer a depuração de possíveis erros, para isso execute os comandos abaixo: # squid3 -k debug e # squid3 -X Verificando logs do squid Para ver os erros do serviço do squid execute o comando: # tail -f /var/log/syslog Para ver os acessos do squid execute o comando: # tail -f /var/log/squid3/access.log Proxy transparente É um recurso utilizado pelo squid, onde não precisa configurar o proxy no navegador (onde é recomendado caso a rede tenha muitos computadores) e sim no próprio arquivo de configuração do squid squid.conf, onde os acessos aos sites são feitos pelo squid e 10

especificar controle de acesso. Para o squid operar como proxy transparente, é necessário que esteja no mesmo computador que está configurado como firewall e acessando a internet, onde serão implementadas regras para seu funcionamento. Para versões antigas anterior a versão 2.6 do squid era necessário editar o arquivo squid.conf e adicionar as seguintes linhas : httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_header on Agora em versões acima da 2.6, que nesta configuração estamos usando a versão 3.0.PRE5, execute o comando squid -v, e verifique a versão do seu squid além de exibir as diretivas de compilação na hora da instalação. # squid -v Para habilitar proxy transparente a partir da versão 2.6, basta mudar a linha: http_port 3128 E acrescentar a palavra transparent após a porta do squid http_port 3128 transparent 11

Após alterar o arquivo squid.conf, crie uma regra no seu arquivo de firewall utilizando o comando com iptables abaixo, onde eth1 é interface de rede da rede local. iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 Agora verifique a saída do comando iptables -L -v -t nat e veja o o redirecionamento na interface eth1 através da porta 3128 do squid. # iptables -L -v -t nat Chain PREROUTING (policy ACCEPT 298 packets, 19416 bytes) pkts bytes target prot opt in out source destination 0 0 REDIRECT tcp -- eth1 any anywhere anywhere tcp dpt:www redir ports 3128 Para fazer um teste execute o comando tail -f /var/log/squid3/access.log, e acesse a internet de um computador da rede. # tail -f /var/log/squid3/access.log ACL - (Access Control Lists - Listas de controle de acesso) É uma lista de controle de acesso aos sites permitidos e não permitidos, onde podemos bloquear ou liberar um computador ou uma rede, bloquear ou liberar por sites, palavras, horários e etc. Entendo como o squid lê as ACLs 12

*OBS o squid lê linha por linha de cima para baixo do arquivo squid.conf, portanto as suas ACLs serão interpretadas dessa forma tomando cuidado na ordem das linhas do arquivo. Veja exemplos de ACLs abaixo: acl LIBERADOS src 192.168.1.2 192.168.1.3 acl BLOQUEADOS src 192.168.1.4 192.168.1.5 acl SITES_PERMITIDOS dstdomain.google.com.br.uol.com.br acl SITES_BLOQUEADOS dstdomain.orkut.com.jogos.com http_access allow LIBERADOS SITES_PERMITIDOS http_access deny BLOQUEADOS SITES_BLOQUEADOS Acima foram criadas 2 ACLs de endereços IP: LIBERADOS - com os endereços IP que podem acessar os sites que estão permitidos BLOQUEADOS - com os endereços IP que não podem acessar os sites que estão bloqueados Em seguida foram criadas 2 ACLs de sites: SITES_PERMITIDOS - com os sites que podem ser acessados SITES_BLOQUEADOS - com os sites que não podem ser acessados A linha http_access allow LIBERADOS SITES_PERMITIDOS, diz ao squid para permitir (allow) os endereços IP 192.168.1.2 e 192.168.1.3, acessarem os sites.google.com.br e.uol.com.br (repare um ponto., indicando qualquer nome de host para os domínios do google.com.br e uol.com.br). Em seguida a linha http_access deny BLOQUEADOS SITES_BLOQUEADOS, diz ao squid para negar (deny) os endereços IP 192.168.1.4 e 192.168.1.5, acessarem os sites.orkut.com.jogos.com (repare um ponto., indicando qualquer nome de host para os 13

domínios do orkut.com e jogos.com). A medida que aumentar o número de endereços IP e sites, é necessário criar uma lista em arquivos, como é mostrado mais abaixo nos exemplos de bloqueio de sites e palavras. Você pode adicionar as suas ACLs no arquivo squid.conf, abaixo da linha que está em comentário # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS. Permitindo um ou mais computadores acessar internet acl IP_PERMITIDO src 192.168.1.2 192.168.1.3/32 192.168.1.4/255.255.255.255 http_access allow IP_PERMITIDO Os computadores com endereço IP 192.168.1.2 192.168.1.3 192.168.1.4 estarão liberados para acessar a internet, e o restante bloqueado. *OBS Observe que o endereço IP 192.168.1.3 possui a máscara de rede no formato CIDR /32, pois possui 32 bits e o endereço 192.168.1.4 possui a máscara de rede 255.255.255.255 preenchendo todos os 4 campos do endereço IP. Permitindo uma ou mais redes de computadores acessar internet *OBS é obrigatório a máscara de rede no formato padrão 255.0.0.0, 255.255.0.0, 255.255.255.0 e etc ou formato CIDR /8, /16, /24 e etc. 14

acl REDE_PERMITIDA src 192.168.0.0/255.255.255.0 192.168.1.0/24 http_access allow REDE_PERMITIDA As redes com endereço 192.168.0.0 192.168.1.0 estarão liberadas para acessar a internet, e o restante bloqueado. Restringindo um ou mais computadores acessar internet acl rede 192.168.1.0/24 acl IP_BLOQUEADO src 192.168.1.2 192.168.1.3/32 192.168.1.4/255.255.255.255 http_access deny IP_BLOQUEADO http_access allow rede Os computadores com endereço IP 192.168.1.2, 192.168.1.3 e 192.168.1.4 estarão bloqueados para acessar a internet, e o restante da rede 192.168.1.0/24 estará liberada. Restringindo uma ou mais redes de computadores acessar internet *OBS é obrigatório a máscara de rede no formato padrão 255.0.0.0, 255.255.0.0, 255.255.255.0 e etc ou formato CIDR /8, /16, /24 e etc. acl rede 192.168.0.0/24 acl REDE_BLOQUEADA src 192.168.1.0/255.255.255.0 192.168.2.0/24 http_access deny REDE_BLOQUEADA http_access allow rede 15

As redes com endereço 192.168.1.0/255.255.255.0 192.168.2.0/24 estarão bloqueadas para acessar a internet, e a rede 192.168.0.0/24 liberada. Bloqueando sites acl rede src 192.168.1.0/24 acl SITES_BLOQUEADOS dstdomain /etc/squid3/sites_bloqueados http_access deny SITES_BLOQUEADOS http_access allow rede Este arquivo /etc/squid3/sites_bloqueados deve ser criado manualmente, e nele estarão os sites que serão bloqueados, sendo que cada sites deve estar um em cada linha. # touch /etc/squid3/sites_bloqueados Agora edite o arquivo e inclua os sites que deseja bloquear # nano /etc/squid3/sites_bloqueados Veja um exemplo do arquivo:.google.com.br.orkut.com 16

*OBS Não esqueça de colocar um ponto. no início do domínio Bloqueando palavras acl rede src 192.168.1.0/24 acl PALAVRAS_BLOQUEADAS url_regex -i /etc/squid3/palavras_bloqueadas http_access deny PALAVRAS_BLOQUEADAS http_access allow rede *OBS - A opção -i após a palavra url_regex, serve para tanto palavras maiúsculas e como minúsculas. Este arquivo /etc/squid3/palavras_bloqueadas deve ser criado manualmente, e nele estarão as palavras que serão bloqueadas, sendo que cada palavra deve estar uma em cada linha. # touch /etc/squid3/palavras_bloqueadas Agora edite o arquivo e inclua os sites que deseja bloquear # nano /etc/squid3/palavras_bloqueadas Veja um exemplo do arquivo: 17

jogos SEXO Bloqueando por horário *Obs O bloqueio por horário só funciona quando o squid estiver configurado como proxy transparente, portanto não funcionará com autenticação. Para bloquear por horário é utilizado o formato de dias em inglês após a palavra time da seguinte forma: Domingo Sunday (representado pela letras S) Segunda Monday (representado pela letras M) Terça Tuesday (representado pela letras T) Quarta Wednesday (representado pela letras W) Quinta Thursday (representado pela letras H) Sexta Friday (representado pela letras F) Sábado Saturday (representado pela letras A) acl REDE src 192.168.1.0/24 acl HORARIO_BLOQUEADO time MTWHF 08:00-18:00 http_access allow REDE HORARIO_BLOQUEADO http_access deny REDE Esta ACL irá bloquear a internet de segunda à sexta, das 08:00 às 18:00 para a rede REDE que foi criada acima com o endereço 192.168.1.0/24. Repare que a acl REDE está liberada 18

para acessar internet apenas nestes dias dias é horários, em seguida é bloqueada para outros dias e horários que não estejam especificados na acl HORARIO_BLOQUEADO. Bloqueando por extensão de arquivo acl REDE src 192.168.1.0/24 acl DOWNLOAD_BLOQUEADO url_regex -i /etc/squid3/download_bloqueado http_access deny DOWNLOAD_BLOQUEADO http_access allow rede *OBS - A opção -i após a palavra url_regex, serve para tanto palavras maiúsculas e como minúsculas. Este arquivo /etc/squid3/palavras_bloqueadas deve ser criado manualmente, e nele estarão as palavras que serão bloqueadas, sendo que cada palavra deve estar uma em cada linha. # touch /etc/squid3/download_bloqueado Agora edite o arquivo e inclua os sites que deseja bloquear # nano /etc/squid3/download_bloqueado Veja um exemplo do arquivo, onde bloqueia qualquer arquivo que tenha essas extensões:.*\.exe$ 19

.*\.tar.gz$.*\.avi$.*\.mp3$ Autenticação de usuários através do proxy squid * ATENÇÃO! 1. Autenticação pelo proxy não funciona junto com proxy transparente, sendo assim você terá que escolher entre as dois métodos: autenticação ou proxy transparente. 2. Para autenticação você terá que configurar o proxy em todas os computadores, e como proxy transparente não. 3. O bloqueio por horário não funcionará se a configuração for feita no navegador, sendo assim terá que configurar o squid como proxy transparente. Agora retire o comentário da seguinte linha no arquivo squid.conf, onde /usr/lib/squid3/ncsa_auth é programa de autenticação. auth_param basic program /usr/lib/squid3/ncsa_auth /usr/etc/passwd Altere o caminho para o arquivo de senha para o diretório de configuração do squid /etc/squid3 auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/passwd_squid Caso você mudar a mensagem da tela de autenticação, retire o comentário da linha: auth_param basic realm Squid proxy-caching web server 20

Altere para algo como: auth_param basic realm Squid proxy Autenticacao de usuarios Agora edite o arquivo squid.conf e acrescente as seguintes linhas na seção de ACLs : acl LOGIN proxy_auth REQUIRED http_access allow LOGIN Agora será necessário criar o arquivo de usuários e senhas com o comando htpasswd, que vem junto com o servidor web Apache, portanto se caso você não tenha o Apache instalado, instale-o: No Debian use apt-get e no Fedora yum: Debian # apt-get install apache2 # yum install httpd Fedora 21

Depois de instalado o apache, agora podemos utilizar o comando htpasswd, criar o arquivo de usuários e senhas e restringir o acesso a internet fazendo autenticação por usuário. # htpasswd -c /etc/squid3/passwd_squid aluno1 Agora é só digitar a senha para o usuário aluno1 A opção -c deve ser utilizada apenas na primeira vez que for criar o arquivo, na próxima vez que executar o comando para criar outro usuário, não será necessário. Pronto agora basta configurar os computadores da rede para utilizar o proxy squid. Configuração dos clientes no navegador para acessar a internet pelo squid Quando o squid está configurado com autenticação, e não como proxy transparente, os navegadores do computadores da rede deverão ser configurados para acessar a internet pelo proxy squid. Para configurar o proxy no Mozilla Firefox e semelhantes, clique em: Editar Preferências Avançado Rede Configurações Configuração manual de proxy Agora basta preencher os campos com o endereço IP do proxy, que neste caso é 192.168.1.1 e especificar a porta do squid 3128, como mostra as imagens abaixo. 22

23

24

Limpando o arquivo squid.conf Agora iremos criar o arquivo squid.conf limpo a partir do arquivo original, onde serão retiradas as linhas que estão sem comentários #. # cp squid.conf squid.conf.backup # egrep -v "^# ^$" squid.conf.backup > squid.conf Agora faça o download do arquivo de squid.conf no formatato.tar.gz e depois descompate-o. Download do arquivo conf Após ter feito alguma alteração no arquivo squid.conf, execute o comando: # squid3 -k reconfigure ou reinicie o squid Debian 25

# /etc/init.d/squid3 restart Fedora # /sbin/service squid restart Limpando o cache do squid Quando existe muitos computadores na rede, a quantidade de acessos aumentará o tamanho do cache do squid também. Portanto você terá que apagar os arquivos de acesso e de cache do diretório /var/spool/squid3/. Siga os passos a seguir para apagar os arquivos e em seguida é mostrado um script para fazer essa tarefa, baseado no Debian (podendo ser adaptado para qualquer distribuição Linux) que pode ser incluído como uma tarefa agendada em uma crontab. Remova os objetos(páginas de internet) de cache do squid # rm -rf /var/spool/squid3/* Remova os arquivos de log do squid # rm -rf /var/log/squid3/access.log # rm -rf /var/log/squid3/cache.log # rm -rf /var/log/squid3/store.log 26

Crie os arquivos em branco de log do squid # touch /var/log/squid3/access.log # touch /var/log/squid3/cache.log # touch /var/log/squid3/store.log Verifique as permissões e proprietário na sua distribuição Linux com o comando ls -l e altere o dono e o grupo # chown proxy.proxy /var/log/squid3/access.log # chown root.root /var/log/squid3/cache.log # chown proxy.proxy /var/log/squid3/store.log # chmod 640 /var/log/squid3/access.log # chmod 644 /var/log/squid3/cache.log # chmod 640 /var/log/squid3/store.log Crie um novo diretório de cache do squid # /etc/init.d/squid3 stop # /usr/sbin/squid3 -z Agora inicie o squid # /etc/init.d/squid3 start 27

Abaixo segue o script, onde você pode mudar sua permissão para executar, copiar e fazer suas alterações para sua distribuição Linux. Download do script #!/bin/sh # limpa_cache_squid.sh ################################################################ # script para limpar o cache do squid desenvolvido pelo Prof. Fernando Projeto Linux Brasil ################################################################ echo limpando cache squid!!! # removendo os objetos(páginas de internet) de cache do squid # tome cuidado, repare um asterístico *, indicando que irá remover apenas o conteúdo do dire rm -rf /var/spool/squid3/* # removendo os arquivos de log do squid rm -rf /var/log/squid3/access.log rm -rf /var/log/squid3/cache.log rm -rf /var/log/squid3/store.log # criando os arquivos em branco de log do squid touch /var/log/squid3/access.log touch /var/log/squid3/cache.log 28

touch /var/log/squid3/store.log # verifique as permissões e proprietário na sua distribuição Linux com o comando ls -l e altere chown proxy.proxy /var/log/squid3/access.log chown root.root /var/log/squid3/cache.log chown proxy.proxy /var/log/squid3/store.log chmod 640 /var/log/squid3/access.log chmod 644 /var/log/squid3/cache.log chmod 640 /var/log/squid3/store.log # Criando um novo diretório de cache do squid /etc/init.d/squid3 stop /usr/sbin/squid3 -z echo iniciando squid!!! /etc/init.d/squid3 start 29