os sites diretamente pelo IP. De qualquer forma, voce pode criar diretamente regras que bloqueiem determinados enderecos IP, o que e util em casos de servidores sem dominio registrado, ou que respondam por varios dominios. Nesse caso, a regra ficaria: acl ips-bloqueados dst 200.234.21.23 200.212.15.45http_access deny ips-bloqueados Voce pode descobrir rapidamente o endereco IP de um determinado dominio usando o comando "host", como em: $ host google.com google.com A 72.14.207.99google.com A 64.233.187.99google.com A 64.233.167.99 Depois de adicionar as novas regras, nosso arquivo de configuracao ficaria assim: http_port 3128visible_hostname gdherror_directory /usr/share/squid/errors/Portuguese/ cache_mem 64 MBmaximum_object_size_in_memory 64 KBmaximum_object_size 512 MBminimum_object_size 0 KBcache_swap_low 90cache_swap_high 95cache_dir ufs /var/spool/squid 2048 16 256cache_access_log /var/log/squid/access.logrefresh_pattern ^ftp: 15 20% 2280refresh_pattern ^gopher: 15 0% 2280refresh_pattern . 15 20% 2280 acl all src 0.0.0.0/0.0.0.0acl manager proto cache_objectacl localhost src 127.0.0.1/255.255.255.255acl SSL_ports port 443 563acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 1025-65535acl purge method PURGEacl CONNECT method CONNECT http_access allow manager localhosthttp_access deny managerhttp_access allow purge localhosthttp_access deny purgehttp_access deny !Safe_portshttp_access deny CONNECT !SSL_ports acl bloqueados url_regex -i "/etc/squid/bloqueados"http_access deny bloqueados acl redelocal src 192.168.1.0/24http_access allow localhosthttp_access allow redelocalhttp_access deny all Veja que coloquei as duas regras antes do "http_access allow redelocal", que abre tudo para a rede local. Como o Squid processa as regras sequencialmente, as paginas que forem bloqueadas pela acl "bloqueados" nao chegam a passar pela regra que autoriza os acessos provenientes da rede local. Uma segunda possibilidade e usar o parametro "dstdom_regex", que permite bloquear sites de uma forma mais geral, com base em palavras incluidas na URL de acesso. Voce pode bloquear todas as paginas cujo endereco inclua a palavra "sexo" ou "orkut", por exemplo. Note que, ao usar esta regra, o Squid verifica a existencia das palavras apenas na URL do site e nao no conteudo da pagina. Para criar filtros baseados no conteudo, voce pode utilizar o DansGuardian, que veremos mais adiante. Crie mais um arquivo de texto, contendo as palavras que devem ser bloqueadas, uma por linha, como em: orkutxxxsexoteenswarez ... e adicione a regra abaixo, contendo a localizacao do arquivo: acl palavrasproibidas dstdom_regex "/etc/squid/palavrasproibidas"http_access deny palavrasproibidas O uso desta regra e um pouco mais problematico, pois bloqueara todas paginas que contenham qualquer uma das palavras listadas na URL. Esta opcao sempre levara a alguns falsos positivos e por isso deve ser usada com mais cuidado. Uma vantagem e que ela permite bloquear facilmente paginas dinamicas, onde a palavra e passada como parametro da URL. Um exemplo e o Orkut, onde, depois da transferencia para o Google, os dominios principais passaram a encaminhar para URLs dinamicas dentro do dominio do Google, como em: https://www.google.com/accounts/ServiceLogin?service=orkut&continue=http%3A%2F%2Fwww.orkut.com%2FRedirLogin.aspx%3Fmsg%3D0%26page%3Dhttp%253A%252F%252Fwww.orkut.com%252FHome.aspx&hl=pt-BR&rm=false&passive=true Voce nao poderia simplesmente bloquear o dominio "google.com" usando uma regra url_regex, mas poderia muito bem usar o dstdom_regex para bloquear a palavra "orkut" e assim bloquear o acesso ao site sem bloquear o acesso a outros servicos do Google. Nao existe problema em combinar o bloqueio de dominios e de palavras dentro da URL, voce pode lancar mao de uma combinacao das duas coisas, de acordo com a situacao. Para isso, basta usar as