Servidor proxy Squid con usuarios

2
Servidor Proxy Web en Linux (Squid) con usuarios 1 Validación de usuarios en Squid Squid es un proxy cache muy flexible con el cual podremos crear nuestras propias reglas de acceso de forma muy sencilla dentro del archivo de configuración /etc/squid/squid.conf. 1.1 Identificación mediante direcciones IP Si se quiere filtrar usuarios por su dirección IP, se deben crear las listas utilizando la palabra reservada src. # lista que identifica a la dirección IP 192.168.1.99 acl ip-permitida src 192.168.1.99 # regla de acceso http_access allow ip-permitida Si se quieren varias direcciones IP y estas no forman un rango, lo que se puede hacer es crear un archivo de texto y escribirlas una debajo de la otra: acl ip-permitidas src "/etc/squid/ip-permitidas" dónde "/etc/squid/ip-permitidas" es el fichero en el que se encuentran las direcciones IP, en texto plano, dónde en cada línea hay una dirección IP, separadas solo por un salto de línea. Ejemplo: el archivo ip-permitidas tendría el siguiente contenido: 192.168.1.10 192.168.1.11 192.168.1.18 192.168.1.19 1.2 Identificación mediante direcciones MAC Si se quiere filtrar usuarios por su dirección IP, se deben crear las listas utilizando la palabra reservada arp. # lista que identifica a las direcciones MAC acl mac-permitidas arp "/etc/squid/mac-permitidas" # regla de acceso http_access allow mac-permitidas Al igual que en el caso anterior mac-permitidas contiene algo así: 00:01:02:BE:55:67 00:00:39:F6:D0:09 00:0B:6A:54:2A:B5 1.3 Validar por usuario Para que squid realice la validación por usuarios se tiene que añadir la siguiente línea al fichero de configuración: # /etc/squid/passwd es el nombre del fichero dónde se guardan los usuarios # y sus contraseñas. Puede cambiarse a gusto del administrador. auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd

description

Aprenderemos a crear usuarios y configurarlos

Transcript of Servidor proxy Squid con usuarios

Page 1: Servidor proxy Squid con usuarios

Servidor Proxy Web en Linux (Squid) con usuarios

1 Validación de usuarios en Squid Squid es un proxy cache muy flexible con el cual podremos crear nuestras propias reglas de acceso de forma muy sencilla dentro del archivo de configuración /etc/squid/squid.conf.

1.1 Identificación mediante direcciones IP Si se quiere filtrar usuarios por su dirección IP, se deben crear las listas utilizando la palabra reservada src.

# lista que identifica a la dirección IP 192.168.1.99

acl ip-permitida src 192.168.1.99

# regla de acceso

http_access allow ip-permitida

Si se quieren varias direcciones IP y estas no forman un rango, lo que se puede hacer es crear un archivo de texto y escribirlas una debajo de la otra:

acl ip-permitidas src "/etc/squid/ip-permitidas"

dónde "/etc/squid/ip-permitidas" es el fichero en el que se encuentran las direcciones IP, en texto plano, dónde en cada línea hay una dirección IP, separadas solo por un salto de línea. Ejemplo: el archivo ip-permitidas tendría el siguiente contenido:

192.168.1.10

192.168.1.11

192.168.1.18

192.168.1.19

1.2 Identificación mediante direcciones MAC Si se quiere filtrar usuarios por su dirección IP, se deben crear las listas utilizando la palabra reservada arp.

# lista que identifica a las direcciones MAC

acl mac-permitidas arp "/etc/squid/mac-permitidas"

# regla de acceso

http_access allow mac-permitidas

Al igual que en el caso anterior mac-permitidas contiene algo así:

00:01:02:BE:55:67

00:00:39:F6:D0:09

00:0B:6A:54:2A:B5

1.3 Validar por usuario Para que squid realice la validación por usuarios se tiene que añadir la siguiente línea al fichero de configuración:

# /etc/squid/passwd es el nombre del fichero dónde se guardan los usuarios

# y sus contraseñas. Puede cambiarse a gusto del administrador.

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd

Page 2: Servidor proxy Squid con usuarios

Seguidamente creamos los usuarios en el fichero declarado arriba:

// Se crea el fichero (opción -c) y se añade el usuario manuel

root@ubuntu6:/etc/squid# htpasswd -c /etc/squid/passwd manuel

New password:

Re-type new password:

Adding password for user manuel

// Se añade otro usuario llamado juan. ¡No se debe escribir la opción -c de

nuevo porque destruye el archivo que haya!

root@ubuntu6:/etc/squid# htpasswd /etc/squid/passwd juan

New password:

Re-type new password:

Adding password for user juan

//Nota: si se quiere modificar la contraseña de un usuario una vez que se

ha añadido, se puede hacer usando la opción -c, puesto que se detecta la

existencia del usuario y no destruye el fichero que había.

Luego, las reglas han de definirse utilizando la palabra reservada proxy_auth, como puede observarse en el siguiente ejemplo:

# lista de control de acceso

acl permitidos proxy_auth manuel

# regla de acceso

http_access allow permitidos

1.4 Unión de los métodos anteriores Todas las opciones anteriores pueden combinarse de manera que nos puede quedar si queremos una regla que valide por dirección MAC, que además sea un IP permitida y que nos pida usuario y contraseña. Las reglas serían así:

# listas de control de acceso

acl all src 0.0.0.0/0.0.0.0

acl usuarios-permitidos proxy_auth manuel

acl ip-permitida src "/etc/squid/ip-permitidas"

acl mac-permitidas arp "/etc/squid/mac-permitidas"

# reglas de control de acceso

http_access allow mac-permitidas ip-permitidas usuarios-permitidos

http_access deny all

de esta forma la regla funciona como un 'and' y tienen que cumplirse las tres para que tenga el acceso permitido.