Integración con Slack
Slack es una plataforma de mensajería instantánea especialmente apreciada por la comunidad de desarrolladores de software. Con Pandora FMS podrá obtener mensajes de alerta con solo agregar un canal y una aplicación a la cuenta previamente creada en Slack. Luego debe configurar credenciales con comandos y acciones en Pandora FMS.
- Configuración en Slack: creación de aplicación
- Configuración en Slack: permisos y credenciales
- Configuración en Pandora FMS: creación de un comando de alerta
- Configuración en Pandora FMS: creación de una acción de alerta
Configuración en Slack: creación de aplicación
En las librerías de Pandora FMS se encuentra alojado el Slack conector CLI con información completa y detallada acerca de la integración con esta plataforma de mensajería instantánea. Debe comenzar por acceder a la página dedicada a la API de Slack, identificarse y utilizar la opción de crear aplicación ("Create a custom app"). Asigne un nombre y seleccione un espacio de trabajo para la aplicación y pulse en "Create app".
Ahora debe ir a la configuración de la aplicación recién creada y activar y agregar Incoming Webhooks.
Defina a continuación el canal por donde serán enviados los mensajes de la aplicación.
Seleccione el canal deseado y haga clic en Allow. El siguiente paso es la configuración de permisos de la aplicación en Slack.
Configuración en Slack: permisos y credenciales
En la información básica (Basic Information) podrá acceder a las credenciales de la aplicación (App Credentials), las cuales nunca deberá compartir, en ningún caso. De igual manera acceda a OAuth & Permissions para copiar el token de autorización que colocará en Pandora FMS.
Existen muchas otras configuraciones, como por ejemplo definir un conjunto limitado de direcciones IP que pueden hacer uso de la API, etcétera.
Diríjase al panel de conversación en Slack, dejando atrás la sección de la configuración API. Agregue o seleccione un canal por donde la aplicación enviará los mensajes, haga clic en More y luego en Add apps. Selecciones y adicione al canal la aplicación (en este ejemplo el canal es llamado # pfms
). Observe el siguiente tríptico:
Con toda esta configuración e información, solo queda configurar en Pandora FMS el envío de mensajes por Slack.
Configuración en Pandora FMS: creación de un comando de alerta
Primero debe instalar el Slack connector CLI, el cual puede descargar de la librería de Pandora FMS. Debe tener instalado en el servidor Pandora FMS las siguientes utilidades: python3
y python3-pip
. Con este último comando debe instalar los requerimientos del Slack connector CLI para Pandora FMS:
pip3 install -r requirements.txt
Se recomienda enviar un mensaje de prueba desde la misma línea de comandos. Familiarícese con los parámetros obligatorios: el token copiado, el nombre del canal y los datos a enviar.
-t TOKEN -c CHANNEL -d DATA
Por ejemplo:
python3 pandora-slack-cli.py.py -t <webhook-url> -c <channel id/name> -d "Data=5, Agent=Test, Module=Ping"
Debido a la flexibilidad de Pandora FMS, también existen parámetros adicionales que permiten, por ejemplo, el envío de gráficos por medio de la API externa de Pandora FMS.
Tome el tiempo necesario para aprender estos requerimientos. Para crear un comando de alerta vaya a la Consola web de Pandora FMS y haga clic en Alerts -> Commands -> Create.
Configure cada uno de los ocho campos que necesita el comando; en el fichero test-exec
que acompaña al Slack connector CLI puede obtener cada uno de ellos. Preste atención al campo número dos que debe contener, de manera oculta, el token de la aplicación creada en Slack. Agregue el grupo que podrá acceder al envío de alertas.
Haga clic en el botón Create para guardar el comando de alerta.
Configuración en Pandora FMS: creación de una acción de alerta
Las acciones de alerta permiten definir el cómo lanzar el comando. Vaya al menú Alerts -> Actions -> Create.
Seleccione en Command el comando de alerta creado en la página anterior, los campos se rellenarán automáticamente. Sin embargo siempre podrá personalizar los iconos o mensajes para los eventos de disparado de alerta y recuperación de alerta (Triggering y Recovery, respectivamente), por ejemplo.
Para guardar haga clic en Create. Para aplicar esta acción bien sea a un Módulo o Política, establezca una plantilla de alerta para tal fin.