Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Instalação SquidAnalyzer

    Scheduled Pinned Locked Moved Portuguese
    130 Posts 44 Posters 51.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      leoescarpellin
      last edited by

      Boa noite pessoal,
      Tenho visto algumas pessoas com dificuldades na versão 2.3.1 devido ao fato de não ter mais o sarg, venho utilizando esses tempo o SquidAnalyzer, e confesso que já não tenho mais vontade de voltar para o sarg rs rs rs.
      Lembrando que esse tutorial é para a versão 2.3 ou superior, também consegui fazer funcionar na versão 2.2.6, caso alguém necessite eu ajudo ou crio um novo tutorial para ela.
      Estou testando mais uma outra ferramenta, mais como não conclui os testes ainda não postarei aqui como utilizar.

      Bom vou deixar abaixo um pequeno tutorial de como proceder para instalar caso alguém queira testar e algumas prints, ESTA REGISTRANDO OS ACESSOS NEGADOS DE FORMA CORRETA NOS RELATÓRIOS, POIS ELE ESTA CONFIGURADO PARA LER O ARQUIVO DE LOG DO SQUID E DO SQUIDGUARD, CONFIRA OS PRINTS.

      1° Baixe a versão mais recente no site do squidanalyzer (http://squidanalyzer.darold.net) , atualmente é a versão 6.5:

      fetch http://sourceforge.net/projects/squid-report/files/squid-report/6.5/squidanalyzer-6.5.tar.gz
      

      2° Descompactar o arquivo:

      tar -zxvf squidanalyzer-6.5.tar.gz
      

      3° Criar diretório para o Programa:

      mkdir –p /opt/squidanalyzer
      

      4° Mova todo o conteúdo da pasta descompactada para o diretório acima:

      mv /root/squidanalyzer-6.5/* /opt/squidanalyzer/
      

      5° Edite as configurações abaixo no arquivo de instalação (Makefile.PL) para melhor se adaptar as suas necessidades:

      vi Makefile.PL
      

      Search for default log dir

      my $default_log = '/var/squid/logs/access.log,/var/squidGuard/log/block.log';
      if (! -d $default_log ) {
              $default_log = '/var/squid/logs/access.log,/var/squidGuard/log/block.log';
      }

      Default install path

      my $LOGFILE = $ENV{LOGFILE} || $default_log;
      my $BINDIR = $ENV{BINDIR} || '/usr/local/bin';
      my $CONFDIR = $ENV{CONFDIR} || '/etc/squidanalyzer';
      my $ETCDIR = $ENV{ETCDIR} || $CONFDIR;
      my $HTMLDIR = $ENV{HTMLDIR} || '/usr/local/www/squidanalyzer';
      my $BASEURL = $ENV{BASEURL} || '/squidanalyzer';
      my $DOCDIR = $ENV{DOCDIR} || '';
      my $MANDIR = $ENV{MANDIR} || '/usr/local/man/man3';

      Obs.: Ajuste os caminhos em vermelho de acordo com a sua estrutura.
      Obs2: IMPORTANDO ADICIONAR O CAMINHO DOS 2 LOGS (SQUID E SQUIDGUARD) NO CONF SEPARADO POR (VIRGULA) IGUAL ESTA FEITO ACIMA.
      6° Agora fazemos a instalação:

      perl Makefile.PL
      
      make
      
      make install
      

      7° Confira as configurações após instalado, e ajuste a linguagem do squidanalyzer para pt-br.

      vi /etc/squidanalyzer/squidanalyzer.conf
      

      Obs.: Mudanças que eu aconselho fazer:

      Linha 69: CostPrice 0 (para não aparecer custo da navegação.)
      Linha 89: Remover comentário e ajustar para pt_BR.txt
      Linha 107: Mudar exibição do tamanho de transferência para MB.

      8º Edite o arquivo de exclusão para remover do relatório coisas indesejadas.
      Exemplo: no meu relatório estava aparecendo acessos de maquinas e aplicações que não registrava usuário, com isso no relatório aparecia "maquina10-pc$", e também registrava nos bloqueios os acessos bloqueados sem autenticação, e quando eu ia em "TOP DENIED" aparecia bloqueio com os IPs das maquinas, resolvi adicionando no arquivo "excluded' os seguintes paramentros.

      vi /etc/squidanalyzer/excluded
      

      Adiciones as seguintes linhas no arquivo:

      USER       .*\$
      USER       -
      

      Dica do amigo Tomas Waldow  ;D

      9° Edite o binário do squidanalyzer.

      vi /opt/squidanalyzer/squid-analyzer
      

      Inclua a linha abaixo antes da chamada da lib "use SquidAnalyzer;" (para mim fica na linha 7).

      use lib '/opt/squidanalyzer';
      ```Salve!
      

      chmod +x /opt/squidanalyzer/squid-analyzer

      
      9° Execute o comando manual:
      

      /opt/squidanalyzer/squid-analyzer

      10° Se não apresentar nenhum erro adicione o comando no "cron" conforme a frequência que desejar e consulte no link do pfsense de vocês + pagina do squidanalyzer:
      linkdopfsense/squidanalyzer
      O meu ficou assim para consultar: https://192.168.1.1:4433/squidanalyzer
      squidanalyzer03.jpg_thumb
      squidanalyzer03.jpg
      squidanalyzer02.jpg_thumb
      squidanalyzer02.jpg
      squidanalyzer01.jpg_thumb
      squidanalyzer01.jpg
      squidanalyzer04.jpg
      squidanalyzer04.jpg_thumb
      squidanalyzer05.jpg
      squidanalyzer05.jpg_thumb

      Att,
      Leonardo Escarpellin

      1 Reply Last reply Reply Quote 0
      • G
        guitarcleiton
        last edited by

        Uma pequena contribuição para quem esta na versão 2.2.6 do PFsense.

        Com a exceção ao passo 6, as demais operações são as mesmas, que por questões de segurança o make não funciona nesta versão, então executem o seguinte comando:

        sh install_all.sh
        

        na etapa 7 verifique nas linhas:

        11 - WebUrl /squidanalyzer
        …
        14 - LogFile /var/squid/logs/access.log

        caso não esteja semelhante, ou o arquivo de log seja em outro local façam o ajuste.

        att.

        Analista de Sistemas
        Bacharel em Sistemas de Informação

        https://cleiton.tech.blog/

        1 Reply Last reply Reply Quote 0
        • L
          leoescarpellin
          last edited by

          Exatamente Claiton, precisa fazer esses ajustes devido a falta do make para a versão 2.2.6!  ;)

          Att,
          Leonardo Escarpellin

          1 Reply Last reply Reply Quote 0
          • P
            pablo.schutz
            last edited by

            Pfsense 2.3.x não possui o diretório /opt

            Sendo assim, qual o passo correto?? criar "/opt" e depois criar "/squidanalyzer" dentro?

            1 Reply Last reply Reply Quote 0
            • P
              pablo.schutz
              last edited by

              Após seguir o tutorial, depois do comando: make install aparece a seguinte mensagem:

              –---------------------------------------------------------------------------
              1. Modify your httpd.conf to allow access to HTML output like follow:
                      Alias /squidreport /usr/local/www/squidanalyzer
                      <directory usr="" local="" www="" squidanalyzer="">Options -Indexes FollowSymLinks MultiViews
                          AllowOverride None
                          Order deny,allow
                          Deny from all
                          Allow from 127.0.0.1</directory>
              2. If necessary, give additional host access to SquidAnalyzer in httpd.conf.
                Restart and ensure that httpd is running.
              3. Browse to http://my.host.dom/squidreport/ to ensure that things are working
                properly.
              4. Setup a cronjob to run squid-analyzer daily:

              # SquidAnalyzer log reporting daily
                  0 2 * * * /usr/local/bin/squid-analyzer > /dev/null 2>&1

              or run it manually. For more information, see /README file.

              1 Reply Last reply Reply Quote 0
              • L
                leoescarpellin
                last edited by

                @pablo.schutz:

                Pfsense 2.3.x não possui o diretório /opt

                Sendo assim, qual o passo correto?? criar "/opt" e depois criar "/squidanalyzer" dentro?

                o comando "mkdir -p" ja cria o opt e tambem o squidanalyzer pois realmente o pfsense não possui tal diretorio ;D

                @pablo.schutz:

                Após seguir o tutorial, depois do comando: make install aparece a seguinte mensagem:

                –---------------------------------------------------------------------------
                1. Modify your httpd.conf to allow access to HTML output like follow:
                        Alias /squidreport /usr/local/www/squidanalyzer
                        <directory usr="" local="" www="" squidanalyzer="">Options -Indexes FollowSymLinks MultiViews
                            AllowOverride None
                            Order deny,allow
                            Deny from all
                            Allow from 127.0.0.1</directory>
                2. If necessary, give additional host access to SquidAnalyzer in httpd.conf.
                  Restart and ensure that httpd is running.
                3. Browse to http://my.host.dom/squidreport/ to ensure that things are working
                  properly.
                4. Setup a cronjob to run squid-analyzer daily:

                # SquidAnalyzer log reporting daily
                    0 2 * * * /usr/local/bin/squid-analyzer > /dev/null 2>&1

                or run it manually. For more information, see /README file.

                Pode ignorar este aviso quando instalar dentro do pfsense, pois ele ja possui o serviço web nativo e não precisa fazer os passos informados.
                E sobre a parte que se refere ao agendamento dessa forma que esta ai nao funciona no pfsense precisa ser da forma que coloquei no passo 8.

                Att,
                Leonardo Escarpellin

                1 Reply Last reply Reply Quote 0
                • R
                  rmr85
                  last edited by

                  Boa tarde a todos após seguir o tutorial obtive o seguinte erro:

                  ERROR: you must give a valid path to the Squid log file.

                  Estou usar pfSense 2.3.1_1
                  Squid instalado com as opções por defeito

                  Search for default log dir

                  my $default_log = '/var/squid/logs/access.log';
                  if (! -d $default_log ) {
                          $default_log = '/var/squid/logs/access.log';
                  }

                  Default install path

                  my $LOGFILE = $ENV{LOGFILE} || $default_log;
                  my $BINDIR = $ENV{BINDIR} || '/usr/local/bin';
                  my $CONFDIR = $ENV{CONFDIR} || '/etc/squidanalyzer';
                  my $ETCDIR = $ENV{ETCDIR} || $CONFDIR;
                  my $HTMLDIR = $ENV{HTMLDIR} || '/usr/local/www/squidanalyzer';
                  my $BASEURL = $ENV{BASEURL} || '/squidanalyzer';
                  my $DOCDIR = $ENV{DOCDIR} || '';
                  my $MANDIR = $ENV{MANDIR} || '/usr/local/man/man3';
                  my $DESTDIR = $ENV{DESTDIR} || '';
                  $ENV{INSTALLDIRS} ||= 'vendor';

                  Grato pela ajuda  :)

                  1 Reply Last reply Reply Quote 0
                  • L
                    leoescarpellin
                    last edited by

                    @rmr85:

                    Boa tarde a todos após seguir o tutorial obtive o seguinte erro:

                    ERROR: you must give a valid path to the Squid log file.

                    Estou usar pfSense 2.3.1_1
                    Squid instalado com as opções por defeito

                    Search for default log dir

                    my $default_log = '/var/squid/logs/access.log';
                    if (! -d $default_log ) {
                            $default_log = '/var/squid/logs/access.log';
                    }

                    Default install path

                    my $LOGFILE = $ENV{LOGFILE} || $default_log;
                    my $BINDIR = $ENV{BINDIR} || '/usr/local/bin';
                    my $CONFDIR = $ENV{CONFDIR} || '/etc/squidanalyzer';
                    my $ETCDIR = $ENV{ETCDIR} || $CONFDIR;
                    my $HTMLDIR = $ENV{HTMLDIR} || '/usr/local/www/squidanalyzer';
                    my $BASEURL = $ENV{BASEURL} || '/squidanalyzer';
                    my $DOCDIR = $ENV{DOCDIR} || '';
                    my $MANDIR = $ENV{MANDIR} || '/usr/local/man/man3';
                    my $DESTDIR = $ENV{DESTDIR} || '';
                    $ENV{INSTALLDIRS} ||= 'vendor';

                    Grato pela ajuda  :)

                    O caminho do seu log do squid é esse ai mesmo? Esta ativo o log?
                    Edite o arquivo squidanalyzer.conf dentro de /etc/squidanalyzer.

                    Confere o caminho que esta la no conf.

                    Att,
                    Leonardo Escarpellin

                    1 Reply Last reply Reply Quote 0
                    • R
                      rmr85
                      last edited by

                      Boa tarde. Desde já agradeço a ajuda.
                      Segui a sugestão e já não tenho o erro que mencionei antes, no entanto ao tentar abrir a URL aparece:

                      403 Forbidden

                      nginx

                      Mais alguma sugestão?

                      Obrigado pela ajuda.

                      1 Reply Last reply Reply Quote 0
                      • L
                        leoescarpellin
                        last edited by

                        Esse erro acontece quando ele não gera o relatório pela primeira x, que é onde ele cria o index.html e afins…

                        Quando vc rodou o comando abaixo o que te retornou??

                        cd /opt/squidanalyzer/ && perl squid-analyzer
                        

                        se der algum erro tente apontar o caminho do conf

                         cd /opt/squidanalyzer/ && perl squid-analyzer -c /etc/squidanalyzer/squidanalyzer.conf
                        

                        Obs.: Confirme o caminho do seu conf, não estou lembrando de cabeça se é esse mesmo.

                        e depois de executar veja se ele criou os arquivos dentro do /usr/local/www/squidanalyzer

                        Se não der certo novamente poste um print do seu conf e da mensagem de erro

                        Att,
                        Leonardo Escarpellin

                        1 Reply Last reply Reply Quote 0
                        • G
                          guitarcleiton
                          last edited by

                          eu só adicionei a instrução "/opt/squidanalyzer/ && perl squid-analyzer" no cron e esta funcionando que é uma beleza

                          cron.png
                          cron.png_thumb

                          Analista de Sistemas
                          Bacharel em Sistemas de Informação

                          https://cleiton.tech.blog/

                          1 Reply Last reply Reply Quote 0
                          • G
                            guitarcleiton
                            last edited by

                            @rmr85:

                            Boa tarde. Desde já agradeço a ajuda.
                            Segui a sugestão e já não tenho o erro que mencionei antes, no entanto ao tentar abrir a URL aparece:

                            403 Forbidden

                            nginx

                            Mais alguma sugestão?

                            Obrigado pela ajuda.

                            tente acessar por http://ip_do_firewall:porta/squidanalyzer/index.html

                            Analista de Sistemas
                            Bacharel em Sistemas de Informação

                            https://cleiton.tech.blog/

                            1 Reply Last reply Reply Quote 0
                            • T
                              tomaswaldow
                              last edited by

                              Fiz umas alterações, caso seja de interesse:

                              Para não precisar entrar no diretorio para executar (cd /opt/squidanalyzer/ && perl squid-analyzer)
                              basta editar o excutavel:

                              vi /opt/squidanalyzer/squid-analyzer
                              

                              e incluir a linha:```
                              use lib '/opt/squidanalyzer';

                              
                              Depois dar permissão de execução para o arquivo:
                              

                              chmod +x /opt/squidanalyzer/squid-analyzer

                              
                              Fazer o agendamento no cron usando a linha de comando:
                              

                              /opt/squidanalyzer/squid-analyzer

                              
                              Também é possivel gerar os acessos negados no squidGuard alterando o agendamendo para:
                              

                              /opt/squidanalyzer/squid-analyzer /var/squid/logs/access.log /var/squidGuard/log/block.log

                              Tomas @ 2W Consultoria

                              1 Reply Last reply Reply Quote 0
                              • L
                                leoescarpellin
                                last edited by

                                Show Tomas,

                                Excelente complemento! deixa a ferramenta mais completa e simples ainda, vou testar os paramentros que passou, qualquer coisa ja edito o tutorial com os devidos créditos ;D

                                Att,
                                Leonardo Escarpellin

                                1 Reply Last reply Reply Quote 0
                                • T
                                  tomaswaldow
                                  last edited by

                                  @leoescarpellin:

                                  Show Tomas,

                                  Excelente complemento! deixa a ferramenta mais completa e simples ainda, vou testar os paramentros que passou, qualquer coisa ja edito o tutorial com os devidos créditos ;D

                                  Eu que agradeço, e aproveitando também mudei no arquivo squidanalyzer.conf a linha

                                  DateFormat      %y-%m-%d
                                  ```para```
                                  DateFormat      %d-%m-%y
                                  ```a fim de ficar no nosso formato!

                                  Tomas @ 2W Consultoria

                                  1 Reply Last reply Reply Quote 0
                                  • L
                                    leoescarpellin
                                    last edited by

                                    A sim essa mudança no conf eu também fiz.

                                    tem varias coisas no conf que da para trocar de acordo com a preferência de cada um, por isso nem entrei muito em detalhes dele, até porque ele esta bem comentado tb.

                                    Att,
                                    Leonardo Escarpellin

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      leoescarpellin
                                      last edited by

                                      @Tomas:

                                      Fiz umas alterações, caso seja de interesse:

                                      Para não precisar entrar no diretorio para executar (cd /opt/squidanalyzer/ && perl squid-analyzer)
                                      basta editar o excutavel:

                                      vi /opt/squidanalyzer/squid-analyzer
                                      

                                      e incluir a linha:```
                                      use lib '/opt/squidanalyzer';

                                      
                                      Depois dar permissão de execução para o arquivo:
                                      

                                      chmod +x /opt/squidanalyzer/squid-analyzer

                                      
                                      Fazer o agendamento no cron usando a linha de comando:
                                      

                                      /opt/squidanalyzer/squid-analyzer

                                      
                                      Também é possivel gerar os acessos negados no squidGuard alterando o agendamendo para:
                                      

                                      /opt/squidanalyzer/squid-analyzer /var/squid/logs/access.log /var/squidGuard/log/block.log

                                      Boa tarde Tomas,

                                      Testei suas mudanças e correu tudo bem, fiz uma melhoria adicionando o caminho dos 2 logs diretamente no config para não precisar passar de forma manual ficou show.

                                      Atualizei o tutorial de forma mais completa agora, assim como novas prints diretamente da minha maquina teste. favor revisarem

                                      Att,
                                      Leonardo Escarpellin

                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        tomaswaldow
                                        last edited by

                                        Valeu!

                                        Tomas @ 2W Consultoria

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          tomaswaldow
                                          last edited by

                                          @leoescarpellin:

                                          Testei suas mudanças e correu tudo bem, fiz uma melhoria adicionando o caminho dos 2 logs diretamente no config para não precisar passar de forma manual ficou show.

                                          Como ficou no arquivo, testei aqui e deu erro!

                                          Tomas @ 2W Consultoria

                                          1 Reply Last reply Reply Quote 0
                                          • L
                                            leoescarpellin
                                            last edited by

                                            Da uma olhada no tutorial do primeiro post q eu atualizei com os 2 juntos

                                            E só separar o caminho dos 2 com uma vírgula.

                                            Att,
                                            Leonardo Escarpellin

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.