SqStat com Squid 3.3.6 monitorando usuários

Publicado por krum em 20/09/2013

[ Hits: 18.860 ]

 


SqStat com Squid 3.3.6 monitorando usuários



Para funcionar o SqStat, tem que estar dentro do seu Apache ou outro Web Server de sua preferência, para poder ser acessado via WEB e ver os acessos em tempo real.

Para implementar o SqStat nas versões novas (3+) do Squid, tem que ser aplicado um patch. Vamos fazer o download do SqStat, primeiro:

# wget http://ufpr.dl.sourceforge.net/project/sqstat/sqstat/sqstat-1.20/sqstat-1.20.tar.gz
# tar -zxvf sqstat-1.20.tar.gz

Entre no diretório descompactado:

# cd sqstat-1.20

Dentro do diretório do SqStat, vamos fazer download do patch:

# wget http://kidun.ru/files/sqstat_squid32.patch

Agora, aplique o patch:

# patch sqstat.class.php sqstat_squid32.patch

Renomeie o arquivo config.inc.php.defaults para config.inc.php:

# mv config.inc.php.defaults config.inc.php

Edite o arquivo config.inc.php. Deixe da maneira que vai estar abaixo, de acordo com suas configurações:

# vi config.inc.php

<?php
/* global settings */

$use_js=true; // use javascript for the HTML toolkits

// Maximum URL length to display in URI table column

DEFINE("SQSTAT_SHOWLEN",60);


/* proxy settings */

/* Squid proxy server ip address or host name */
$squidhost[0]="192.168.0.1";
/* Squid proxy server port */
$squidport[0]=3128;
/* cachemgr_passwd in squid.conf. Leave blank to disable authorisation */
$cachemgr_passwd[0]="";
/* Resolve user IP addresses or print them as numbers only [true|false] */
$resolveip[0]=false;
/* uncomment next line if you want to use hosts-like file.
   See hosts.txt.dist. */
// $hosts_file[0]="hosts.txt"
/* Group users by hostname - "host" or by User - "username". Username work only
   with squid 2.6+ */
$group_by[0]="username";

/* you can specify more than one proxy in the configuration file, e.g.: */
// $squidhost[1]="192.168.0.2";
// $squidport[1]=3129;
// $cachemgr_passwd[1]="secret";
// $resolveip[1]=true;
// $hosts_file[1]="otherhosts.txt"


?>

Agora no squid.conf, adicione essa linha:

acl webserver src 192.168.0.1/32 # Mude para o IP do seu servidor
http_access allow manager localhost
http_access allow manager webserver
http_access deny manager

Depois disso, é só autenticar no Squid via NTLM e ver o SqStat monitorar em tempo real os acessos dos usuários.

Outras dicas deste autor

Atualizando microcódigo de processadores AMD

Exportar variáveis de um script no mesmo sub-shell

Logs do Squid de forma legível

Shellshock (Slackware): Falha de segurança grave no bash [Resolvido]

IPtables - Bloquear Facebook, Twitter e derivados [Definitivo]

Leitura recomendada

Abrindo mais de um cliente Telegram

Usando SkypeCast no Linux com versão 2.0 do Skype

Firefox versão 31 não carrega plugins [Resolvido]

MusicTracker - Status musical no Pidgin

Usando o RealPlayer em página HTML

  

Comentários
[1] Comentário enviado por stringuetta em 10/01/2014 - 12:10h

krum, da uma olhada nesse link http://www.vivaolinux.com.br/topico/Redes/Problema-com-Sqstat

Conhece alguma solução ? Segui seu tutorial porém não obtive êxito. Grato

[2] Comentário enviado por PatrickPfP em 08/05/2014 - 10:26h

Bom Dia.

Para mim da o seguinte erro:

SqStat error
Error (1): Cannot get data. Server answered: HTTP/1.0 403 Forbidden


Teria alguma ideia?

