squid (squid.conf)
proxy transparente
Categoria: Segurança
Software: squid
[ Hits: 14.651 ]
Por: Isaacson Cavalcante
Este é um arquivo de configuração do squid e tive um pouco de dificuldade para chegar onde eu queria, para as nessesidade do nosso provedor, e tivemos um bom desenpenho, o aquivo estar detalhado é so verifica, grato, se alguem fizer mudança para ficar melho, me passe um e-mail com as melhorias.
#Editado por Isaacson G. Cavalcante 06/03/2005, #tirado de um tutorial de morimoto. #A porta onde o servidor vai ficar disponível http_port 3128 #O nome do servidor visible_hostname vectra.bemonline.com.br #A configuração da quantidade de memória RAM #dedicada ao cache é feita #adicionando a opção "cache_mem", que contém a #quantidade de memória que será dedicada ao cache. #Para reservar 32 MB, por exemplo, a linha ficaria: cache_mem 24 MB #Abaixo vai mais uma linha, que determina o tamanho #máximo dos arquivos que serão guardados no cache #feito na memória RAM. O resto vai para o cache feito no HD. #O cache na memória é muito mais rápido, mas como a #quantidade de RAM é muito limitada melhor deixa-la disponível #para páginas web, figuras e arquivos pequenos em geral. #Para que o cache na memória armazene arquivos de até 64 KB #por exemplo, adicione a linha: maximum_object_size_in_memory 32 KB #Em seguida vem a configuração do cache em disco, #que armazenará o grosso dos arquivos. #Por default, o máximo são downloads de 16 MB e o mínimo é zero, #o que faz com que mesmo imagens e arquivos pequenos #sejam armazenados no cache. #Sempre é mais rápido ler a partir do cache do que baixar de novo #da web, mesmo que o arquivo seja pequeno. #Se você faz download de arquivos grandes e deseja que eles #fiquem armazenados no cache aumente o valor da opção #maximum_object_size Isto é especialmente útil para quem precisa #baixar muitos arquivos através do apt-get ou Windows update em #muitos micros da rede. #Se você quiser que o cache armazene arquivos de até 1000 MB #por exemplo, as linhas ficariam: maximum_object_size 1000 MB minimum_object_size 0 KB #Você pode definir ainda a percentagem de uso do cache que fará #o squid começar a descartar os arquivos mais antigos. #Por padrão isso começa a acontecer quando o cache está 90% #cheio: cache_swap_low 90 cache_swap_high 95 #Depois vem a configuração do tamanho do cache em disco #propriamente dita, #que é composta #por quatro valores. O primeiro, (/var/spool/squid) indica a #pasta onde o squid armazena #os arquivos do cache. Você pode querer alterar para uma pasta #em uma partição separada por exemplo. #O "11000" indica a quantidade de espaço no HD (em MB) que será #usada para o cache. #Aumente o valor se você tem muito espaço no HD do servidor e #quer que o squid guarde os downloads por muito tempo. #Finalmente, os números 16 256 indicam a quantidade de subpastas #que serão criadas dentro do diretório. #Por padrão temos 16 pastas com 256 subpastas cada uma. cache_dir ufs /cache/squid 11000 16 256 #Você pode definir ainda o arquivo onde são guardados os logs de #acesso do Squid. #Por padrão o squid guarda o log de acesso no #var/log/squid/access.log. #no nosso servidor fiz uma pasta /cache... #Este arquivo é usado pelo sarg para gerar as páginas com as #estatisticas de acesso. cache_access_log /cache/logs/access.log # Caminho e arquivo para LOG do Cache. # Para não gerar LOG do Cache, mude o caminho e arquivo #para "none". cache_log /cache/logs/cache.log # Caminho e arquivo para LOG do Histórico. # Para não gerar LOG do Histórico, mude o caminho e arquivo #para "none". cache_store_log /cache/logs/store.log # Caminho e arquivo responsável para a criação de um arquivo de #controle contendo apenas o número do processo (PID). #pid_filename /cache/logs/squid.pid # Usuário do sistema responsável pelo processo do Proxy cache_effective_user proxy # Grupo do sistema, no qual o resposável faz parte cache_effective_group proxy #Mais uma configuração que você pode querer alterar é o padrão #de atualização do cache. #Estas três linhas precisam sempre ser usadas em conjunto. #Ou seja, você pode alterá-las #mas sempre as três precisam estar presente no arquivo. #Eliminando um, o squid ignora as #outras duas e usa o default. #Os números indicam o tempo (em minutos) quando o squid #irá verificar se um ítem do cache(uma página por exemplo) #foi atualizado, para cada um dos três protocolos. #O primeiro número (o 15) indica que o squid verificará se todas #as páginas e arquivos com mais de 15 minutos foram atualizados. #Ele só verifica checando o tamanho do arquivo, o que é rápido. #Se o arquivo não mudou, então ele continua mandando o #que não está no cache para o cliente. #O terceiro número (o 2280, equivalente a dois dias) indica o tempo #máximo, depois disso o objeto é sempre verificado. Além do http e #ftp o Squid suporta o protocolo Gopher, que era muito usado nos #primórdios da Internet para localizar documentos de texto, mas #perdeu a relevância hoje em dia: refresh_pattern ^ftp: 15 20% 2280 refresh_pattern ^gopher: 15 0% 2280 refresh_pattern . 15 20% 2280 #Esta linha cria uma acl (uma política de acesso) chamada "all" #(todos) incluindo todos os endereços IP possíveis e permite que #qualquer um dentro desta lista use o proxy. Ou seja, ela permite #que qualquer um use o proxy, sem limitações. acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 901 # SWAT acl Safe_ports port 10000 # Webmin acl Safe_ports port 22 # SSH acl purge method PURGE acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports #Para adicionar o filtro de palavras, adicione as linhas no #arquivo "/etc/squid/proibidos" #se o arquivo não existir crir o arquivo "proibidos" #O arquivo deve conter as palavras e domínios bloqueados, um por #linha: acl proibidos url_regex "/cache/proibidos" http_access deny proibidos all #Existe uma última ressalva: alguns sites, como o orkut.com podem #ser acessados #tanto com o www quanto sem. Para o squid, "www.orkut.com" #e "orkut.com" são duas coisas diferentes. #Bloqueando o "orkut.com" os usuários ainda conseguirão acessar #o site através do "www.orkut.com". #Para bloquear ambos, é preciso incluir as duas possibilidades #dentro da regra, como em: acl redelocal src 192.168.100.0/24 #acl intruso arp 00:0d:88:ba:b9:27 #http_access allow localhost # Autenticação dos usuários #auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd #acl autenticados proxy_auth REQUIRED #http_access allow autenticados #Para que o proxy bloqueie acessos feitos entre meia-noite e 6:00 #da manhã e no horário de almoço por exemplo, você usaria as #regras: #acl madrugada time 00:00-06:00 #http_access deny madrugada #liberar acesso pelo ip #acl all src 192.168.100.2 192.168.100.3 192.168.100.4 192.168.100.6 192.168.100.8 #http_access allow all #Para adicionar o filtro de ip's, adicione as linhas no arquivo "/etc/squid/liberarip" #se o arquivo não existir crir o arquivo "proibidos" #O arquivo deve conter numero do ip que deve ser liberados, um #por linha: #acl liberarip src "/etc/squid/liberarip" #http_access allow liberarip #Desbloqueio Pelo MAC: ex: #acl placa1 arp 01:02:03:04:05:06 #http_access allow placa1 #bloqueio Pelo MAC: ex: #acl placa1 arp 00:0d:88:ba:b9:27 #http_access deny placa1 #bloqueio de todos Pelo MAC: ex: #acl all arp 01:02:03:04:05:06 #http_access deny all #bloque todos os ip que não estiver na regra acima #acl all src 192.168.100.0 #http_access deny all #bloque de acesso pelo ip #acl bloqip src 192.168.100.50 192.168.100.51 #http_access deny bloqip #Para que o proxy bloqueie acessos feitos entre almoço de 12:00 #as 14:00 da manhã e no horário de almoço por exemplo, você #usaria as regras: #acl almoco time 12:00-14:00 #http_access deny almoco #Depois de criadas as duas políticas de acesso, vão duas linhas no #final do arquivo que especificam que os micros que se #enquadrarem nelas vão poder usar http_access deny all !SSL_ports !Safe_ports http_access allow redelocal #Lembra-se da acl "all", que contém todo mundo? Vamos usa-la #para especificar que quem não se enquadrar nas duas regras #acima (ou seja, micros não autorizados, da internet) #não poderá usar o proxy: http_access deny all #http_access deny intruso # Proxy transparente httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_header on #isaacson@hotmail.com.br #quem poder melhorar este tutorial, estar livre para fazer qualquer #alteração mais porfavor me envie um copia das mudanças, tenho #este tutor funcionado muito bem no nosso servidor de radio.
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta