Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Proxy Squid
Proxy Squid
Como se ve, proxy tiene un significado muy general, aunque siempre es sinónimo de
intermediario. También se puede traducir por delegado o apoderado (el que tiene el
poder).
Ventajas
En general (no sólo en informática), los proxies hacen posibles varias cosas nuevas:
• Control. Sólo el intermediario hace el trabajo real, por tanto se pueden limitar y
restringir los derechos de los usuarios, y dar permisos sólo al proxy.
• Ahorro. Por tanto, sólo uno de los usuarios (el proxy) ha de estar equipado para
hacer el trabajo real.
• Velocidad. Si varios clientes van a pedir el mismo recurso, el proxy puede hacer
caché: guardar la respuesta de una petición para darla directamente cuando otro
usuario la pida. Así no tiene que volver a contactar con el destino, y acaba más
rápido.
• Filtrado. El proxy puede negarse a responder algunas peticiones si detecta que
están prohibidas.
• Modificación. Como intermediario que es, un proxy puede falsificar
información, o modificarla siguiendo un algoritmo.
• Anonimato. Si todos los usuarios se identifican como uno sólo, es difícil que el
recurso accedido pueda diferenciarlos. Pero esto puede ser malo, por ejemplo
cuando hay que hacer necesariamente la identificación.
Desventajas
Funcionamiento
Un proxy permite a otros equipos conectarse a una red de forma indirecta a través de él.
Cuando un equipo de la red desea acceder a una información o recurso, es realmente el
proxy quien realiza la comunicación y a continuación traslada el resultado al equipo
inicial. En unos casos esto se hace así porque no es posible la comunicación directa y en
otros casos porque el proxy añade una funcionalidad adicional, como puede ser la de
mantener los resultados obtenidos (p.ej.: una página Web) en una cache que permita
acelerar sucesivas consultas coincidentes. Con esta denominación general de proxy se
agrupan diversas técnicas.
Funcionamiento
Los proxies web también pueden filtrar el contenido de las páginas Web servidas.
Algunas aplicaciones que intentan bloquear contenido Web ofensivo están
implementadas como proxies Web. Otros tipos de proxy cambian el formato de las
páginas web para un propósito o una audiencia específicos, para, por ejemplo, mostrar
una página en un teléfono móvil o una PDA. Algunos operadores de red también tienen
proxies para interceptar virus y otros contenidos hostiles servidos por páginas Web
remotas.
Ejemplo
Un cliente de un ISP manda una petición a Google la petición llega en un inicio
al servidor Proxy que tiene este ISP, no va directamente a la dirección IP del
dominio de Google. Esta página concreta suele ser muy solicitada por un alto
porcentaje de usuarios, por lo tanto el ISP la retiene en su Proxy por un cierto
tiempo y crea una respuesta mucho menor en tiempo. Cuando el usuario crea
una búsqueda el servidor Proxy ya no es utilizado y el ISP envía su petición y el
cliente recibe su respuesta ahora sí desde Google.
Otros usos
Como método extra y de ayuda en las descargas mediante aplicaciones P2P; el
cual es usado en Lphant y algunos Mods del Emule. (ver Webcaché en
aplicaciones P2P).
Ventajas
• Almacenar las páginas y objetos que los usuarios solicitan puede suponer una
violación de la intimidad para algunas personas.
Proxies transparentes
Un proxy transparente combina un servidor proxy con NAT de manera que las
conexiones son enrutadas dentro del proxy sin configuración por parte del cliente, y
habitualmente sin que el propio cliente conozca de su existencia. Este es el tipo de
proxy que utilizan los proveedores de servicios de internet (ISP). En España, la
compañía más expandida en cuanto a ADSL se refiere, ISP Telefónica, dejó de utilizar
proxy transparente con sus clientes a partir de Febrero de 2006.
Reverse Proxy
Esto es lo que ocurre cuando varios usuarios comparten una única conexión a Internet.
Se dispone de una única dirección IP pública, que tiene que ser compartida. Dentro de la
red de área local (LAN) los equipos emplean direcciones IP reservadas para uso privado
y será el proxy el encargado de traducir las direcciones privadas a esa única dirección
pública para realizar las peticiones, así como de distribuir las páginas recibidas a aquel
usuario interno que la solicitó. Estas direcciones privadas se suelen elegir en rangos
prohibidos para su uso en Internet como 192.168.x.x, 10.x.x.x, 172.16.x.x y 172.31.x.x
Esta situación es muy común en empresas y domicilios con varios ordenadores en red y
un acceso externo a Internet. El acceso a Internet mediante NAT proporciona una cierta
seguridad, puesto que en realidad no hay conexión directa entre el exterior y la red
privada, y así nuestros equipos no están expuestos a ataques directos desde el exterior.
Mediante NAT también se puede permitir un acceso limitado desde el exterior, y hacer
que las peticiones que llegan al proxy sean dirigidas a una máquina concreta que haya
sido determinada para tal fin en el propio proxy.
La función de NAT reside en los Cortafuegos y resulta muy cómoda porque no necesita
de ninguna configuración especial en los equipos de la red privada que pueden acceder a
través de él como si fuera un mero encaminador.
Proxy Abierto
Este tipo de proxy que acepta peticiones desde cualquier ordenador, esté o no conectado
a su red.
Entre otras cosas, Squid puede funcionar como Servidor Intermediario (Proxy) y
caché de contenido de Red para los protocolos HTTP, FTP, GOPHER y WAIS,
Proxy de SSL, caché transparente, WWCP, aceleración HTTP, caché de consultas
DNS y otras muchas más como filtración de contenido y control de acceso por IP y por
usuario.
Para poder llevar al cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos lo siguiente:
• Al menos squid-2.5.STABLE6
• httpd-2.0.x (Apache), como auxiliar de caché con aceleración.
• Todos los parches de seguridad disponibles para la versión del sistema
operativo que esté utilizando. No es conveniente utilizar un sistema con
posibles vulnerabilidades como Servidor Intermediario.
Debe tomarse en consideración que, de ser posible, se debe utilizar siempre las
versiones estables más recientes de todo sustento lógico que vaya a ser instalado para
realizar los procedimientos descritos en este manual, a fin de contar con los parches de
seguridad necesarios. Ninguna versión de Squid anterior a la 2.5.STABLE6 se
considera como apropiada debido a fallas de seguridad de gran importancia.
Si cuenta con un sistema con CentOS o White Box Enterprise Linux 3 o versiones
posteriores, utilice lo siguiente y se instalará todo lo necesario junto con sus
dependencias:
Si cuenta con un sistema con Red Hat™ Enterprise Linux 3 o versiones posteriores,
utilice lo siguiente y se instalará todo lo necesario junto con sus dependencias:
up2date -i squid httpd
El mandato iptables se utilizará para generar las reglas necesarias para el guión de
Enmascaramiento de IP. Se instala de modo predefinido en todas las distribuciones
actuales que utilicen núcleo (kernel) versiones 2.4 y 2.6.
Es importante tener actualizado el núcleo del sistema operativo por diversas cuestiones
de seguridad. No es recomendable utilizar versiones del kernel anteriores a la 2.4.21.
Actualice el núcleo a la versión más reciente disponible para su distribución.
Si cuenta con un sistema con CentOS o White Box Enterprise Linux 3 o versiones
posteriores, utilice lo siguiente para actualizar el núcleo del sistema operativo e
iptables, si acaso fuera necesario:
Si cuenta con un sistema con Red Hat™ Enterprise Linux 3 o versiones posteriores,
utilice lo siguiente para actualizar el núcleo del sistema operativo, e iptables si acaso
fuera necesario:
Antes de continuar.
Tenga en cuenta que este manual ha sido comprobado varias veces y ha funcionado en
todos los casos y si algo no funciona solo significa que usted no lo leyó a detalle y no
siguió correctamente las indicaciones.
Mal
# Opción incorrectamente habilitada
http_port 3128
Bien
# Opción correctamente habilitada
http_port 3128
Configuración básica.
• http_port
• cache_dir
• Al menos una Lista de Control de Acceso
• Al menos una Regla de Control de Acceso
• httpd_accel_host
• httpd_accel_port
• httpd_accel_with_proxy
De acuerdo a las asignaciones hechas por IANA y continuadas por la ICANN desde el
21 de marzo de 2001, los Puertos Registrados (rango desde 1024 hasta 49151)
recomendados para Servidores Intermediarios (Proxies) pueden ser el 3128 y 8080 a
través de TCP.
De modo predefinido Squid utilizará el puerto 3128 para atender peticiones, sin
embargo se puede especificar que lo haga en cualquier otro puerto disponible o bien que
lo haga en varios puertos disponibles a la vez.
Hoy en día puede no ser del todo práctico el utilizar un Servidor Intermediario
(Proxy) Transparente, a menos que se trate de un servicio de Café Internet u oficina
pequeña, siendo que uno de los principales problemas con los que lidian los
administradores es el mal uso y/o abuso del acceso a Internet por parte del personal. Es
por esto que puede resultar más conveniente configurar un Servidor Intermediario
(Proxy) con restricciones por clave de acceso, lo cual no puede hacerse con un Servidor
Intermediario (Proxy) Transparente, debido a que se requiere un diálogo de nombre
de usuario y clave de acceso.
Regularmente algunos programas utilizados comúnmente por los usuarios suelen traer
de modo predefinido el puerto 8080 (servicio de cacheo WWW) para utilizarse al
configurar que Servidor Intermediario (Proxy) utilizar. Si queremos aprovechar esto
en nuestro favor y ahorrarnos el tener que dar explicaciones innecesarias al usuario,
podemos especificar que Squid escuche peticiones en dicho puerto también. Siendo así
localice la sección de definición de http_port, y especifique:
#
# You may specify multiple socket addresses on multiple
lines.
#
# Default: http_port 3128
http_port 3128
http_port 8080
Si desea incrementar la seguridad, puede vincularse el servicio a una IP que solo se
pueda acceder desde la red local. Considerando que el servidor utilizado posee una IP
192.168.1.254, puede hacerse lo siguiente:
#
# You may specify multiple socket addresses on multiple
lines.
#
# Default: http_port 3128
http_port 192.168.1.254:3128
http_port 192.168.1.254:8080
Parámetro cache_mem.
• Objetos en tránsito.
• Objetos frecuentemente utilizados (Hot).
• Objetos negativamente almacenados en el caché.
De modo predefinido se establecen 8 MB. Puede especificarse una cantidad mayor si así
se considera necesario, dependiendo esto de los hábitos de los usuarios o necesidades
establecidas por el administrador.
cache_mem 16 MB
Este parámetro se utiliza para establecer que tamaño se desea que tenga el caché en el
disco duro para Squid. Para entender esto un poco mejor, responda a esta pregunta:
¿Cuanto desea almacenar de Internet en el disco duro? De modo predefinido Squid
utilizará un caché de 100 MB, de modo tal que encontrará la siguiente línea:
Los números 16 y 256 significan que el directorio del caché contendrá 16 directorios
subordinados con 256 niveles cada uno. No modifique esto números, no hay
necesidad de hacerlo.
Parámetro ftp_user.
ftp_user proxy@su-dominio.net
Controles de acceso.
Es necesario establecer Listas de Control de Acceso que definan una red o bien ciertas
máquinas en particular. A cada lista se le asignará una Regla de Control de Acceso que
permitirá o denegará el acceso a Squid. Procedamos a entender como definir unas y
otras.
Si se desea establecer una lista de control de acceso que abarque a toda la red local,
basta definir la IP correspondiente a la red y la máscara de la sub-red. Por ejemplo, si se
tiene una red donde las máquinas tienen direcciones IP 192.168.1.n con máscara de sub-
red 255.255.255.0, podemos utilizar lo siguiente:
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.15
192.168.1.16
192.168.1.20
192.168.1.40
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR
CLIENTS
#
En el siguiente ejemplo consideramos una regla que establece acceso permitido a Squid
a la Lista de Control de Acceso denominada permitidos:
Este tipo de reglas son útiles cuando se tiene un gran grupo de IP dentro de un rango de
red al que se debe permitir acceso, y otro grupo dentro de la misma red al que se debe
denegar el acceso.
Habiendo hecho lo anterior, la sección de listas de control de acceso debe quedar más o
menos del siguiente modo:
#
# Recommended minimum configuration:
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 todalared src 192.168.1.0/255.255.255.0
Habiendo hecho lo anterior, la zona de reglas de control de acceso debería quedar más o
menos de este modo:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR
CLIENTS
#
http_access allow localhost
http_access allow todalared
http_access deny all
Caso 2.
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.15
192.168.1.16
192.168.1.20
192.168.1.40
Habiendo hecho lo anterior, la sección de listas de control de acceso debe quedar más o
menos del siguiente modo:
#
# Recommended minimum configuration:
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 redlocal src "/etc/squid/listas/redlocal"
Habiendo hecho lo anterior, la zona de reglas de control de acceso debería quedar más o
menos de este modo:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR
CLIENTS
#
http_access allow localhost
http_access allow redlocal
http_access deny all
Parámetro chache_mgr.
De modo predefinido, si algo ocurre con el caché, como por ejemplo que muera el
procesos, se enviará un mensaje de aviso a la cuenta webmaster del servidor. Puede
especificarse una distinta si acaso se considera conveniente.
cache_mgr joseperez@midominio.net
Parámetro cache_peer: caches padres y hermanos.
Cuando se trabaja en redes muy grandes donde existen varios Servidores Intermediarios
(Proxy) haciendo caché de contenido de Internet, es una buena idea hacer trabajar todos
los caché entre si. Configurar caches vecinos como sibling (hermanos) tiene como
beneficio el que se consultarán estos caches localizados en la red local antes de acceder
hacia Internet y consumir ancho de banda para acceder hacia un objeto que ya podría
estar presente en otro caché vecino.
Ejemplo: Si su caché va a estar trabajando en paralelo junto con otros caches, es decir
caches hermanos, y considerando los caches tienen IP 10.1.0.1, 10.2.0.1 y 10.3.0.1,
todos escuchando peticiones HTTP en el puerto 8080 y peticiones ICP en puerto 3130,
especificando que no se almacenen en caché los objetos que ya están presentes en los
caches hermanos, utilice las siguientes líneas:
Pueden hacerse combinaciones que de manera tal que se podrían tener caches padres y
hermanos trabajando en conjunto en una red local. Ejemplo:
httpd_accel_host virtual
httpd_accel_port 0
httpd_accel_with_proxy on
rm -f /etc/squid/errors
Coloque un nuevo enlace simbólico apuntando hacia el directorio con los ficheros
correspondientes a los errores traducidos al español.
ln -s /usr/share/squid/errors/Spanish /etc/squid/errors
Nota: Este enlace simbólico debe verificarse, y regenerarse de ser necesario, cada
vez que se actualizado Squid ya sea a través de yum, up2date o manualmente con
el mandato rpm.
Una vez terminada la configuración, ejecute el siguiente mandato para iniciar por
primera vez Squid:
Si desea que Squid inicie de manera automática la próxima vez que inicie el sistema,
utilice lo siguiente:
chkconfig squid on
Cualquier error al inicio de Squid solo significa que hubo errores de sintaxis, errores de
dedo o bien se están citando incorrectamente las rutas hacia los ficheros de las Listas de
Control de Acceso.
Cuando se trata de errores graves que no permiten iniciar el servicio, puede examinarse
el contenido del fichero /var/log/squid/squid.out con el mandato less, more o cualquier
otro visor de texto:
less /var/log/squid/squid.out
• Firestarter: http://www.fs-security.com/
• Shorewall: http://www.shorewall.net/
En un momento dado se requerirá tener salida transparente hacia Internet para ciertos
servicios, pero al mismo tiempo se necesitará re-direccionar peticiones hacia servicio
HTTP para pasar a través del el puerto donde escucha peticiones Squid (8080), de
modo que no haya salida alguna hacia alguna hacia servidores HTTP en el exterior sin
que ésta pase antes por Squid. No se puede hacer Servidor Intermediario (Proxy)
Transparente para los protocolos HTTPS, FTP, GOPHER ni WAIS, por lo que dichos
protocolos tendrán que ser filtrados a través del NAT.
Introducción.
Denegar el acceso a ciertos Sitios de Red permite hacer un uso más racional del ancho
de banda con el que se dispone. El funcionamiento es verdaderamente simple, y consiste
en denegar el acceso a nombres de dominio o direcciones Web que contengan patrones
en común.
Software requerido.
Para poder llevar la cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos squid-2.5STABLE1.
Lo primero será generar una lista la cual contendrá direcciones Web y palabras
usualmente utilizadas en nombres de ciertos dominios. Ejemplos:
www.sitioporno.com
www.otrositioporno.com
sitioindeseable.com
otrositioindeseable.com
napster
sex
porn
mp3
xxx
adult
warez
celebri
Esta lista, la cual deberá ser completada con todas las palabras (muchas de está son
palabras obscenas en distintos idiomas) y direcciones Web que el administrador
considere pertinentes, la guardaremos como /etc/squid/sitiosdenegados.
Parámetros en /etc/squid/squid.conf
Debemos definir una Lista de Control de Acceso que a su vez defina al fichero
/etc/squid/sitiosdenegados. Esta lista la denominaremos como "sitiosdenegados". De
modo tal, la línea correspondiente quedaría del siguiente modo:
#
# Recommended minimum configuration:
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 redlocal src 192.168.1.0/255.255.255.0
acl password proxy_auth REQUIRED
acl sitiosdenegados url_regex "/etc/squid/sitiosdenegados"
Si por ejemplo el incluir una palabra en particular afecta el acceso a un sitio Web,
también puede generarse una lista de dominios o palabras que contengan un patrón pero
que consideraremos como apropiados.
Como ejemplo: vamos a suponer que dentro de la Lista de Control de Acceso de sitios
denegados está la palabra sex. esta denegaría el acceso a cualquier nombre de dominio
que incluya dicha cadena de caracteres, como extremesex.com. Sin embargo también
estaría bloqueando a sitios como sexualidadjovel.cl, el cual no tiene que ver en lo
absoluto con pornografía, sino orientación sexual para la juventud. Podemos añadir este
nombre de dominio en un ficheros que denominaremos /etc/squid/sitios-inocentes.
Este fichero será definido en una Lista de Control de Acceso del mismo modo en que se
hizo anteriormente con el fichero que contiene dominios y palabras denegadas.
Para hacer uso de el fichero, solo bastará utilizar la expresión ! en la misma línea
utilizada para la Regla de Control de Acceso establecida para denegar el mismo.
La regla anterior especifica que se denegará el acceso a todo lo que comprenda la Lista
de Control de Acceso denominada denegados excepto lo que comprenda la Lista de
Control de Acceso denominada inocentes. es decir, se podrá acceder sin dificultad a
www.sexualidadjoven.cl manteniendo la restricción para la cadena de caracteres sex.
Finalizando procedimiento.
Finalmente, solo bastará reiniciar Squid para que tomen efecto los cambios y podamos
hacer pruebas.
Introducción.
Denegar el acceso a ciertos tipos de extensiones de fichero permite hacer un uso más
racional del ancho de banda con el que se dispone. El funcionamiento es
verdaderamente simple, y consiste en denegar el acceso a ciertos tipos de extensiones
que coincidan con lo establecido en una Lista de Control de Acceso.
Para poder llevar la cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos squid-2.5STABLE1.
Lo primero será generar una lista la cual contendrá direcciones Web y palabras
usualmente utilizadas en nombres de ciertos dominios. Ejemplos:
\.avi$
\.mp4$
\.mp3$
\.mp4$
\.mpg$
\.mpeg$
\.mov$
\.ra$
\.ram$
\.rm$
\.rpm$
\.vob$
\.wma$
\.wmv$
\.wav$
\.doc$
\.xls$
\.mbd$
\.ppt$
\.pps$
\.ace$
\.bat$
\.exe$
\.lnk$
\.pif$
\.scr$
\.sys$
\.zip$
\.rar$
Esta lista, la cual deberá ser completada con todas las extensiones de fichero que el
administrador considere pertinentes, la guardaremos como /etc/squid/listaextensiones.
Parámetros en /etc/squid/squid.conf
Debemos definir una Lista de Control de Acceso que a su vez defina al fichero
/etc/squid/listaextensiones. Esta lista la denominaremos como "listaextensiones". De
modo tal, la línea correspondiente quedaría del siguiente modo:
Finalizando procedimiento.
Finalmente, solo bastará reiniciar Squid para que tomen efecto los cambios y podamos
hacer pruebas.
Denegar el acceso a ciertos en ciertos horarios permite hacer un uso más racional del
ancho de banda con el que se dispone. El funcionamiento es verdaderamente simple, y
consiste en denegar el acceso en horarios y días de la semana.
Este manual considera que usted ya ha leído previamente, a detalle y en su totalidad el
manual "Como configurar Squid: Servidor Proxy" y que ha configurado exitosamente
Squid como servidor proxy.
Software requerido.
Para poder llevar la cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos squid-2.5STABLE1.
Procedimientos
La sintaxis para crear Listas de control de acceso que definan horarios es la siguiente:
Los días de la semana se definen con letras, las cuales corresponden a la primera letra
del nombre en inglés, de modo que se utilizarán del siguiente modo:
• S - Domingo
• M - Lunes
• T - Mastes
• W - Miercoles
• H - Jueves
• F - Viernes
• A - Sábado
Ejemplo:
Esta regla define a la lista semana, la cual comprende un horario de 09:00 a 21:00 horas
desde el Lunes hasta el Viernes.
Este tipo de listas se aplican en las Reglas de Control de Acceso con una mecánica
similar a la siguiente: se permite o deniega el acceso en el horario definido en la Lista
de Control de Acceso denominada X para las entidades definidas en la Lista de Control
de Acceso denominada Y. Lo anterior expresado en una Regla de Control de Acceso,
quedaís del siguiente modo:
Más ejemplos.
Si se necesita una lista denominada musica que defina a todos los ficheros con
extensión .mp3, utilizaríamos lo siguiente:
Si queremos denegar el acceso al todo contenido con extensión .mp3, la regla quedaría
del siguiente modo:
Finalizando procedimiento.
Finalmente, solo bastará reiniciar Squid para que tomen efecto los cambios y podamos
hacer pruebas.
service squid restart
Una útil funcionalidad que querrá aplicar cualquier administrador de sistemas con un
Servidor Intermediario (Proxy) con Squid.
Acerca de Squid.
Entre otras cosas, Squid puede funcionar como Servidor Intermediario (Proxy) y
caché de contenido de Red para los protocolos HTTP, FTP, GOPHER y WAIS,
Proxy de SSL, caché transparente, WWCP, aceleración HTTP, caché de consultas
DNS y otras muchas más como filtración de contenido y control de acceso por IP y por
usuario.
URL: http://www.squid-cache.org/
Acerca de ClamAV.
URL: http://www.clamav.net/
Acerca de SquidClamAV Redirector.
El re-director de ClamAV para Squid es un guión auxiliar para Squid para examinar
contenido en busca de Virus para una lista de extensiones definidas. El guión se encarga
de la petición tal y como es solicitada hacia Squid, examinando ésta en busca de virus.
Reescribe el URL desde Squid hacia una página de información en caso de encontrarse
un virus.
URL: http://www.jackal-net.at/tiki-read_article.php?articleId=1
Procedimientos.
Instalación del equipamiento lógico (Software) requerido.
Si dispone de un sistema con Red Hat™ Enterprise Linux 4, CentOS 4 o White Box
Enterprise Linux 4, puede utilizar el siguiente depósito yum:
[mailscanner-lpt]
name=MailScanner Linux Para Todos para Enterprise Linux 4.0
baseurl=http://www.linuxparatodos.net/lpt/whitebox/4.0/mailscanner/
gpgkey=http://www.linuxparatodos.net/lpt/LPT-RPM-KEY
Configuración de Squid.
redirect_program /usr/bin/SquidClamAV_Redirector.py -c
/etc/squid/SquidClamAV_Redirector.conf
redirect_children 5
Deben agregarse además las siguientes reglas de control de acceso en cualquier parte de
/etc/squid/squid.conf, justo después de donde se localizan acl all src 0.0.0.0/0.0.0.0 y
acl localhost src 127.0.0.1/255.255.255.255:
Configuración de squidclamav_redirector.
Una vez terminada la configuración, ejecute el siguiente mandato para iniciar por
primera vez Squid:
Depuración de errores
Cualquier error al inicio de Squid solo significa que hubo errores de sintaxis, errores de
dedo o bien se están citando incorrectamente las rutas hacia los ficheros de las Listas de
Control de Acceso.
Cuando se trata de errores graves que no permiten iniciar el servicio, puede examinarse
el contenido de el fichero /var/log/squid/squid.out con el mandato less, more o
cualquier otro visor de texto:
less /var/log/squid/squid.out
Es muy útil el poder establecer un sistema de autenticación para poder acceder hacia
Internet, pues esto permite controlar quienes si y quienes no accederán a Internet sin
importar desde que máquina de la red local lo hagan. Sera de modo tal que tendremos
un doble control, primero por dirección IP y segundo por nombre de usuario y clave de
acceso.
Para poder llevar la cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos lo siguiente:
• squid-2.5.STABLE3
• httpd-2.0.x (Apache) (opcional)
• openldap-servers-2.2.x (opcional)
Este manual considera poder autenticar a través de un fichero de texto simple con claves
de acceso creadas con htpasswd o bien a través de un servidor LDAP, lo cual constituye
una solución más robusta.
Ejemplo:
Parámetros en /etc/squid/squid.conf
touch /etc/squid/claves
Salvo que vaya a utilizarse un guión a través del servidor web para administrar las
claves de acceso, como medida de seguridad, este fichero debe hacerse leíble y
escribible solo para el usuario squid:
A continuación deberemos dar de alta las cuentas que sean necesarias, utilizando el
mandato htpasswd -mismo que viene incluido en el paquete httpd-2.0.x-. Ejemplo:
Lo anterior solicitará teclear una nueva clave de acceso para el usuario joseperez y
confirmar tecleando ésta de nuevo. Repita con el resto de las cuentas que requiera dar de
alta.
Todas las cuentas que se den de alta de este modo son independientes a las ya existentes
en el sistema. Al dar de alta una cuenta o cambiar una clave de acceso lo estará
haciendo EXCLUSIVAMENTE para el acceso al servidor Proxy. Las cuentas son
independientes a las que se tengan existentes en el sistema como serían shell, correo y
Samba.
Parámetros en /etc/squid/squid.conf
Habiendo hecho lo anterior, la zona de reglas de control de acceso debería quedar más o
menos de este modo:
Finalmente, solo bastará reiniciar Squid para que tomen efecto los cambios y podamos
hacer pruebas.
Squid incluye una herramienta que permite monitorizar toda la actividad y tráfico que
pasa a través del cache. Dentro de /usr/lib/squid se localiza un guión CGI el cual, si
utilizo un paquete RPM para instalar Squid, se copió automáticamente dentro del
directorio /var/www/cgi-bin/ al momento de instalarse Squid.
Software requerido
Para poder llevar la cabo los procedimientos descritos en este manual y documentos
relacionados, usted necesitará tener instalado al menos lo siguiente:
• squid-2.5STABLE1
• httpd-2.0.x (Apache)
• mod_perl
Procedimientos
Añada una regla que permita el acceso a la Lista de Control de Acceso denominada
administrador:
Añada una línea para definir una clave de acceso para el administrador del cache. No
utilice la clave de acceso de root ni ninguna otra clave de acceso importante, esto
debido a que la clave de acceso del administrador del cache se almacena en texto
simple. Sin embargo, procure que está sea tan complicada como sea posible (mínimo 8
caracteres combinando mayúsculas, minúsculas, números y símbolos).
Finalizando procedimiento.
Finalmente, solo bastará reiniciar Squid para que tomen efecto los cambios y podamos
hacer pruebas.
Inicie Apache (si aún no lo ha hecho todavía) y desde la estación de trabajo definida en
la Lista de Control de Acceso denominada administrador (ejemplo: 192.168.1.25),
suponiendo que su cache tiene IP 192.168.1.1, intente acceder con su navegador hacia
http://192.168.1.1/cgi-bin/cachemgr.cgi.
Para modificar las contraseñas del fichero de contraseñas, se debe utilizar el siguiente
mandato:
FUENTES:
WIKIPEDIA
www.linuxparatodos.net