[3] Comentário enviado por krum em 15/05/2014 - 15:25h

PatrickPfp, como está a sua configuração do config.inc.php ? e do squid.conf ?

Apache instalado e funcionando com php ? permissões corretas ?

[4] Comentário enviado por PatrickPfP em 19/05/2014 - 14:05h

No httpd.conf eu inclui essa linha:

Include /etc/httpd/mod_php.conf


No squid.conf coloquei essa linhas:

acl manager proto cache_object
acl webserver src 192.168.50.40
http_access allow manager webserver
http_access deny manager


No config.inc.php

<?php
/* global settings */

$use_js=true; // use javascript for the HTML toolkits

// Maximum URL length to display in URI table column
DEFINE("SQSTAT_SHOWLEN",60);


/* proxy settings */

/* Squid proxy server ip address or host name */
$squidhost[0]="192.168.50.40";
/* Squid proxy server port */
$squidport[0]=3128;
/* cachemgr_passwd in squid.conf. Leave blank to disable authorisation */
$cachemgr_passwd[0]="";
/* Resolve user IP addresses or print them as numbers only [true|false] */
$resolveip[0]=true;
/* uncomment next line if you want to use hosts-like file.
See hosts.txt.dist. */
//$hosts_file[0]="hosts.txt"
/* Group users by hostname - "host" or by User - "username". Username work only
with squid 2.6+ */
$group_by[0]="username";

/* you can specify more than one proxy in the configuration file, e.g.: */
// $squidhost[1]="192.168.0.2";
// $squidport[1]=3129;
// $cachemgr_passwd[1]="secret";
// $resolveip[1]=true;
// $hosts_file[1]="otherhosts.txt"


[5] Comentário enviado por dld75 em 18/06/2014 - 19:22h

Oi,

Tenho instalado:

CentOS 6.3
Apache 2.2.15
PHP 5.3.3
Squid 3.4.4

Ao aceder a SqStat me aparece a seguinte mensagem de erro:

SqStat error
Error (110): Connection timed out

Sabes qual pode ser a causa desse erro?

[6] Comentário enviado por krum em 18/06/2014 - 20:46h

dld75 como está a sua configuração do config.inc.php do SqStat ?


Estou usando o squid 3.4.4 com SMP e está tudo ok.

[7] Comentário enviado por socratesaugusto em 02/07/2014 - 16:46h

SqStat error
Error (1): Cannot get data. Server answered: HTTP/1.0 407 Proxy Authentication Required

Alguém sabe como resolver?
Obrigado.

[8] Comentário enviado por krum em 02/07/2014 - 20:54h

Olá socratesaugusto esse Erro 407 é de autenticação, reveja sua regra de autenticação se tem um bypass para o servidor linux.

Essa regra deve ser acima da autenticação
Tipo:

# ACLS
acl minharede src 192.168.0.0/24
acl SSL_ports port 443 563
acl SSL_ports port 873
acl Safe_ports port 80 # http
acl Safe_ports port 8080 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # HTTPS
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 873 # rsync
acl Safe_ports port 901 # SWAT
acl CONNECT method CONNECT

# Grupo que o usuario que roda o SQUID (squid) faz parte
cache_effective_group squid
cache_effective_user squid

####SQSTAT#######################
acl webserver src 192.168.0.1/32
http_access allow manager localhost
http_access allow manager webserver
http_access deny manager

#Libera acesso ao webserver local sem autenticação para deny_info do squid
acl servidor dst 192.168.0.1
no_cache deny servidor
http_access allow servidor

#####################
####AUTENTICACAO#####
auth_param basic program /usr/libexec/squid/basic_ncsa_auth /etc/squid/user
auth_param basic realm "Teste: "
auth_param basic children 20 startup=5 idle=2
auth_param basic casesensitive off
auth_param basic credentialsttl 8 hours
authenticate_ttl 8 hour
acl password proxy_auth REQUIRED




Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts