Instalação SquidAnalyzer
-
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
-
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.logcaso não esteja semelhante, ou o arquivo de log seja em outro local façam o ajuste.
att.
-
Exatamente Claiton, precisa fazer esses ajustes devido a falta do make para a versão 2.2.6! ;)
-
Pfsense 2.3.x não possui o diretório /opt
Sendo assim, qual o passo correto?? criar "/opt" e depois criar "/squidanalyzer" dentro?
-
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>&1or run it manually. For more information, see /README file.
-
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
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>&1or 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. -
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 defeitoSearch 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 :)
-
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 defeitoSearch 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.
-
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.
-
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
-
eu só adicionei a instrução "/opt/squidanalyzer/ && perl squid-analyzer" no cron e esta funcionando que é uma beleza
-
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
-
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
-
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
-
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!
-
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.
-
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
-
Valeu!
-
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!
-
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.