+ Responder ao Tópico



  1. #1

    Cool Preciso de ajuda para entender e corrigir o log do squid

    Senhores

    Sou responsavel pelo setor de informatica numa empresa. Tenho uma maquina rodando iptables com nat, e o servidor proxy squid 2.5 transparente.

    Indo direto ao assunto.....
    Semana que vem, a empresa vai ser auditada pela matriz, e os auditores irao pedir pra ver o log de acessos, para saber o que mais os funcionarios acessam na net.

    Todos os dias abro o log do squid para ver o que os funcionarios estao acessando, e assim pego as url e bloqueio com o squid.
    Mas tambem, preciso aprender a entender o log, e tenho que identificar a origem do ip que tentou acessar tal site !
    Ja procurei em varios locais na net, mas nao encontrei explicações.
    Fiz meu script do squid com ajuda o squid-ninja.

    Os auditores vao me fazer diversas perguntas sobre o log, como horario, data, ip do cliente....
    Ainda nao sei interpretar o log do squid


    Sempre vejo o log com o comando tail.

    Veja 2 linhas de exemplo do meu log.

    10.11.0.0 - - [07/Mar/2007:16:14:46 -0300] "GET http://babado.ig.com.br/favicon.ico HTTP/1.1" 404 552 TCP_MISS: DIRECT

    10.11.0.0 - - [07/Mar/2007:16:15:27 -0300] "GET http://image.ig.com.br/homev8/tv_dhtml/transp.gif HTTP/1.1" 304 254 TCP_REFRESH_HIT: DIRECT

    O problema é que nao aparece o ip do requisitante, e sim a faixa de ip da minha rede.
    Eu ja tentei mudar estas linhas no meu squid.conf, mas nada adiantou

    emulate_httpd_log on
    log_ip_on_direct off

    Como posso resolver este problema ?

    Aqui vai meu squid.conf. Preciso muito de ajuda para resolver estes problemas, e aprender a interpretar o log do squid.
    Abraços a todos !!!

    ## A PORTA PADRAO DO SQUID

    http_port 3128

    ignore_unknown_nameservers on

    # ESPECIFICA O NUMERO DA PORTA QUE O SQUID IRA ESCUTAR

    icp_port 0

    # DETERMINA QUANDO TEMPO O SQUID AGUARDA PARA SABER QUAIS
    # SERVIDORES ESTAO ESCUTANTO

    mcast_icp_query_timeout 2000

    acl QUERY urlpath_regex cgi-bin \?

    ## PROXY EH O NOME DA MAQUINA NA REDE

    visible_hostname proxy.com.br


    ## O EMAIL QUE O SQUID ENVIA COMO SENHA AO ACESSAR UM FTP ANONIMO

    ftp_user [email protected]

    ## DEFININDO USUARIO DO SQUID
    cache_effective_user squid
    cache_effective_group squid


    ## DNS UTILIZADO PELO SQUID

    dns_nameservers 201.10.1.2
    dns_nameservers 201.10.120.3
    dns_nameservers 200.204.0.138
    dns_nameservers 200.204.0.10
    dns_nameservers 200.177.96.11
    dns_nameservers 200.176.128.153
    dns_nameservers 200.176.2.10
    dns_nameservers 200.176.2.12

    ## MASCARA PADRAO DA REDE CLIENTE

    client_netmask 255.255.255.0

    ## AQUI DEFINO A QUANTIDADE DE MEMORIA USADA PELO CACHE
    ## CACHE = ARMAZENAMENTO DE PAGINAS

    cache_mem 128 MB

    maximum_object_size_in_memory 1002 KB
    maximum_object_size 16384 KB
    minimum_object_size 0 KB
    cache_swap_low 95
    cache_swap_high 98

    cache_dir ufs /var/spool/squid 5000 16 256

    hosts_file /etc/hosts
    refresh_pattern ^ftp: 1440 20% 10080
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern . 0 20% 4320

    # ESTA OPCAO MANDA O SQUID GERAL LOG EM HTML

    emulate_httpd_log on
    log_ip_on_direct off

    # -> DIRETORIO DE CONFIGURACAO DOS LOGS

    cache_access_log /var/log/squid/access.log

    # ARQUIVO ONDE SERA GERADO O LOG SOBRE O COMPORTAMENTO
    # DO CACHE

    cache_log /var/log/squid/cache.log

    # DIRETORIO DE ERROS EM PORTUGUES

    error_directory /usr/share/squid/errors/Portuguese

    # DEFINICAO DA PAGINA DE ERROS (QUANDO FOR NEGADO ACESSO)
    #deny_info err_page_name ERR_NEGADO
    #deny_info err_page /etc/squid/errors/negado.htm
    # err_html_text INSERIR TEXTO
    #err_html_text /etc/squid/errors/erro.htm


    ##### -> CONFIGURACAO DAS ACL SSL_PORTS <- #####

    acl all src 0.0.0.0/0.0.0.0
    acl localhost src 127.0.0.1/255.255.255.255
    acl manager proto cache_object
    acl SSL_ports port 443 563 # https, snews
    acl SSL_ports port 873 # rsync
    acl Safe_ports port 80 # http
    acl Safe_ports port 21 # ftp
    acl Safe_ports port 443 563 # https, snews
    acl Safe_ports port 3456 # RECEITA NET
    acl Safe_ports port 8010 # CHAT - TERRA - UOL
    acl Safe_ports port 8015 # CHAT - TERRA - UOL
    acl Safe_ports port 9781 # CHAT - TERRA - UOL
    # 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 631 # cups
    acl Safe_ports port 873 # rsync
    acl Safe_ports port 901 # SWAT
    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


    ##### -> CONFIGURACAO DAS ACL <- #####

    # A ACL IP MASTER, CONTEM A LISTA DOS IP's QUE TEM ACESSO
    # TOTAL E SEM RESTRINCOES

    acl ip_master src "/etc/squid/regras/ip_master.txt"
    http_access allow ip_master


    # BLOQUEIO POR PALAVRA CHAVE

    acl palavra_proibida url_regex -i "/etc/squid/regras/palavra_proibida.txt"
    acl palavra_permitida url_regex -i "/etc/squid/regras/palavra_permitida.txt"
    http_access deny palavra_proibida !palavra_permitida

    acl url_bloqueada url_regex -i "/etc/squid/regras/url_bloqueada.txt"
    acl url_permitida url_regex -i "/etc/squid/regras/url_permitida.txt"
    http_access deny url_bloqueada !url_permitida

    acl palavra_sexo url_regex -i "/etc/squid/regras/palavra_sexo.txt"
    acl url_porno url_regex -i "/etc/squid/regras/url_porno.txt"
    http_access deny url_porno
    http_access deny palavra_sexo

    ## -> BLOQUEANDO DOMINIOS

    acl dominio_bloqueado dstdomain "/etc/squid/regras/dominio_bloqueado.txt"
    acl dominio_liberado dstdomain "/etc/squid/regras/dominio_liberado.txt"

    header_access Accept-Encoding deny dominio_bloqueado !dominio_liberado

    ## O arquivo "bloqueia_msn_orkut.txt" contém os principais endereços
    # que o MSN e ORKUT usa para fazer autenticação.
    acl bloqueia_msn_orkut url_regex -i "/etc/squid/regras/bloqueia_msn_orkut.txt"
    http_access deny bloqueia_msn_orkut


    ## NESTA ACL "HORARIO BLOQUEADO", VOU INFORMAR O HORARIO PARA
    # TRAVAR A INTERNET
    acl horario_seg_sexta_noturno time MTWHF 20:30-23:59
    acl horario_seg_sexta_madruga time MTWHF 00:00-07:10
    acl horario_sabado time A 17:30-23:59
    acl horario_domingo_madruga time S 00:00-07:15
    acl horario_domingo_noturno time S 16:30-23:59

    http_access deny horario_seg_sexta_noturno
    http_access deny horario_seg_sexta_madruga
    http_access deny horario_sabado
    http_access deny horario_domingo_madruga
    http_access deny horario_domingo_noturno


    ## BLOQUEIO DE DOWNLOAD E ANEXOS
    # urlpath_regex
    acl anexos urlpath_regex -i "/etc/squid/regras/anexo.txt"
    acl download url_regex -i "/etc/squid/regras/download.txt
    acl download_permitido url_regex -i "/etc/squid/regras/download_permitido.txt

    http_access deny anexos !download_permitido
    http_access deny download !download_permitido

    ## A ACL IP_PERMITIDO = USUARIOS AUTORIZADOS
    acl ip_permitido src "/etc/squid/regras/ip_permitido.txt"
    http_access allow ip_permitido

    # BLOQUEIA OS IP's QUE NAO TIVEREM CADASTRADOS NAS LISTAS

    http_access deny all

    ## ESTA OPCAO HABILITA O PROXY TRANSPARENTE
    ## CONFIGURACAO DO HTTP
    httpd_accel_host virtual
    httpd_accel_port 80
    httpd_accel_with_proxy on
    httpd_accel_uses_host_header on
    ie_refresh on
    #Rotacionando Log
    logfile_rotate 10

  2. #2

    Padrão

    Kra, vou te dar uma dica pra vc resolver isso sem problema nenhum...

    instala o sarg

    ele é um serviço de monitora os acessos do squid

    pega ae...

    link para download:
    SARG

    link mostrando como configurá-lo
    Sarg - Gerador de relatórios do Squid - tutoriais, dicas e indicações.


    depois posta os resultados

    flw
    Última edição por mastellaro; 08-03-2007 às 00:16.

  3. #3

    Padrão

    Citação Postado originalmente por mastellaro Ver Post
    Kra, vou te dar uma dica pra vc resolver isso sem problema nenhum...

    instala o sarg

    ele é um serviço de monitora os acessos do squid

    pega ae...

    link para download:
    SARG

    link mostrando como configurá-lo
    Sarg - Gerador de relatórios do Squid - tutoriais, dicas e indicações.


    depois posta os resultados

    flw
    Mas o problema, é que nao fui eu que montei este servidor. e quando foi instalado, nao instalaram interface grafica, e nem o apache.
    Nao sobra tempo para formatar e instalar tudo de novo !
    Mas pelo pouco que sei, o sarg vai ler o log do squid, se o log nao esta aparecendo o ip do requisitante, o sarg nao vai conseguir saber de quem é aquele ip, gerando assim um relatorio com o ip da rede, e nao o ip de cada cliente !

    Desde ja sou grato pela boa intenção.

  4. #4

    Padrão

    qual é a distribuição que vc está usando ???

  5. #5

    Padrão

    Citação Postado originalmente por mastellaro Ver Post
    qual é a distribuição que vc está usando ???
    No servidor esta instalado o CentOS 4.3 server.
    Squid 2.5 estable

  6. #6

    Padrão

    Citação Postado originalmente por ricardodru Ver Post
    Mas o problema, é que nao fui eu que montei este servidor. e quando foi instalado, nao instalaram interface grafica, e nem o apache.
    Nao sobra tempo para formatar e instalar tudo de novo !
    Mas pelo pouco que sei, o sarg vai ler o log do squid, se o log nao esta aparecendo o ip do requisitante, o sarg nao vai conseguir saber de quem é aquele ip, gerando assim um relatorio com o ip da rede, e nao o ip de cada cliente !

    Desde ja sou grato pela boa intenção.
    Você não precisa formatar o servidor. Hoje nós temos vários e vários how-to's e documentações para instalação de diversos aplicativos em diversas distribuições, inclusive aqui no wiki da Underlinux.


    Abraços!