Foro en Español

Reply
Contributor I
Posts: 29
Registered: ‎05-25-2015

Integracion Clearpass - Infoblox

[ Edited ]

Buenos días,

Queremos conseguir que cuando un usuario se autentique en Clearpass éste envíe a Infoblox  información acerca de su MAC, su IP, etc.

Existe un artículo de Aruba que trata justamente esto:

Guia Integracion CPPM-Infoblox

Si no he interpretado mal el funcionamiento es como sigue: cuando un usuario se autentica, Clearpass envía a Infoblox una solicitud vía API llamando a la función "macfilteraddress", en la que se solicita que se añada una nueva asociación MAC-usuario en el filtro "Clearpass" definido previamente en Infoblox (en la sección de DHCP).

 

Sin embargo este artículo es muy escueto y además no funciona tal cual viene, me explico:

- Errores: al definir la "Content Server Action" la URL no es válida, puesto que la versión de la "wapi" (Web API) 1.4 ya no está soportada por la versión 7.1 de Infoblox. Probando con el comando "curl" he conseguido hacer funcionar la v2.1. Con esto, usando "curl" consigo insertar información en el "MAC Filter" denominado "Clearpass", que he creado previamente en Infoblox:

 

[mi-usuario@maquina ~]$ curl -k -u usuario-api:****** -H "Content-Type: application/json" -X POST https://infoblox.dominio.es/wapi/v2.1/macfilteraddress -d '{"filter":"ClearPass","mac":"11:22:33:44:55:66","username":"mi-usuario"}'

"macfilteraddress/JJsdXXJWFjX2ZpbHRlcnNldF9sZFzc0AyYzoyNzpkNzoyNTozMzphYQ:11%3A22%3A33%3A44%3A55%3A66/ClearPass"

[mi-usuario@maquina ~]$

Tras su ejecución este comando efectivamente crea una entrada dentro del MAC Address Filter llamado "Clearpass".

- Respecto a que sea escueto me refiero a que no da ninguna indicación más de cómo crear un perfil de post_authentication y cómo disparar el update...

 

Consultando la guía de integración con Palo Alto (Guia integracion CPPM-PaloAlto) he conseguido realizar una configuración completa:

- 1 Configurar el Infoblox como "Endpoint Context Server"

- 2 Configurar una "Context Server Action" de tipo "Generic HTTP" (hasta aquí llega la guía publicada)

- 3 Configurar un perfil de tipo "Post_Authentication" con tres atributos de tipo "Session-Notify": "Server Type", "Server IP" y "Login Action", asignando a este último la "Context Server Action" definida en el punto 2.

- 4 Asignar el perfil a uno de los Servicios definidos

Y ahora viene el motivo de mi post, que no consigo hacer funcionar esto. Gracias al documento de Palo Alto he acudido al fichero de Log que guarda esta actividad (Collect Logs > Download > PolicyManagerLogs > async-netd > postauthctrl.log) y creo que he localizado el error, pero no sé cómo solucionarlo. Reproduzco el log:

2015-11-23 11:05:16,752 DEBUG  root             ipcndevice IPCNDevice._send_data ipaddress[infoblox.dominio.es] method[POST] auth_url[https://infoblox.dominio.es] url[/wapi/v2.1/macfilteraddress?] headers[{'Content-Type': 'application/json'}] payload[{"filter":"ClearPass", "mac":"%{Connection:Client-Mac-Address-Colon}", "username":"%{Authentication:Full-Username}"}]
2015-11-23 11:05:16,753 DEBUG  root             http2util Sending data={"filter":"ClearPass", "mac":"%{Connection:Client-Mac-Address-Colon}", "username":"%{Authentication:Full-Username}"}|headers={'Content-Type': 'application/json'}|uri=https://infoblox.dominio.es/wapi/v2.1/macfilteraddress?|method=POST
2015-11-23 11:05:16,760 WARNING root             sessionrestrictionhandler [0] <sessionrestrictionhandler.SessionRestrictionHandler instance at 0x350dcb0> Request handling is already in progress. Not processing requests at this time.
2015-11-23 11:05:16,787 DEBUG  root             http2util Received response={ "Error": "AdmConDataError: None (IBDataConflictError: IB.Data.Conflict:Invalid MAC address %{Connection:Client-Mac-Address-Colon})", 
  "code": "Client.Ibap.Data.Conflict", 
  "text": "Invalid MAC address %{Connection:Client-Mac-Address-Colon}"
}|status={'status': '400', 'transfer-encoding': 'chunked', 'set-cookie': 'ibapauth="client=API,group=clearpassAPIgroup,ctime=1448273116,timeout=28800,mtime=1448273116,ip=1.1.1.1,auth=LOCAL,user=aruba-clearpass,**************"; httponly; Path=/; secure', 'connection': 'close', 'pragma': 'no-cache', 'cache-control': 'no-cache, no-store', 'date': 'Mon, 23 Nov 2015 10:05:16 GMT', 'content-type': 'application/json'}
2015-11-23 11:05:16,788 ERROR  root             http2util Generic_HTTP_IPCN failed host:infoblox.dominio.es uri:https://infoblox.dominio.es/wapi/v2.1/macfilteraddress? status: {'status': '400', 'transfer-encoding': 'chunked', 'set-cookie': 'ibapauth="client=API,group=clearpassAPIgroup,ctime=1448273116,timeout=28800,mtime=1448273116,ip=1.1.1.1,auth=LOCAL,user=aruba-clearpass,**************"; httponly; Path=/; secure', 'connection': 'close', 'pragma': 'no-cache', 'cache-control': 'no-cache, no-store', 'date': 'Mon, 23 Nov 2015 10:05:16 GMT', 'content-type': 'application/json'}

Según interpreto hay un POST a Infoblox, pero éste responde con error diciendo la MAC es inválida. Según este log la MAC que envía CP no es una MAC tal cual, sino el texto

 
%{Connection:Client-Mac-Address-Colon}

Sin embargo este texto es justamente la variable que se configura dentro de la "Context Server Action" para extraer la MAC de los parámetros de la petición, pero por alguna razón no es capaz de resolver dicha variable.

 

Así que pregunto..... estoy haciendo algo mal? Me falta activar algo, alguna comilla...? O puede ser debido a algún bug?

 

Saludos

 

 

 

 

Contributor I
Posts: 29
Registered: ‎05-25-2015

Re: Integracion Clearpass - Infoblox

[Actualizo]

 

Mirando las "Context Server Actions" que ya vienen definidas en CPPM 6.5.4 (ej: "CheckPoint Login") resulta que se manejan variables como %name, %domain, %ip, %machine...

 

He probado a modificar la "Context Server Action" que definí para Infoblox, indicando ahora que grabe siempre la misma MAC y que coja la variable %name. Pues resulta que esto funciona, en Infoblox se graba una entrada con el username correcto... es decir, la variable %name contiene efectivamente el "username" del usuario que se ha autenticado.

 

Por más que he buscado no he logrado encontrar ningún enlace ni ayuda donde se documenten estas variables. Así que el problema se reduce a averiguar que variable guarda la MAC del terminal recién autenticado, si existe.

 

¿Alguien de Aruba que pueda arrojar luz acerca de estas variables, o si hay alguna forma de acceder a las variables típicas (ej:

"%{Connection:Client-Mac-Address-Colon}

)?

 

Saludos

Moderator
Posts: 867
Registered: ‎07-29-2010

Re: Integracion Clearpass - Infoblox

Adjunto una guía bastante más completa que la que has estado siguiendo, que como bien decías, era excesívamente escueta. Yo he ido siguiéndola y me funcionó todo a la primera, y eso que no tengo mucha idea de cómo configurar un Infoblox.

 

Sobre las dudas que planteabas, cada vez que veas %{} en Clearpass quiere decir que se trata de una variable. Por tanto, en un enforcement de tipo HTTP, cuando incluimos un %{Connection:Client-Mac-Address-Colon} en realidad estamos pasando el valor que vemos referenciadoen el "Access tracker" (en Input > Computed Attributes con ese nombre.

 

Un saludo

Samuel Pérez
ACMP, ACCP, ACDX#100

---

If I answerd your question, please click on "Accept as Solution".
If you find this post useful, give me kudos for it ;)
Contributor I
Posts: 29
Registered: ‎05-25-2015

Re: Integracion Clearpass - Infoblox

[ Edited ]

Gracias! Funcionó a la primera..........

 

Lo único que en la URL de la página 12 donde dice:

 

Set "URL" to "/wapi/v1.4/macfilteraddress? " without the quotes.


propondría cambiarlo por lo siguiente para las versiones más modernas de NiOS (el software de Infoblox):

Set "URL" to "/wapi/v2.1/macfilteraddress? " without the quotes. 

debido a que la versión NiOS 7.1 de Infoblox ya no soporta la API 1.4....

Search Airheads
Showing results for 
Search instead for 
Did you mean: