Anda di halaman 1dari 4

Squid Instalao e Configurao

Neste post irei descrever a instalao e configurao do Squid, um popular (se no o mais) servidor proxy utilizado principalmente por empresas para controlar o uso de internet entre os funcionrios, mas que tambm pode ser aplicado em residncias para um melhor controle sobre o contedo acessado por crianas, adolescentes, etc Podemos ter nele diversas funes, desde bloquear e/ou liberar sites, saber o que est sendo acessado e diversas coisas mais, por conta desse motivo, ao ser utilizado em empresas necessrio que os funcionrios estejam cientes de seu uso, por questo da privacidade do indivduo. A pgina oficial do projeto voc encontra aqui, mas h tambm a pgina brasileira e um timo link que eu recomendo muito mais detalhado e explicativo que este aqui que escrevo o Squid-ninja escrito por Eri Ramos Bastos. Abaixo segue um passo-a-passo da instalao e de uma configurao especfica para um caso, em tal instalao foi utilizado um servidor Slackware e optado por fazer a instalao a partir do cdigo fonte, mas que caso eu seja claro o bastante, fcil de ser entendido e adaptado. Caso apaream dvidas, coloquem-nas nos comentrios. 1. Entrar em /usr/local/src 2. Baixar o squid com o comando: $wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE8.tar.gz 3. Copiar para a pasta anterior com: $cp squid-3.0STABLE8.tar.gz .. 4. Descompactar: $tar -zxvf squid-3.0STABLE8.tar.gz 5. Renomear a pasta squid-3.0STABLE8.tar.gz para squid: $mv squid-3.0STABLE8 squid 6. Entrar na pasta squid: $cd squid 7. Sequencia de instalao: $./configure $make #make install 8. entrar em: $cd /usr/local/squid/sbin $squid -z (retorna erro):

alex@darkstar:/usr/local/squid/sbin$ sudo squid -z WARNING: Cannot write log file: /usr/local/squid/var/logs/cache.log /usr/local/squid/var/logs/cache.log: Permission denied messages will be sent to stderr. 2008/08/02 14:04:00| Creating Swap Directories FATAL: Failed to make swap directory /usr/local/squid/var/cache: (13) Permission denied Squid Cache (Version 3.0.STABLE8): Terminated abnormally. CPU Usage: 0.012 seconds = 0.008 user + 0.004 sys Maximum Resident Size: 0 KB Page faults with physical i/o: 0 alex@darkstar:/usr/local/squid/sbin$

9. Para corrigir: $mkdir /usr/local/squid/var/cache $mkdir /usr/local/squid/var/logs #chown -R alex.users /usr/local/squid/var/* 10. Novamente: $cd /usr/local/squid/sbin $squid -z alex@darkstar:/usr/local/squid/sbin$ squid -z 2008/08/02 14:10:13| Creating Swap Directories 2008/08/02 14:10:13| /usr/local/squid/var/cache exists 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/00 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/01 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/02 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/03 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/04 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/05 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/06 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/07 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/08 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/09 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0A 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0B 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0C 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0D 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0E 2008/08/02 14:10:13| Making directories in /usr/local/squid/var/cache/0F alex@darkstar:/usr/local/squid/sbin$ 11. Para rodar o squid: $./squ id 12. Para confirmar que est rodando: $ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND alex 22463 0.0 0.2 6064 1424 ? Ss 14:12 0:00 ./squid alex 22465 0.1 1.2 9436 6456 ? S 14:12 0:00 (squid) alex 22466 0.0 0.1 2800 828 ? Ss 14:12 0:00 (unlinkd) 13. Para testar necessrio configurar o navegador de internet (Firefox/Opera/Safari/IE, etc) para usar proxy para o ip local na porta 3128 14. Para que o squid pea autenticao de usurio ]$cd /usr/local/squid/etc #vim squid.conf Descomentar as linhas auth_param basic program /usr/local/squid/libexec/ncsa_auth /usr/local/squid/etc/passwd auth_param basic children 5 #carece de fontes para confirmar que essa linha para funcionamento no IE) auth_param basic credentialsttl 2 hours 15. Criar a acl logo abaixo das ltimas acls padro

acl AUTENTICACAO proxy_auth REQUIRED 16. Abaixo de http:_access deny all: http_access allow AUTENTICACAO http_access deny DENY ALL 17. Criar arquivo de senhas: $cd /usr/local/squid/etc $vim passwd #htpasswd passwd "usurio" #sem as aspas - o nome do usurio 18. Para confirmar a criao da senha: $cat passwd alex@darkstar:/usr/local/squid/etc$ cat passwd aluno:NvicYiiCW1zxw alex@darkstar:/usr/local/squid/etc$ 19. Entrar na pasta /usr/local/squid/helpers/basic_auth/NCSA$ e compilar com: (para criar arquivo de autorizao) $ma ke 20. Copiar o arquivo gerado (ncsa_auth*) para /usr/local/squid/libexec #cp ncsa_auth /usr/local/squid/libexec 21. Renovar configurao do squid: $/usr/local/squid/sbin/./squid -k reconfigure 22. Testar no navegador 23. Editar o arquivo squid.conf criando a seguinte acl para liberar de segunda a sexta (iniciais dos dias da semana em ingls e com horrio): acl HORARIO time MTWHF 08:00-18:00 24. E incluir a seguinte linha acima de http_access allow AUTENTICACAO: http_access deny !HORARIO 25. Ler o arquivo de configurao novamente: $/usr/local/squid/sbin/./squid -k reconfigure 26. Criando regras diferentes para diferentes usurios. 26.a. Criar senhas para usurios com o comando: #htpasswd passwd "diretor" (onde diretor o nome do usurio) 26.b. Editar o arquivo squid.conf comentando as linhas: #acl AUTENTICACAO proxy_auth REQUIRED #http_access allow AUTENTICACAO 26.c. Criar as acls acl DIRETORIA proxy_auth -i "/usr/local/squid/etc/diretoria" acl USUARIOS proxy_auth -i "/usr/local/squid/etc/usuarios" acl HORARIO time MTWHF 13:30-17:30 (liberada de segunda a sexta somente nesse horrio) 26.d. Alterar os http_access http_access allow DIRETORIA # libera o uso de internet para os usurios do grupo "diretoria" http_access allow USUARIOS HORARIO # libera acesso de internet para os usurios seguindo a acl HORRIO http_access deny ALL

26.e. Criar arquivos /usr/local/squid/etc/diretoria e /usr/local/squid/etc/usuarios fazendo referncia aos usurios de cada grupo 26.f. Reprocessar as regras: $/usr/local/squid/sbin/./squid -k reconfigure 27. Para criar acls para liberar/bloquear sites especficos: acl BLOQUEADOS url_regex -i "/usr/local/squid/etc/bloqueados" acl LIBERADOS usr_gerex -i "/usr/local/squid/etc/liberados" 28. Alterar os http_access especficos para: http_access allow USUARIOS http_access allow USUARIOS HORARIO BLOQUEADOS LIBERADOS Pronto, o bsico do bsico isso. Fico disponvel para trocar idias e tirar dvidas (ainda estou aprendendo tambm, mas para um bom aprendizado altamente recomendada a troca de experincias)

Anda mungkin juga menyukai