Está en la página 1de 6

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

Cmo congurar Squid: Acceso por Autenticacin. Cmo congurar Squid: Acceso por Autenticacin.
Autor: Joel Barrios Dueas Correo electrnico: darkshram en gmail punto com Sitio de Red: http://www.alcancelibre.org/ Jabber ID: darkshram@jabber.org
Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1 1999-2007 Joel Barrios Dueas. Usted es libre de copiar, distribuir y comunicar pblicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicacin, a travs de cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra, o genera una obra derivada, slo puede distribuir la obra generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legtimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La informacin contenida en este documento y los derivados de ste se proporcionan tal cual son y los autores no asumirn responsabilidad alguna si el usuario o lector hace mal uso de stos.

Introduccin.
Es muy til el poder establecer un sistema de autenticacin para poder acceder hacia Internet, pues esto permite controlar quienes si y quienes no accedern a Internet sin importar desde que mquina de la red local lo hagan. Sera de modo tal que tendremos un doble control, primero por direccin IP y segundo por nombre de usuario y clave de acceso. Este manual considera que usted ya ha ledo previamente, a detalle y en su totalidad el manual "Como configurar Squid: Servidor Proxy" y que ha configurado exitosamente Squid como servidor proxy.

1 de 6

02/11/10 17:46

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

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.5.STABLE3 httpd-2.0.x (Apache) (opcional) openldap-servers-2.2.x (opcional)

Eligiendo el mdulo de autenticacin.


Este manual considera poder autenticar a travs de un fichero de texto simple con claves de acceso creadas con htpasswd o bien a travs de un servidor LDAP, lo cual constituye una solucin ms robusta.

Autenticacin a travs del mdulo LDAP.


Considerando que se ha configurado exitosamente OpenLDAP como servidor de autenticacin, solo se necesita definir el directorio (o subdirectorio) y el servidor LDAP a utilizar. La sintaxis utilizada para squid_ldap_auth es la siguiente:
squid_ldap_auth -b "Directorio-o-DN-a-utilizar" servidor-ldap-a-utilizar

Ejemplo:
squid_ldap_auth -b "cn=people,dc=su-dominio,dc=com" 127.0.0.1

Parmetros en /etc/squid/squid.conf Se debe editar el fichero /etc/squid.conf y se especificar el programa de autenticacin se utilizar. Localice la seccin que corresponde a la etiqueta auth_param basic program. Por defecto no est especificado programa alguno. Considerando que squid_ldap_auth se localiza en /usr/lib/squid/ncsa_auth, procederemos a aadir el siguiente parmetro:
auth_param basic program /usr/lib/squid/squid_ldap_auth -b "cn=people,dc=su-

2 de 6

02/11/10 17:46

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

dominio,dc=com" 127.0.0.1

Lo anterior conecta al directorio dc=su-red-local,dc=com en el servidor LDAP en 127.0.0.1.

Autenticacin a travs del mdulo NCSA


Squid puede utilizar el mdulo ncsa_auth, de la NCSA (National Center for Supercomputing Applications), y que ya viene incluido como parte del paquete principal de Squid en la mayora de las distribuciones actuales. Este mdulo provee una autenticacin muy sencilla a travs de un fichero de texto simple cuyas claves de acceso fueron creadas con htpasswd. Creacin del fichero de claves de acceso. Se requerir la creacin previa de un fichero que contendr los nombres de usuarios y sus correspondientes claves de acceso (cifradas). El fichero puede localizarse en cualquier lugar del sistema, con la nica condicin que sea asequible para el usuario squid. Debe procederse a crear un fichero /etc/squid/claves:
touch /etc/squid/claves

Salvo que vaya a utilizarse un guin a travs del servidor web para administrar las claves de acceso, como medida de seguridad, este fichero debe hacerse leble y escribible solo para el usuario squid:

chmod 600 /etc/squid/claves chown squid:squid /etc/squid/claves

A continuacin deberemos dar de alta las cuentas que sean necesarias, utilizando el mandato htpasswd -mismo que viene incluido en el paquete httpd2.0.x-. Ejemplo:
htpasswd /etc/squid/claves joseperez

3 de 6

02/11/10 17:46

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

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 seran shell, correo y Samba. Parmetros en /etc/squid/squid.conf Lo siguiente ser especificar que programa de autenticacin se utilizar. Localice la seccin que corresponde a la etiqueta auth_param basic program. Por defecto no est especificado programa alguno. Considerando que ncsa_auth se localiza en /usr/lib/squid/ncsa_auth, procederemos a aadir el siguiente parmetro:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/claves

/usr/lib/squid/ncsa_auth corresponde a la localizacin de el programa para autenticar y /etc/squid/claves al fichero que contiene las cuentas y sus claves de acceso.

Listas y reglas de control de acceso.


El siguiente paso corresponde a la definicin de una Lista de Control de Acceso. Especificaremos una denominada passwd la cual se configurar para utilizar obligatoriamente la autenticacin para poder acceder a Squid. Debe localizarse la seccin de Listas de Control de Acceso y aadirse la siguiente lnea:
acl password proxy_auth REQUIRED

Habiendo hecho lo anterior, deberemos tener en la seccin de Listas de Control de Acceso algo como lo siguiente:

4 de 6

02/11/10 17:46

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

Listas de Control de Accesos: autenticacin.


# # 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

5 de 6

02/11/10 17:46

Alcance Libre - Cmo congurar Squid: Acceso po...

http://www.alcancelibre.org/staticpages/index.php/...

Procedemos entonces a modificar la regla de control de accesos que ya tenamos para permitir el acceso a Internet. Donde antes tenamos lo siguiente:
http_access allow redlocal

Le aadimos passwd, la definicin de la Lista de Control de Acceso que requiere utilizar clave de acceso, a nuestra regla actual, de modo que quede como mostramos a continuacin:
http_access allow redlocal password

Habiendo hecho lo anterior, la zona de reglas de control de acceso debera quedar ms o menos de este modo: Reglas de control de acceso: Acceso por clave de acceso.
# # INSERT YOUR OWN RULE(S) HERE TO allow ACCESS FROM YOUR CLIENTS # http_access allow localhost http_access allow redlocal password http_access deny all

Finalizando procedimiento.
Finalmente, solo bastar reiniciar Squid para que tomen efecto los cambios y podamos hacer pruebas.
service squid restart

Alcance Libre http://www.alcancelibre.org/staticpages/index.php/19-1-como-squidautenticacion ()

6 de 6

02/11/10 17:46