Como implementar Sqstat para monitoreo de usuarios en vivo

Imagen de falcom

Requerimientos
1.PHP 4.1.0 o superior
2.Squid proxy server 2.6 o superior
3.Apache web server
4.browser preferiblemente firefox (x supuesto)

Testeado en:
Fedora 7 - 8, Redhat ES 5.0, Centos 5.0

Autor del script:
Alex Samorukov
samm@os2.kiev.ua

Instalación
- obviamente tener funcionando todos los requerimientos indicados, luego pues ya sabes a descargar el script de

http://samm.kiev.ua/sqstat/sqstat-1.20.tar.gz

descomprimir en la ruta /var/www/html/sqstat (esto para las versiones y clones de redhat) o donde tengas la ruta donde corren tus paginas en apache si deseas cambiarla pues facil entras a /var/httpd/conf/httpd.conf y la cambias en la seccion:
DocumentRoot "/var/www/html"

- Copiar y renombrar el archivo config.inc.php.defaults hacia config.inc.php, luego editar el archivo config.inc.php y especificar la ip del squid proxy server mas el puerto.
Quedaria mas o menos asi:

<?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 */

/* Aca colocar la dir ip del Squid proxy server ejem: */
$squidhost[0]="192.168.0.1";
/* Aca colocar el puerto de Squid proxy server */
$squidport[0]=8080;
/* 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]="host";
$hosts_file[0]="/home/user/hosts.txt"
/* 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"
?>


En la parte de host funciona para squid 2.6 o superior, se coloca la ruta del archivo host y en el mismo se coloca la ip del usuario mas el nombre ejem:

192.168.0.12 CINFORMATICO2
192.168.0.13 PVIDAL
192.168.0.14 DJURIDICO
192.168.0.15 CCARRION
192.168.0.19 CENTROINFORDELL
192.168.0.20 PEAJE
192.168.0.21 MVSANCHEZ
192.168.0.22 relpublicas

- Luego editar el archvo squid.conf y agregar o modificar lo siguiente:
acl manager proto cache_object
# remplazar la ip 192.168.0.1 con la de su proxyserver
acl webserver src 192.168.0.1/255.255.255.255
http_access allow manager webserver
http_access deny manager
Luego desde cualquier usuario de la red o desde su pc de administracion ingresar a la dir (o a la q ustedes especificaron)

http://192.168.0.1/sqstat/sqstat.php

Ahora un tip, ustedes pueden en apache dar los permisos respectivos para q solo el administrador accese a las estadisticas pero eso ya depende de ustedes.
Si ustedes revisan el script pues nada saca la info del cache q se crea mientras los users navegan

Espero haber aportado en algo y con esto pueden ver en vivo q hacen los famosos usuarios, el script me ha servido de mucho para cortar cantidad de conexiones que se encontraban navegando por las típicas paginas de porno y a veces no hay tiempo de checar dia x dia los logs con otros programas como sarg o cacti.
Have fun

Comentarios

Gracias

Imagen de Mera

Con el comando php -v me entrego que tengo la version 5.1.6, asi que también cumplo con o solicitado. He revisado los archivos httpd.conf, squid.conf y config.inc.php, y jugado con sus configuraciones, ademas de usuarios y permisos y no logro sacar el mensaje de pantalla..

Desde Cero

Imagen de Mera

Comencé todo de nuevo. Descomprimi el archivos por interfaz de comandos y relice su configuración. Ahora me aparece el siguiente mensaje:

Forbidden

You don't have permission to access /sqstat/sqstat.php on this server.

Apache/2.2.3 (CentOS) Server at 192.168.1.21 Port 80

Al parecer por lo que estuve investigando hay que modificar el httpd.conf.

Puede ser ?

SELinux

El error que tienes se debe a que tienes habilitado SELinux (activado en una instalación default de CentOS).

Para resolver este problema debes desactivar SELinux para el servicio httpd:

1. Edita el archivo /etc/selinux/targeted/booleans, y modifica el valor httpd_disable_trans, que debe quedar en: httpd_disable_trans=1

2. Graba y reinicia o si prefieres puedes ejecutar setsebool httpd_disable_trans 1
para activar el cambio en memoria.

3. Reinicia el servicio httpd.

Espero pueda servirte esto.

Squid.conf

Imagen de Mera

Claro. Igual como está en el manual

acl manager proto cache_object
# remplazar la ip 192.168.0.1 con la de su proxyserver
acl webserver src 192.168.1.21/255.255.255.255
http_access allow manager webserver
http_access deny manager

Puede ser que estás

Imagen de jcyepez

Puede ser que estás redirigiendo el tráfico que va al puerto 80 hacia el del squid. A mi me pasó eso, para solucionarlo yo lo que ise fue darle acceso a toda la red así:

acl webserver src 192.168.1.0/255.255.255.0

Ahí deberías poder verlo

Saludos

Juan Yépez
093681879

Saludos

Juan Yépez
0993681879
Dj - Discomovil Quito

SQUID

Imagen de Mera

Lo hice pero no pasa nada, yo creo que es una configuración en el httpd.conf, porque yo al bajar el servicio Squid me sigue arrojando la misma restricción.
Podemos apuntar el problema ahí ?.

Y x q utilizas esa mascara

Imagen de falcom

Y x q utilizas esa mascara de subred?? no deberia ser 255.255.255.0 ??? revisa q el parametro webserver se encuentre en el archivo squid.conf dentro de /etc/squid
********
Salu2 and Have Fun

Páginas