Sei sulla pagina 1di 28

MA NUA L

SE RV IDOR P ROXY

Febrero 2009

SERVIDOR PROXY
INDICE
1. Introduccin.................................................................................................................3
1.2 Ventajas de utilizar un servidor proxy.....................................................................3
1.3 Situacin actual.......................................................................................................4
1.4 Esquema de integracin de las tecnologas.............................................................5
1.5 Tabla de ruteo..........................................................................................................5
2. Servidor Squid............................................................................................................6
2.1 Pre requisitos...........................................................................................................6
2.2 Instalacin................................................................................................................6
2.3 Compilacin............................................................................................................6
2.4 Script de inicializacin............................................................................................7
2.5 Instalacin y configuracin modulo squid-webmin...............................................8
3. Kaspersky..................................................................................................................11
3.1 Requerimientos......................................................................................................11
3.2 Instalacin..............................................................................................................11
3.3 Pruebas de virus.....................................................................................................12
3.4 Funcionamiento del Antivirus Kaspersky.............................................................13
3.5 Reactivacin de licencia........................................................................................13
4. Dansguardian............................................................................................................14
4.1 Instalacin..............................................................................................................14
4.1.1 Instalacin de blacklists..................................................................................15
4.1.2 Configuracin archivo dansguardian.conf......................................................15
4.2 Instalacin y configuracin modulo dansguardian-webmin.................................15
4.3 Configuracin del Dansguardian...........................................................................17
4.4 Configuracin de los grupos..................................................................................18
4.4.1 Grupo 1...........................................................................................................19
4.4.2 Grupo 2...........................................................................................................19
4.4.3 Grupo 3...........................................................................................................19
4.4.4 Grupo 4...........................................................................................................20
4.5 Identificacin de usuarios......................................................................................20
4.5.1 Identificacin de usuarios segn nombre del equipo.....................................21
4.5.2 Identificacin de usuarios segn IP................................................................21
5. Iptables.......................................................................................................................22
5.1 Bloqueo de windows-live-messenger....................................................................22
6. Script de arranque....................................................................................................22
7. Opcin ICAP_PREVIEW.........................................................................................23
8. Autenticacin mediante LDAP................................................................................24
9. Configuracin de los navegadores........................................................................25
9.1 Internet Explorer....................................................................................................25
9.2 Mozilla Firefox......................................................................................................26

1. Introduccin
La finalidad del servidor proxy es de permite a otros equipos conectarse a una
red de forma indirecta a travs de l. Cuando un equipo de la red desea
acceder a una informacin o recurso, es realmente el proxy quien realiza la
comunicacin y a continuacin traslada el resultado al equipo inicial

Figura1.1: Diagrama general servidor proxy

1.2 Ventajas de utilizar un servidor proxy

Ahorro de Trfico: Las peticiones de pginas Web se hacen al servidor


Proxy y no a Internet directamente. Por lo tanto, aligera el trfico en la
red y descarga los servidores destino, a los que llegan menos
peticiones.
Velocidad en Tiempo de respuesta: El servidor Proxy crea un cach
que evita transferencias idnticas de la informacin entre servidores
durante un tiempo (configurado por el administrador) as que el usuario
recibe una respuesta ms rpida.
Filtrado de contenidos: El servidor proxy puede hacer un filtrado de
pginas o contenidos basndose en criterios de restriccin establecidos
por el administrador dependiendo valores y caractersticas de lo que no
se permite, creando una restriccin cuando sea necesario.

1.3 Situacin actual


Para implementar el servidor proxy, se trabaj en una red real, lo cual nos
permiti disear una arquitectura efectiva de seguridad para la navegacin en
internet.
El siguiente diagrama describe el diseo de red actual.

Figura 1.2: Diagrama de red actual

EL servidor Proxy consta de dos salidas ethernet, la ethrenet interna con IP


10.17.10.20/25, la cual se conecta a la red de clientes, y la ethernet externa
10.17.10.152/27 la cual se conecta al firewall 10.17.10.135/27 que es el medio
por cual se sale a Internet.

Cabe mencionar que tanto el squid, el dansguardian y Kaspersky fueron


instalados en un mismo servidor virtual bajo Vmware.
1.4 Esquema de integracin de las tecnologas

DANSGUARDIAN

Diccionario
FIREWALL
SQUID

KASPERSKY

Figura1.3: Esquema de integracin squid-dansguardian-kaspersky

En el esquema se muestra la forma en que las tecnologas se comunican.


Los clientes acceden a internet a travs del servidor proxy, el cual se comunica
con dansguardian para verificar las diferentes categoras dentro del diccionario
el cual contiene: listas negras, grises y blancas y determinados grupos de
acceso. A su vez el servidor proxy se comunica con Kaspersky para scannear
archivos descargados desde internet.

1.5 Tabla de ruteo


Las siguientes rutas son las que se configuraron en la tabla de ruteo del
servidor proxy.
Destination
10.17.10.128
10.17.10.0
169.254.0.0
default

Gateway
*
*
*
10.17.10.135

Genmask
255.255.255.224
255.255.255.128
255.255.0
0.0.0.0

Iface
eth1
eth0
eth1
eth1

2. Servidor Squid
2.1 Pre requisitos
Plataforma Centos 5
Kernel Linux 2.6.18-8.el5 i686
Iptables
Versin iptables-1.3.5-1.2.1
Sharutils
Versin sharutils-4.6.1-2
Gcc
Versin gcc-4.1.2-42.el5
Webmin
webmin-1.441-1
El sistema operativo Centos 5 fue instalado en un servidor virtual bajo Vmware con 512
Mb de RAM y un disco virtual de 14Gb.
2.2 Instalacin
Antes de nada instalamos algunas utilidades necesarias para la compilacin.
yum install sharutils
yum install gcc*
Descargar la version 2.6 de Squid en su version binaria (squid2.6.xxx.tar.gz)
Descargado de la pgina:
http://www.kaspersky.com/productupdates?chapter=199055161
Guardarlo en: /tmp
Descomprimir el archivo: $ tar zxpf squid-2.6xxx.tar.gz
Entrar a la carpeta creada: $ cd squid-2.6xxx
2.3 Compilacin
Dentro de la carpeta creada squid-2.6xxx, escribir la siguientes parmetros de
configuracin, uno es para poder trabajar con icap y el segundo parametro es
# ./configure --enable-icap-support --enable-follow-x-forwarded-for with-largefiles --enable-auth=basic --enable-basic-auth-helpers=LDAP --enable-externalacl-herlpers=ldap-group
# make
# make install
# make clean

enable-icap-support.- Este parmetro es necesario para que squid soporte el


protocolo icap, permitiendo de esta forma la comunicacin con el antivirus
Kaspersky.
enable-follow-x-forwarded-for.- Este parmetro permite al squid redireccionar
su puerto por defecto 3128 al puerto de dansguardian 8080.
with-large-files.- Permite al cache trabajar con archivos grandes.
Una vez finalizada la instalacin, se debe configurar el archivo squid.conf,
dentro de este archivo debemos de habilitar las siguientes lneas:
enable-auth=basic.- Permite la utenticacin bsica, mediante IP.
enable-basic-auth-helpers=LDAP.- Permite la autenticacin mediante LDAP.
enable-external-acl-herlpers=ldap-group.- Permite el uso de listas de acceso
con LDAP.
# vi /usr/local/squid/etc/squid.conf
visible_hostname squid
cache_effective_user squid
follow_x_forwarded_for allow localhost
Ahora aadimos la ACL localnet, la cual establece nuestra subred.

acl localnet src 10.17.10.0/255.255.255.128


http_access allow localnet

# chown squid /usr/local/squid/var/logs/


# mkdir /usr/local/squid/var/cache
# chown squid /usr/local/squid/var/cache/
Una vez realizado las configuraciones, iniciamos el cache de squid
/usr/local/squid/sbin/squid z
Ahora iniciamos el squid desde el binario:
/usr/local/squid/sbin/squid -N -d 1 D
2.4 Script de inicializacin
Para poder inicializar el squid en forma de servicio y poder ejecutar los
comandos conocidos: start/stop/restart.
Creamos el siguiente script, el cual es puesto en el directorio: etc/init.d/
Lo guardamos con el nombre de squid y le damos permisos de ejecucin.
7

#!/bin/sh
# chkconfig: 2345 99 00
case "$1" in
'start')
/usr/local/squid/sbin/squid
touch /var/lock/subsys/squid
;;
'stop')
/usr/local/squid/sbin/squid -k shutdown
rm -f /var/lock/subsys/squid
;;
*)
echo "Usage: $0 { start | stop }"
;;
esac
exit 0
2.5 Instalacin y configuracin modulo squid-webmin
Descargamos la ltima versin de Webmin webmin-1.450-1.noarch.rpm del
sitio: http://www.webmin.com.
Precedemos con la instalacin.
# rpm i webmin-1.450-1.noarch.rpm
Una vez instalado, se nos informa que para acceder a webmin, lo hacemos
mediante el siguiente url: https://localhost:10000, accediendo a este a
travs del usuario root, en este caso: usuario:root, password: root123.
Una vez instalado, ingresamos a webmin mediante el siguiente url:
https//:10.17.10.20:10000, entramos a Webmin configuration y luego Webmin
Modules.

Figura 2.1: Configuracin de webmin

Ahora instalamos el modulo squid desde webmin.com

Figura 2.2: Instalacin del mdulo squid en webmin

Una vez instalado el modulo squid aun no se mostrara en el webmin, por lo que
entramos de la siguiente manera: https//:10.17.10.20:10000/squid
Seguidamente nos mostrara el siguiente error:

Figura 2.3: Mensaje de error en squid-webmin

Ahora lo que demos hacer es entrar al link de Module config y configurar los
parmetros del squid.

Figura 2.4: Configuracin del mdulo squid en webmin

Lo que debemos cambiar es solo la parte de system configuration.


System configuration
Full path to squid config file: /usr/local/squid/etc/squid.conf
Command to start squid: /usr/local/squid/sbin/squid
Command to stop squid: /usr/local/squid/sbin/squid -k shutdown
Command to apply changes: Automatic
Squid executable: /usr/local/squid/sbin/squid
Full path to PID file: /usr/local/squid/var/logs/squid.pid
Full path to squid cache directory: /usr/local/squid/var/cache
Squid cachemgr.cgi executable: /usr/libexec/webmin/squid/cachemgr.cgi
Full path to squid log directory: /usr/local/squid/var/logs
Guardamos el modulo de configuracin y de inmediato nos mostrara el mdulo
Squid.

Figura 2.5: Men principal squid-webmin

10

Una vez instalado el mdulo squid-webmin, podremos realizar la configuracin


de ACLs a travs de este medio.

Figura 2.6: Listas de control de acceso en SQUID

3. Kaspersky
3.1 Requerimientos
Se requiere tener SQUID 2.5 o 2.6 con soporte ICAP instalado.
Ejecutable de instalacin: kav4proxy-5.5-51.i386.rpm versin en ingls,
descargado de la pgina:
http://www.kaspersky.com/productupdates?chapter=199055161
Licencia: Licencia de prueba, vlida por 30 das.
3.2 Instalacin
# rmp i kav4proxy-5.5-51.i386.rpm
Una vez instalado el rpm, este automticamente nos preguntar:
1. Especificar la ruta de la licencia.
2. Especificar la direccin IP y el puerto del servidor proxy.
http//:10.17.10.20:3128
3. Descargar los archivos de actualizacin para la base de datos.
4. Elegir la opcin de configuracin con el squid. En este caso elegimos la
opcin 4 que nos muestra la ruta del archivo squid.conf,:
/usr/local/squid/etc/squid.conf al aceptar esta opcin se aadirn las
siguientes lneas en squid.conf:
icap_enable on
icap_send_client_ip on
icap_service is_kav_resp respmod_precache 0
icap://10.17.10.20:1344/av/respmod
icap_service is_kav_req reqmod_precache 0
icap://10.17.10.20:1344/av/reqmod
icap_class ic_kav is_kav_req is_kav_resp
icap_access ic_kav allow all
11

5. Se instalara el modulo correspondiente en webmin.


Verificamos la instalacin del modulo KAV for proxy servers.

Figura 3.1: Mdulo Kaspersky en webmin

Dentro del icono AV RUN, verificamos si el servicio est en funcionamiento.

Figura 3.2: Submen AV RUN en kaspersky-webmin

3.3 Pruebas de virus


Para verificar nuestras pruebas de virus, entramos al sitio: http://www.eicar.org,
en este sitio podremos encontrar archivos de prueba para antivirus, los cuales
al abrirlos, kaspersky debera de detectarlos mostrando la siguiente pgina de
bloqueo:

12

Figura 3.3: Pagina de denegacin tras encontrar un archivo infectado

3.4 Funcionamiento del Antivirus Kaspersky

Figura 3.4: Diagrama de interaccin de kaspersky con el cliente y el servidor proxy

13

1. El usuario hace una peticin via HTTP a travs del proxy.


2. El servidor proxy verifica si el objeto HTTP se encuentra o no en cache.
3. El servidor proxy hace la transferencia del objeto con Kaspersky
mediante el protocolo ICAP.
4. Kaspersky hace el anlisis del archivo internamente.
5. Kaspersky hace un scanneo y verifica el estado del archivo y de acuerdo
al archivo de configuracin se determina si el archivo ser bloqueado o
no.
6. Kaspersky muestra el resultado bloqueando la pagina o permitiendo el
archivo, esto segn la configuracin.

3.5 Reactivacin de licencia


Para la reactivacin de la licencia debemos descargar la licencia en su versin
trial de la siguiente pgina:
http://www.kaspersky.com/kaspersky_security_internet_gateway_trial_download

Esta licencia es vlida por 30 das y soporta 50 usuarios.


Una vez que tengamos la licencia, lo copiamos en un directorio del servidor
Proxy, ejemplo /tmp/
Ahora ejecutamos el script kav4proxy-licensemanager con la opcin -a, este
nos permitir aadir una nueva licencia.
[root@proxy ~]# /opt/kaspersky/kav4proxy/bin/kav4proxy-licensemanager -a /tmp/

Observacin: Para poder renovar una licencia trial por otra licencia trial, la
nica opcin es de desinstalar kaspersky completamente y volver a instalarlo
con la nueva licencia.

4. Dansguardian
4.1 Instalacin
Antes de instalacin, actualizamos las librerias de libtool.
# yum update libtool
Descargamos la versin dansguardian-2.10.0.3.tar.gz del sitio:
www.dansguardian.org
Una vez que lo tenemos en la carpeta /tmp
Descomprimimos el archivo:
14

# tar zxpf dansguardian-2.10.0.3.tar.gz


# cd dansguardian-2.10.0.3
#./configure
--prefix=/usr/local/
--enable-icap
proxyuser=squid --with-proxygroup=squid
# make
# make install

--enable-kavd

--with-

prefix=/usr/local.- El parmetro determina la ruta en donde se instalar el


dansguardian.
enable-icap.- El parmetro habilita el protocolo ICAP, necesario para
establecer comunicacin con el antivirus de Kaspersky.
enable-kavd.- El parmetro define como antivirus de Proxy a Kaspersky.
with-proxyuser=squid.- El parmetro define el nombre de usuario de Proxy,
squid en este caso.
with-proxygroup=squid.- El parmetro define el nombre de grupoo de Proxy,
squid en este caso.

4.1.1 Instalacin de blacklists


Descargamos el archivo bigblacklist.tar.gz del la pgina:
http://dansguardian.org/?page=blacklist
descargamos el archivo en el directorio: /usr/local/etc/dansguardian/lists/
Descomprimimos el archivo: # tar zxpf bigblacklist.tar.gz
4.1.2 Configuracin archivo dansguardian.conf
Una vez instalado Dansguardian, procedemos con su cofiguracin.
Descomentamos las siguientes lineas:
#daemonuser = 'squid'
#daemongroup = 'squid'
daemonuser = 'squid'
daemongroup = 'squid'
habilitamos la opcin forwarded for:
forwardedfor = on

Configuramos las ips y puertos del Squid y del Dansguardian:

filterip = 10.17.10.20
filterport = 8080
proxyip = 127.0.0.1
proxyport = 3128
15

chown squid /usr/local/var/log/dansguardian/


loglocation = '/usr/local/var/log/dansguardian/access.log'
accessdeniedaddress = 'http://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl'

Una vez instalado debemos de configurar el script de arranque, systemv-init.


Este esta ubicado en:
/usr/local/share/dansguardian/scripts
# cd /usr/local/share/dansguardian/scripts
# cp systemv-init /etc/init.d/dansguardian
Para finalizar damos permisos de ejecucin al script.
4.2 Instalacin y configuracin modulo dansguardian-webmin
Ahora nos queda configurar el dansguardian, para facilitar la configuracin
usaremos el webmin como interfaz grfica.
Primero necesitamos el mdulo webmin-dasnguardian, en su versin web, ya
que la versin desde webmin.com es incompatible.
Descargamos la versin necesaria dgweb-0.6.3.3.wbm desde la siguiente
direccin: http://ftp.momo-i.org/pub/proxy/
Una vez descargada lo copiamos a tmp/ en este caso. Seguidamente abrimos
el webmin y nos vamos a la opcin Webmin configuration.

16

Figura 4.1: Men configuracin de webmin

Entramos en la opcin webmin modules, en esta opcin instalamos el modulo


desde local file.

Figura 4.2: Instalacin del modulo dansgaurdian en webmin

Una vez instalado abrimos el archivo dansguardian-lib.pl


# vi /usr/libexec/webmin/dgweb-0.6.3.3/dansguardian-lib.pl
Una vez abierto el archivo debemos modificarlo para que sea compatible con
ultima versin del dansguardian 2.10.0.3.

Aadimos la lnea $ver =~ /(2\.10\.\d+-?(\d+)?)/), como ultima condicin


en el if.
Cambiamos el: else return $0; por return $1;

## checkdgver();
## Check DG version for compatibility
sub checkdgver {
my $ver = `$config{'binary_file'} -v 2>&1`;
if ($ver =~ /(2\.4\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.5\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.6\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.7\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.8\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.9\.\d+-?(\d+)?)/ ||
$ver =~ /(2\.10)/
||
$ver =~ /(2\.10\.\d+-?(\d+)?)/) {
return $1;
} else {
return $1;
}
}

17

Guardamos el archivo y reiniciamo el webmin:


# restart service webmin
4.3 Configuracin del Dansguardian
Tras modificar el archivo dansguardian-lib.pl y reiniciar el Webmin, empezamos
a configurar el dansguardian desde el webmin.
Entramos a la opcin View Edit config de

Figura 4.3: Men principal dansgaurdian-webmin

Figura 4.4: configuracin del dansguardian via webmin

Una vez dentro de EDIT DG config, modificamos las siguientes opciones:


Filter IP
Es la IP de escucha del proxy, en este caso nuestra configuracin corresponde
a la direccin 10.17.10.20.
Filter port
Es el Puerto de escucha del dansguardian, en este caso es el 8080,
posteriormente este puerto ser configurado en el navegador de los clientes.
Proxy IP
Es el IP del proxy, como el Webmin el squid y el dasnguardian estan instalados
en la misma mquina, utilizamos el IP de defecto loopback 127.0.0.1.
Proxy port
Es el puerto de conexin del Danaguardian con el Squid. En nuestro caso
utilizamos el puerto de defecto 3128
18

Add-X-forwarded-For Add-X-forwarded-For
Estas opcines deben estar habilitadas para poder redireccionar el trfico del
puerto 3128 al 8080.
4.4 Configuracin de los grupos
Para poder tener un mejor control de filtrado sobre los usuarios, determinamos
4 tipos de grupos:
filter 1: Grupo sin salida web.
filter 2: Grupo filtrado a travs de listas grises y negras.
filter 3: Grupo con accesso web sin restricciones.
filter 4: Grupo con acceso web solo a sitios especficos.
Para poder crear los grupos, seguimos los siguientes pasos:
Copiamos
el
archivo
dansguardianf1.conf
con
los
nombres
dansguardianfN.conf, en donde N es el numero de grupo, de esta forma
tendremos: dansguardianf1.conf, dansguardianf2.conf, dansguardianf1
3.conf, dansguardianf4.conf.
4.4.1 Grupo 1
Grupo sin salida web, mode banned.
Archivo de configuracin dansguardianf1.conf
groupmode 0
4.4.2 Grupo 2
Grupo con salida web filtrada mediante listas negras.
Archivo de configuracin dansguardianf2.conf
groupmode 1
groupname = 'filtrado'
# Content filtering files location
bannedphraselist = '/usr/local/etc/dansguardian/lists/bannedphraselist'
weightedphraselist = '/usr/local/etc/dansguardian/lists/weightedphraselist'
exceptionphraselist = '/usr/local/etc/dansguardian/lists/exceptionphraselist'
bannedsitelist = '/usr/local/etc/dansguardian/lists/bannedsitelist'
greysitelist = '/usr/local/etc/dansguardian/lists/greysitelist'
exceptionsitelist = '/usr/local/etc/dansguardian/exceptionsitelist'
bannedurllist = '/usr/local/etc/dansguardian/lists/bannedurllist'
greyurllist = '/usr/local/etc/dansguardian/lists/greyurllist'
exceptionurllist = '/usr/local/etc/dansguardian/lists/exceptionurllist'
exceptionregexpurllist = '/usr/local/etc/dansguardian/lists/exceptionregexpurllist'
bannedregexpurllist = '/usr/local/etc/dansguardian/lists/bannedregexpurllist'
picsfile = '/usr/local/etc/dansguardian/lists/pics'
contentregexplist = '/usr/local/etc/dansguardian/lists/contentregexplist'
urlregexplist = '/usr/local/etc/dansguardian/lists/urlregexplist'
19

4.4.3 Grupo 3
Grupo con salida web sin restricciones.
Archivo de configuracin dansguardianf3.conf
groupmode = 2
# Filter group name
# name the group in the access logs
# Defaults to empty string
groupname = 'libre'
# Content filtering files location
bannedphraselist = '/usr/local/etc/dansguardian/listsf2/bannedphraselist'
weightedphraselist = '/usr/local/etc/dansguardian/listsf2/weightedphraselist'
exceptionphraselist = '/usr/local/etc/dansguardian/listsf2/exceptionphraselist'
bannedsitelist = '/usr/local/etc/dansguardian/listsf2/bannedsitelist'
greysitelist = '/usr/local/etc/dansguardian/listsf2/greysitelist'
exceptionsitelist = '/usr/local/etc/dansguardian/exceptionsitelist'
bannedurllist = '/usr/local/etc/dansguardian/listsf2/bannedurllist'
greyurllist = '/usr/local/etc/dansguardian/listsf2/greyurllist'
exceptionurllist = '/usr/local/etc/dansguardian/listsf2/exceptionurllist'
exceptionregexpurllist
=
'/usr/local/etc/dansguardian/listsf2/exceptionregexpurllist'
bannedregexpurllist = '/usr/local/etc/dansguardian/listsf2/bannedregexpurllist'
picsfile = '/usr/local/etc/dansguardian/listsf2/pics'
contentregexplist = '/usr/local/etc/dansguardian/listsf2/contentregexplist'
urlregexplist = '/usr/local/etc/dansguardian/listsf2/urlregexplist'
4.4.4 Grupo 4
Archivo de configuracin dansguardianf4.conf
Grupo con salida web a determinados sitios y dominios.
# Defaults to 0 if unspecified.
# Unauthenticated users are treated as being in the first filter group.
groupmode = 1
# Filter group name
# name the group in the access logs
# Defaults to empty string
groupname = 'especial'
# Content filtering files location
bannedphraselist = '/usr/local/etc/dansguardian/lists/bannedphraselist'
weightedphraselist = '/usr/local/etc/dansguardian/lists/weightedphraselist'
exceptionphraselist = '/usr/local/etc/dansguardian/lists/exceptionphraselist'
bannedsitelist = '/usr/local/etc/dansguardian/bannedsitelist'
greysitelist = '/usr/local/etc/dansguardian/lists/greysitelist'
exceptionsitelist = '/usr/local/etc/dansguardian/exceptionsitelist'
bannedurllist = '/usr/local/etc/dansguardian/lists/bannedurllist'
greyurllist = '/usr/local/etc/dansguardian/lists/greyurllist'
exceptionurllist = '/usr/local/etc/dansguardian/lists/exceptionurllist'
exceptionregexpurllist = '/usr/local/etc/dansguardian/lists/exceptionregexpurllist'
20

bannedregexpurllist = '/usr/local/etc/dansguardian/lists/bannedregexpurllist'
picsfile = '/usr/local/etc/dansguardian/lists/pics'
contentregexplist = '/usr/local/etc/dansguardian/lists/contentregexplist'
urlregexplist = '/usr/local/etc/dansguardian/lists/urlregexplist'
Para poder bloquear toda la salida web excepto aquellos sitios y dominios que
se encuentran en el archivo exceptionsitelist, se debe de configurar el
archivo
bannedsitelist
#Blanket Block. To block all sites except those in the
#exceptionsitelist and greysitelist files, remove
#the # from the next line to leave only a '**':
**
4.5 Identificacin de usuarios
Para la identificacin del cliente, utilizaremos el modo ident, el cual nos permite
identificar a los clientes mediante el nombre de usuario de su maquina.
Para poder utilizar el ident, primero habilitamos el plugin para ident en el archivo de
configuracin dansguardian.conf.
#authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-basic.conf'
#authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-digest.conf'
#authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-ntlm.conf'
authplugin = '/usr/local/etc/dansguardian/authplugins/ident.conf'
authplugin = '/usr/local/etc/dansguardian/authplugins/ip.conf'
Seguidamente debemos de instalar el servicio de ident en los clientes y asegurarse en al
archivo de servicios del Windows services.msc, que el servicio inicia automticamente
al iniciar Windows.

4.5.1 Identificacin de usuarios segn nombre del equipo


Para poder identificar a los clientes segn el nombre del equipo, los clientes deben de
tener instalado el servicio Identd.
Para definir los usuarios a travs del nombre de equipo, configuramos el archivo
filtergrouplist en el servidor proxy.
# vi /usr/local/etc/dansguardian/filtergroupslist
Para poder definir a que grupo pertenece un usuario, basta con definirlo de la siguiente
manera:
# Format is <user>=filter<1-9> where 1-9 are the groups
#
# Eg:
# daniel=filter2
21

Por defecto todos los usuarios pertenecen al grupo 1 (filter1).

4.5.2 Identificacin de usuarios segn IP


Para poder identificar a los clientes segn la direccin IP, no es necesario ningn
servicio extra como en el anterior caso.
Para definir los usuarios a travs del nombre de equipo, configuramos el archivo
ipgrups en el servidor proxy.
# vi /usr/local/etc/dansguardian/lists/authplugins/ipgroups
Para poder definir a que grupo pertenece un IP, seguimos la sintaxis:
IP=filterN
Ejemplos:
10.17.10.40 = filter2
# Ejemplo con subredes
#10.17.10.0/255.255.255.0 = filter1
# Rangos
10.17.10.10-10.17.10.40 = filter3
5. Iptables
Como ya sabemos el squid utilize el Puerto 3128, y el dasnguardian 8080, eso
quiere decir que ambos funcionan indistintamente del otro, par que ambos
puedan funcionar bajo el mismo puerto necesitamos aadir el siguiente iptable:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3128 -j REDIRECT --toport 8080
5.1 Bloqueo de windows-live-messenger
Para poder bloquear la salida del Messenger bloqueamos los puertos de salida
y la red de servidores con las que se conecta el Messenger.
iptables -A FORWARD -p TCP -dport 1863 -j REJECT
iptables -A FORWARD -p TCP -sport 1863 -j REJECT
iptables -A FORWARD -p TCP -d 64.4.13.0/24 -j REJECT
6. Script de arranque
El siguiente script de arranque ubicado en /etc/rc.d/rc.local, nos sirve para:

Establecer la configuracin correcta de las interfaces ethernet.


Establecer las rutas necesarias para la salida a Internet.

22

Definir las reglas iptables para el direccionamiento de puertos de salida y


para el bloqueo del Messenger.
Iniciar los servicios de squid, dansguardian y kaspersky.
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
ifconfig eth0 10.17.10.20 netmask 255.255.255.128
ifconfig eth1 10.17.10.152 netmask 255.255.255.224
route add default gw 10.17.10.135
route add -net 192.168.0.0/16 gw 10.17.10.2
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3128 -j REDIRECT --toport 8080
iptables -A FORWARD -p TCP -dport 1863 -j REJECT
iptables -A FORWARD -p TCP -sport 1863 -j REJECT
iptables -A FORWARD -p TCP -d 64.4.13.0/24 -j REJECT
/usr/local/squid/sbin/squid -k shutdown
/usr/local/squid/sbin/squid
/opt/kaspersky/kav4proxy/lib/bin/kav4proxy restart
service dansguardian restart

7. Opcin ICAP_PREVIEW
La opcin ICAP_PREVIEW reduce trfico y tiempo de filtracin. La opcin
PREVIEW de Kaspersky, simplifica el proceso de envi del objeto analizado
con el servidor Proxy. De esta forma el servidor proxy no esperar hasta que el
Antivirus termine de analizar el archivo y vuelva a reenviar nuevamente el
objeto descargado al servidor Proxy, sino que enviara el archivo por partes y
as la ultima parte del objeto ser enviado cuando Kaspersky haya terminado el
scanneo y este bloquear el objeto si estuviera infectado.
Para poder habilitar la opcin ICAP_PREVIEW, se configur los archivos de
configuracin kav4proxy.conf y squid.conf.

Squid.conf
23

En el archivo de configuracin del squid, todas las opciones del


ICAP_PREVIEW se encuentran comentadas, as que basta con borrar el
carcter # que precede a las siguientes lneas:
icap_preview_enable on.- Habilita la opcin de envio previo, la cual es una
opcin de kaspersky, la cual reduce la cantidad de trafico y tiempo en el
momento del anlisis de un archivo.
icap-preview_size 128.- Especifica el tamao de cabecera, en este caso de
128 kbps, la cabecera contiene la informacin necesaria para que el antivirus
pueda detectar si el archivo esta infectado.
icap_send_client_ip on.- Aade la IP del cliente en la cabecera del paquete
icap_preview.
icap_send_server_ip on.- Aade la IP del cliente en la cabecera del paquete.
icap_send_auth_user on.- Aade el nombre del cliente en la cabecera del
paquete, esto es necesario, ya que el servidor Proxy esta configurado tanto
para aceptar clientes segn su IP o segn su nombre de equipo.
En el archivo de configuracin del Kaspersky Kav4proxy.conf configuramos
las siguientes opciones:
MaxReqLength=1048576
El tamao mximo en bytes de un archivo, para poder ser escaneado
PreviewSize=512
El nmero de bytes que un cliente ICAP puede enviar al servidor ICAP durante
la etapa previa.

8. Autenticacin mediante LDAP


En el archivo squid.conf, aadir las siguientes lneas:

auth_param basic program /usr/local/squid/libexec/squid_ldap_auth -v 3 -b


ou=People,dc=grupofortaleza1,dc=com,dc=bo -f "uid=%s" -h 10.17.10.145

Esta lnea utiliza el script squid_ldap_auth para conectarse con el LDAP, -v 3 es la


versin de SAMBA , ou=People es el grupo de usuarios definidos en el servidor
samba, dc=grupofortaleza1,dc=com,dc=bo es el dominio a utilizar, "uid=%s" es la
variable que almacena el nombre de usuario, y finalmente nos conectamos al servidor
samba con el parmetro -h.

auth_param basic children 5


auth_param basic realm Identification proxy
24

Define que la autenticacin en el servidor proxy se realizara mediante el script


auth_param
auth_param basic credentialsttl 2 hours
Da un TTL (tiempo de vida) de dos horas para la sesin en el navegador.
En el archivo de dansguardian.conf, en la opcin Auth-Plugin, utilizar los plugins:
Proxy-basic, y ip. Estos dos plugins permitiran la autenticacin de los usuarios,
mediante IP y LDAP.
authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-basic.conf'
#authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-digest.conf'
#authplugin = '/usr/local/etc/dansguardian/authplugins/proxy-ntlm.conf'
#authplugin = '/usr/local/etc/dansguardian/authplugins/ident.conf'
authplugin = '/usr/local/etc/dansguardian/authplugins/ip.conf'
El archivo de autenticacin mediante LDAP es:
/usr/local/etc/dansguardian/lists/filtergroupslist
La otra forma de autenticarse es mediante la ip, que es mediante el archive:
/usr/local/etc/dansguardian/lists/authplugins/ipgroups
9. Configuracin de los navegadores
9.1 Internet Explorer

Figura 8.1: configuracin Proxy, Internet Explorer

25

Figura 8.2: configuracin Proxy, Internet Explorer

Figura 8.3: configuracin Proxy, Internet Explorer

9.2 Mozilla Firefox

26

Figura 7.4: configuracin Proxy, Mozila Firefox

Figura8.5: configuracin Proxy, Mozila Firefox

Figura 8.6: configuracin Proxy, Mozila Firefox

27

28

Potrebbero piacerti anche