Foro en Español

Reply
Aruba Employee

[Tutorial] - Integración de ClearPass con Telegram (mensajería)

Ya sois varios los que me habéis pedido detalle sobre la integración de ClearPass con el cliente de mensajería Telegram, así que vamos a detallar una integración básica para vuestros proyectos, lo cual es bastante sencillo de integrar.

En primer lugar, lo que tenemos que hacer es crear un “bot” de Telegram para poderlo usar para enviar y recibir datos. Para hacerlo, basta con ir a la web de Telegram y ver el detalle de cómo se crea. Aquí el enlace

 

Básicamente tenemos que abrir un chat con el botnet de Telegram llamado “botfather” y seguir los pasos que nos indica. Es importante que guardemos el Token de dicho Bot para la integración, para eso podemos escribir “/token” y nos dará el código necesario.0 Token.jpg

Una vez que tenemos la cuenta creada, vamos a lo interesante: Integrarlo con ClearPass.

 

En primer lugar, la integración la vamos a hacer con la API, por lo que podemos leer todos los comandos soportados aquí

 

En ClearPass la integración la vamos a hacer usando ClearPass Exchange, en primer lugar vamos a Administration > External Servers > Endpoint Context Server y creamos un server contra Telegram de este tipo:

1 server.png

Ahora, vamos a las acciones en sí, para ello Administratio > Dictionaries > Context Server Actions y creamos una acción nueva:

  • Server Tipe: http Genérico
  • Server Name: el que hayamos creado en el paso anterior
  • Action Name: El nombre de la acción que vayamos a crear
  • HTTP Method: POST
  • URL: /botXXXXXXXXXXXXX/sendMessage [sustituir las xxxx por el token del paso anterior, es decir debe quedar una cosa así: /bot12812378192378hjkhasd/sendMessage]

2 action.pngEn la pestaña Header añadimos:

  • Header Name: Content-Type
  • Header value: application/json

3 action - header.png

 En la pestaña Content:

  • Aquí metemos el código a enviar (mirar un poco más adelante).

En cuanto al código para enviar, debemos respetar el formato que nos diga Telegram en este apartado de su API: https://core.telegram.org/bots/api#sendmessage

  • Chat_ID: Este número representa el código del chat entre el bot.
  • Text

Para saber dicho "Chat_ID" tenemos que usar un workaround, es decir, abrir un navegador y poner esta URL

https://api.telegram.org/botXXXXXYYYYY/getUpdates (siendo XXXXYYYY el token).

 

Ahí aparecen las conversaciones que estén pendientes de leer con el bot. En vuestro teléfono abrir una conversación con el BOT y escribir cualquier cosa, después actualizáis la página web anterior y veréis un código como el siguiente:3.5 chat_id.png

En esta página debemos coger el “id” y usarlo en el apartado anterior. Un ejemplo de contenido puede ser el siguiente:4 action content.png

Una vez que ya tenemos definida la acción, podemos ya crear un Enforcement Profile para usar estos servidores de Telegram, debe ser del tipo “HTTP Based Enforcement” y con “target server” el servidor Telegram creado y el “action” que hayamos definido.5 profile http.png

6 profile http action.png

Con todo esto, podemos asociar el Profile a la Policy que corresponda según los criterios que queráis configurar. Como veis, es una integración muy sencilla y podemos enviar cualquier tipo de notificaciones a una cuenta de Telegram.

 

En otro post añadiré más detalle sobre la comunicación en el sentido contrario. Es decir, si el usuario escribe algo en el BOT que éste pueda hablar con el ClearPass para tomar acciones. Os dejo que juguéis un poco con este ejemplo y seguro que revisando un poco la API de Telegram podéis llegar a enviar mensajes más detallados.

 

Recordar que podéis hacer uso de variables en el apartado de Context Server Actions, llegando a enviar información mucho más detallada de dispositivo o usuario que tiene ClearPass controlado. Esto se hace definiendo en la pestaña “Attributes”:7 attributes.png

Y en el contenido del mensaje añadirlo de esta forma por ejemplo:

{
"chat_id":"78252239",
"text":"Alarma! \n - Fecha: %{fecha} \n - MAC: %{mac} \n - Empleado: %{empleado} \n - Device Category: %{DeviceCategory} \n - OS-Family: %{OSFamily} \n - Device Name: %{DeviceName}"
}

Con esto, el contenido que enviamos por Telegram podemos modificarlo con lo que conoce ClearPass:8 captura telegram.png

 

Como véis, ClearPass ofrece un abanico de integraciones de cualquier tipo. Os animamos que lo probéis y nos digáis que os parece, seguro que se os ocurren otras integraciones posibles a través de sistemas con API.

 


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