Foro en Español

Reply
Highlighted

[Tutorial] Auto-Sponsor en Clearpass (Actualizado 2018)

- Flujo y configuración actualizado 27 de junio 2017-

Hace algún tiempo Samu escribió un post muy completo sobre cómo configurar la red para realizar “Auto-Sponsor” de un usuario durante un periodo de tiempo mientras se valida a sí mismo el correo electrónico. Una vez que se ha validado el correo, el usuario podrá tener más tiempo de acceso a Internet, de esta forma podemos confirmar que la cuenta que ha introducido el usuario es válida.

Desde hace pocos meses hemos recibido varias solicitudes para actualizar el Post y adaptarlo a las nuevas funcionalidades de Aruba. A continuación, recogemos la nueva configuración para hacer auto-sponsor. La configuración siguiente ha sido realizada con las siguientes versiones:

  • ClearPass 6.7.3
  • Aruba Central
  • IAP 6.5.4.5

Esta configuración será equivalente en formato IAP (sin Aruba Central) o mediante controladora. 

 

Configuración del IAP (Aruba Central)

En primer lugar creamos un SSID de tipo Guest, el aspecto de la configuración será de lo más sencillo posible:Picture1.png

 

En la configuración de “VLANs” configuraremos aquella que nos permite llegar al ClearPass para que los usuarios invitados puedan ver dicho portal.

 

En la configuración de “Security” será donde realicemos la configuración específica de validación contra ClearPass:

  • Activaremos MAC-Authentication, nos servirá para validar a los usuarios por la MAC y no mostrarles el portal si están ya registrados y validados previamente
  • Primary Server. Añadidemos un servidor RADIUS que será el propio ClearPass. En este caso para que funcione bien el CoA, recordar activar la pestaña “Dynamic Authorization”.
    • Nota: El ClearPass debe poder llegar al IAP sin NAT para que funcione bien el CoA

Picture2.png

 

  • Accounting
    • Usaremos el mismo servidor de autenticación
    • En mi caso he puesto cada minuto, pero podemos ampliarlo a 5 minuros por ejemplo. 

Picture3.png

 

En la configuración de Acceso deberemos configurar el acceso basado en Roles:

Picture4.png

Vamos a crear dos Roles:

Rol: invitados-logon.

Será el rol inicial que recibirán los usuarios al conectarse. El objetivo de este rol es enviar al usuario al portal cautivo de registro.

Picture5.png

La regla de redirección a portal cautivo será la siguiente:

Y a su vez, el portal cautivo será el siguiente:

Picture6.png

  • Definimos acceso del tipo: RADIUS Authenticaion
  • IP: La url del ClearPass. Debe ser resoluble por el usuario a través del direccionamiento IP y DNS que haya recibido.
  • URL: Dirección del portal cautivo en ClearPass. En nuestro caso hemos creado una página de auto-registro denominada “invitados”.

Picture7.png

Rol: invitados.

Será el rol que permitirá a los usuarios navegar libremente una vez que se hayan registrado. Si queréis, podéis implementar aquí cualquier otro tipo de control en la navegación de los invitados. La regla del rol será la siguiente:

Picture8.png

Configuración de ClearPass (Servicios)

Cuando los usuarios se conecten harán primero MAC-Caching. El proceso será el siguiente:

esquema.png

 

Cada una de las casuísticas son las siguientes:

  • Si el Endpoint no tiene ninguna fecha de registro, le mandamos al portal. Rol:invitados_logon 
  • Si el Endpoint tiene fecha de registri PERO no es HOY, le mandamos al portal. Rol:invitados_logon
  • Si se ha auto-registrado pero no le queda tiempo (haya o no validado el correo), le indicamos que ha excedido el tiempo. Rol: invitado_exceso
  • Si la cuenta de usuario está activa, no ha expirado y tiene tiempo para navegar y además se ha registrado hoy, el usuario es válido. Rol: invitados
  • Rol por defecto. Si no se cumple cualquiera de las condiciones anteriores, el usuario recibirá el portal para auto-registro. Rol: invitados_logon

Antes de comenzar, vamos a crear un filtro adicional para la BBDD de “Guest User Repository”. Vamos a usar esta BBDD como fuente autoritativa y será necesario que tengamos el tiempo que le queda a la cuenta. Para ello vamos a crear un nuevo filtro similar al que ya existe en Authentication. En este caso le he llamado “pendiente”:

Picture10.png

Lo he puesto de tipon Integer, la consulta tiene esta forma:

SELECT
       CASE WHEN expire_time is null or expire_time > now() THEN 'false'
       ELSE 'true'
       END AS is_expired,
       CASE WHEN enabled = true THEN 'true' ELSE 'false' END as is_enabled,
       CASE WHEN expire_time > now() THEN CAST(EXTRACT(epoch FROM (expire_time - NOW())) AS INTEGER)
            ELSE 0
       END AS remaining_expiration, expire_time::timestamp
FROM tips_guest_users
WHERE ((guest_type = 'USER') AND (user_id = '%{Endpoint:Username}') AND (app_name != 'Onboard'))

También vamos a crear un filtro nuevo en la BBDD de Insight para saber el consumo del usuario desde las 0:00h de hoy.

Picture11.png

Picture12.png

La consulta es de este tipo:

SELECT sum(duration) as diario from radius_acct  WHERE calling_station_id = '%{Connection:Client-Mac-Address-NoDelim}' AND start_time >=  CURRENT_DATE;

Vamos a modificar la consulta en la BBDD "Time Source", la idea es sacar la fecha actual a nivel de día (dia, mes, año) sin hora ni minutos y la llamamos "hoy" por ejemplo. La consulta sería de este tipo:

select date_trunc('hour', localtimestamp(0)) as today,  date_trunc('hour', localtimestamp(0)+ interval '1 days') as one_day, date_trunc('hour', localtimestamp(0)+interval '1 week') as one_week, date_trunc('hour', localtimestamp(0)+ interval '1 month') as one_month, date_trunc('hour', localtimestamp(0)+ interval '6 months') as six_months, date_trunc('day', localtimestamp(0)) as hoy

Esta consulta nos dará la fecha en formato: aaaa-mm-dd 00:00:00

Screen Shot 2018-06-27 at 18.27.54.png

Para tener control de que los usuarios tengan limitación diaria y saber cuando se han registrado vamos a crear un atributo para Endpoints en el menú Administration > Dictionaries > Attributes:

Screen Shot 2018-06-27 at 19.02.03.png

 

En cuanto a la configuración específica de ClearPass, vamos a crear 2 servicios:

Picture13.png

  • Servicio MAC-Caching. Todos los usuarios deberán hacer Match aquí siempre y dependiendo del estado le mandaremos a un rol u otro.
  • Servicio Registro de usaurios. Harán match aquí los usuarios cuando se hayan registrado en el portal.

Servicio Mac-Caching

Picture14.png

Como fuente de autenticación ponemos la BBDD de Endpoints:

Picture15.png

Como fuente de autorización vamos a incluir la BBDD de Time-Source y de Guest-User-Repository:

Screen Shot 2018-06-27 at 18.52.19.png

 

El Enforcement será como sigue:

Screen Shot 2018-06-27 at 19.16.06.png

 

Los Enforcement Profiles creados son los siguientes:

  • Enviar el rol para para mostrar el portal de registro (rol: invitados_logon)
  • Enviar el rol para mostrar información de que ha consumido el tiempo (rol:invitados_exceso)
  • Enviar el rol como usuario registrado (rol:invitados)
  • Enviar time-out para desconectar al usuario pasado el tiempo que le queda a la cuenta.

Picture21.pngPicture20.pngPicture19.pngPicture18.png

 

Servicio registro de usuarios

Creamos un servicio de tipo “RADIUS Enforcement ( Generic )” para validar a los usuarios que se registren por el portal cautivo.

Picture22.png

La configuración de la Authorization con las fuentes de Guest-User-Repository y Time-Source:

Screen Shot 2018-06-27 at 18.58.59.png

 

En este caso, el Enforcement es muy sencillo:Screen Shot 2018-06-27 at 18.57.44.png

 

 

 

Los Enforcement profile son:

  • Enviar Rol de invitado (incluido anteriormente)
  • Marcar el Endpoint como conocido
  • Enviar el atributo del username al AP (para darle limpieza en la visualización)
  • Poner un time-out al usuario invitado (incluido anteriormente)
  • Poner fecha de registro. Fija en el Endpoint la fecha de registro.

Picture24.png

Enforcement Profile - Poner fecha de registro:

Screen Shot 2018-06-27 at 18.57.18.png

Configuración de ClearPass: Creación portal de invitados

Creamos un portal de auto-registro. Importante indicar que este portal deberá tener el nombre que hayamos definido en el ROL de la solución WiFi. En nuestro caso se llamará “invitados”.

Vamos a activar la validación del Sponsor y el uso del campo llamado “email” para enviar el correo de validación:

Picture25.png

Además, haremos una extensión de la validación de la cuenta una vez que la haya validado. Modificamos el campo “Extendend Expiration”:

Picture26.png

Este periodo será el que el usuario tendrá activa la cuenta una vez que ha aceptado su correo electrónico.

Activar el campo: Account State a “Enabled”.

 

Ahora bien, el formulario de registro deberá tener un campo adicional que existe en ClearPass para indicar que la cuenta tendrá un tiempo inicial de validez. Este campo que debemos añadir en el formulario de registro es el siguiente:

Picture27.png

Vamos a modificarle para que sea un campo oculto (hidden field) y además para quel valor inicial sea el periodo de cortesía. En este caso le hemos puesto 5 minutos (5m) desde que se registra hasta que valide el correo electrónico. Podéis poner el tiempo que queráis.

 

Configuración de ClearPass: Creación de web para mostrar aviso de exceso de consumo:

Cuando el usuario se haya pasado de los tiempos de su cuenta vamos a enviarle a un portal para decírselo, así le informamos de lo que está pasando y evitamos problemas de falsas incidencias.

Para ello vamos a crear una página web indicando que ese trata de un acceso denegado:

Picture28.png

El nombre de esta web deberá coincidir con el que pongamos en el rol de “invitados_exceso”.


Rafael del Cerro Flores
ACMP, ACCP, ACDX#324, ACCX#711
Search Airheads
cancel
Showing results for 
Search instead for 
Did you mean: