Ves pasada luego de una actualizacion tuve este error con el sarg:
SARG: getword loop detected.
SARG: searching for 'x20'
SARG: Maybe you have a broken record or garbage in your access.log file.
Mucho intente solucionar con el archivo de configuracion, pero no pude
lo unico que me quedo fue desinstalar mi sarg que tenia e instalar una version anterior
# rpm -qa |grep sarg
sarg-2.2.5-19.1
# rpm -e sarg
warning: /etc/sarg.conf saved as /etc/sarg.conf.rpmsave
# cd /tmp
/tmp # rpm -Uhv http://download.opensuse.org/repositories/server:/proxy/openSUSE_11.0/i586/sarg-2.2.5-18.1.i586.rpm
Retrieving http://download.opensuse.org/repositories/server:/proxy/openSUSE_11.0/i586/sarg-2.2.5-18.1.i586.rpm
Preparing... ########################################### [100%]
1:sarg ########################################### [100%]
Updating etc/sysconfig/sarg...
/tmp # mv /etc/sarg.conf.rpmsave /etc/sarg.conf
/tmp # sarg
y listo el pollo, funciona de nuevo


Vez pasada me vi en la necesidad de poner un filtro de contenido debido a que visto un pendejito viendo porno en el cyber.
despues de ver las posibilidades me quede con dansguardian y squid, todo modo tranparente.
Aqui les pongo como tenemos que hacerlo con el OpenSuSe
primero que nada, tenemos que instalar el squid y el dansguardian, eso lo hacemos desde el software management del Yast.
luego hacemos transparente el squid, en el servidor tengo dos tarjetas de red una con la ip publica y otra con la privada,
entonces le puse a escuchar en modo transparente a la tarjeta de red privada modificando la parte del http port del squid.conf
# vi /etc/squid/squid.conf
buscamos la parte del http_port y le hacemos escuchar en la interface que les dije anterior mente en modo transparente
...
http_port 192.168.1.1:3128 transparent
...
hay veces que ademas del http_port tambien nos dice en el log el siguiente error “no visible hostname”
para solucionar esto en el squid.conf le agregamos esto
...
visible_hostname localhost.localdomain
...
o el dominio que querramos verdad.
luego con la ayuda de nuestro magnifico SuSEfirewall2 le hacemos forward de todo lo que intenta salir por el 80 vaya al 8213 de nuestro dansguardian
# vi /etc/sysconfig/SuSEfirewall2
buscamos la parte del fordward y agregamos esto:
...
FW_REDIRECT="192.168.1.1/24,0/0,tcp,80,8213
...
hasta alli de lujo, con eso ya tenemos para que todo lo que salga por el port 80 pase por el filtro de contenido, ahora falta configurar el dansguardian para que se comunique con el squid.
Por cualquier cosa aqui les paso mi squid.conf :
# cat /etc/squid/squid.conf
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECT
acl QUERY urlpath_regex cgi-bin \?
acl apache rep_header Server ^Apache
acl MI_RED src 192.168.1.0/255.255.255.0
acl dansguardian src 192.168.1.1
# acl dominios_bloqueados url_regex -i "/etc/squid/dominios.bloqueados.txt"
# este no hace falta por que el dansguardian tiene su lista de bloquedsitelist
cache deny QUERY
broken_vary_encoding allow apache
access_log /var/log/squid/access.log
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny dominios_bloqueados
http_access allow MI_RED
http_access deny all
icp_access allow all
http_port 192.168.1.1:3128 transparent
hierarchy_stoplist cgi-bin ?
cache_mem 8 MB
memory_replacement_policy lru
cache_replacement_policy lru
cache_dir ufs /var/cache/squid 100 16 256
minimum_object_size 0 KB
maximum_object_size 4096 KB
cache_swap_low 90
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
emulate_httpd_log off
ftp_passive on
refresh_pattern ^ftp: 1440 20 10080
refresh_pattern ^gopher: 1440 0 1440
refresh_pattern . 0 20 4320
connect_timeout 2 minutes
client_lifetime 1 days
cache_mgr webmaster
visible_hostname oicoite.com
follow_x_forwarded_for allow dansguardian
acl_uses_indirect_client on
log_uses_indirect_client on
error_directory /usr/share/squid/errors/Spanish
coredump_dir /var/cache/squid
cache_swap_high 95
y mi dansguardian.conf :
# cat /etc/dansguardian/dansguardian.conf
reportinglevel = 3
languagedir = '/usr/share/dansguardian/languages'
language = 'spanish'
loglevel = 2
logexceptionhits = 2
logfileformat = 1
filterip = 192.168.1.1
filterport = 8213
proxyip = 192.168.1.1
proxyport = 3128
accessdeniedaddress = 'http://oicoite.com/cgi-bin/dansguardian.pl'
nonstandarddelimiter = on
usecustombannedimage = on
custombannedimagefile = '/usr/share/dansguardian/transparent1x1.gif'
filtergroups = 1
filtergroupslist = '/etc/dansguardian/lists/filtergroupslist'
bannediplist = '/etc/dansguardian/lists/bannediplist'
exceptioniplist = '/etc/dansguardian/lists/exceptioniplist'
showweightedfound = on
weightedphrasemode = 2
urlcachenumber = 1000
urlcacheage = 900
scancleancache = on
phrasefiltermode = 2
preservecase = 0
hexdecodecontent = off
forcequicksearch = off
reverseaddresslookups = off
reverseclientiplookups = off
logclienthostnames = off
createlistcachefiles = on
maxuploadsize = -1
maxcontentfiltersize = 256
maxcontentramcachescansize = 2000
maxcontentfilecachescansize = 20000
filecachedir = '/tmp'
deletedownloadedtempfiles = on
initialtrickledelay = 20
trickledelay = 10
downloadmanager = '/etc/dansguardian/downloadmanagers/fancy.conf'
downloadmanager = '/etc/dansguardian/downloadmanagers/default.conf'
contentscannertimeout = 60
contentscanexceptions = off
recheckreplacedurls = off
forwardedfor = on
usexforwardedfor = on
logconnectionhandlingerrors = on
logchildprocesshandling = off
maxchildren = 120
minchildren = 8
minsparechildren = 4
preforkchildren = 6
maxsparechildren = 32
maxagechildren = 500
maxips = 0
ipcfilename = '/tmp/.dguardianipc'
urlipcfilename = '/tmp/.dguardianurlipc'
ipipcfilename = '/tmp/.dguardianipipc'
nodaemon = off
nologger = off
logadblocks = off
loguseragent = off
softrestart = off
mailer = '/usr/sbin/sendmail -t'
Y ya esta. Ahora tenemos que agregar los servicios para que se inicien al comenzar automaticamente
# chkconfig --add squid
# chkconfig --add dansguardian
# rcsquid start
# rcdansguardian start
y listo.
el dansguardian esta espectacular por que trae dentro una lista de dominos blacklisteados ( si aparece oicoite borrenlo :p o agreguenle a la exeptionsitelist ), ademas te permite bloquear extenciones de archivos y un monton de opciones mas.