Tabla de Contenidos

Funciones de seguridad

Sistema de autenticación con terceros

Local Pandora FMS

Autenticación por defecto, indica que se realizará usando la base de datos interna de Pandora FMS. Los usuarios tipo superadmin por seguridad siempre se autentican de esta manera, el resto de los tipos de autenticaciones tiene la opción local como respaldo (fallback).

Active Directory

ldap://addc.mydomain

LDAP

yum install openldap*

O

apt install ldap-utils

Campos importantes:

Advanced Config LDAP

Los atributos deben tener el siguiente formato Nombre_atributo = Valor_Atributo.

Doble autenticación

Para usar esta funcionalidad el administrador deberá activar la doble autenticación en la sección de autenticación de la configuración global de la Consola web de Pandora FMS:

Management → Settings → System Settings → Authentication → Double authentication.

Los usuarios podrán elegir si habilitar la autenticación en dos pasos en sus cuentas accediendo a la opción de Editar mi usuario.

Esta funcionalidad necesita que el PFMS server y los dispositivos móviles tengan una fecha y hora sincronizadas de manera precisa.

También será necesario disponer de la aplicación generadora de códigos en un dispositivo móvil de la propiedad de cada usuario. Para conocer dónde y cómo descargarla:

Se puede utilizar el sistema de notificación PFMS para informar a todos los usuarios que está disponible 2FA y cómo activar esta opción personal. Para ello en el menú Operation → Workspace → Messages → New message se redacta un mensaje al grupo All similar a este:

Force 2FA for all users is enabled

Al habilitar esta opción forzará a que todos los usuarios utilicen la autenticación en dos pasos.

Para desactivar esta funcionalidad a un usuario específico sin usar la interfaz gráfica, un administrador puede utilizar la CLI PFMS.

SAML

SAML es un estándar abierto de autentificación y autorización basado en XML. Pandora FMS puede funcionar como un proveedor de servicios con su proveedor de identidades SAML interno.

Los administradores siempre se autentican contra la base de datos local.

Se deben realizar varios pasos antes de poder utilizar SAML en Pandora FMS.

Tener operativo un servidor SAML.

Configurar los parámetros en Pandora FMS.

Si se piensa utilizar Azure con SAML se debe configurar dicho servidor.

Instalación de SimpleSAMLphp 2.0

Se debe descargar SimpleSAMLphp versión 2.3.2 desde su repositorio oficial:

y luego ser subido al Pandora FMS server. Si el PFMS server tiene acceso a internet y se tiene instalado wget se puede utilizar directamente la siguiente instrucción en un directorio que cuente con espacio y derechos de escritura suficientes:

wget https://github.com/simplesamlphp/simplesamlphp/releases/download/v2.3.2/simplesamlphp-2.3.2-full.tar.gz

Se descomprime el fichero descargado con:

tar -xvf simplesamlphp-2.3.2-full.tar.gz

Se debe mover la carpeta a su ubicación final:

mv simplesamlphp-2.3.2 /opt/simplesamlphp

Para compartir acceso con Pandora FMS se debe crear el siguiente enlace simbólico:

ln -s /opt/simplesamlphp/public /var/www/html/simplesamlphp

SimpleSAMLphp basa su configuración en el fichero config.php, con la ubicación final establecida anteriormente se ha de renombrar la plantilla que trae por defecto:

mv /opt/simplesamlphp/config/config.php.dist /opt/simplesamlphp/config/config.php

Así se tendrá la ruta completa del fichero de configuración en:

/opt/simplesamlphp/config/config.php

Con el editor de texto favorito se deben editar los siguientes valores (nótese que se debe cambiar pandora.local por la URL de la Consola web PFMS y conservar la coma al final de línea ya que forman parte de bloques de instrucciones):

/opt/simplesamlphp/config/config.php
'baseurlpath' => 'https://pandora.local/simplesamlphp/',
'auth.adminpassword' => '123pandora',


  • Nótese que se debe cambiar pandora.local por la URL de la Consola web PFMS y conservar la coma al final de línea ya que forma parte de bloques de instrucciones.
  • Siempre se debe utilizar una URL en vez de una dirección IP. Siguiendo el caso dado de utilizar pandora.local, esta “URL” se debe agregar al fichero /etc/hosts del sistema operativo (nota: solamente con propósitos didácticos).


Se deben guardar los cambios del fichero y salir a la línea de comandos.

Si aparece algún error de permisos por cache se debe aplicar:

mkdir /var/cache/simplesamlphp && chown apache:apache /var/cache/simplesamlphp


De esta manera se tendrá a SimpleSAMLphp en funcionamiento y deberá mostrar la página de inicio en la URL https://pandora.local/simplesamlphp/ (se debe cambiar pandora.local por la URL de la Consola web PFMS).

Dado el caso que se conecte por HTTP en vez de HTTPS la autenticación fallará hasta que el servidor web Apache sea configurado para que escuche por el puerto seguro 443.

Para acceder a la administración de SimpleSAMLphp primero se debe cambiar el nombre al fichero authsources.php.dist:

mv /opt/simplesamlphp/config/authsources.php.dist /opt/simplesamlphp/config/authsources.php

Se copia el contenido del XML descargado anteriormente, se pega y se procesa; esto generará un texto de configuración para PHP el cual se copia y se adiciona al final del fichero /opt/simplesamlphp/metadata/saml20-idp-remote.php. Luego se deben guardar dichas adiciones y salir de la edición de dicho fichero.

Se accede mediante la URL https://pandora.local/simplesamlphp/admin/ (se debe cambiar pandora.local por la URL de la Consola web PFMS):

Configuración de Pandora FMS con SAML

Menú Management → Setup → Setup → Authentication






Los siguientes valores son comunes:

Algunos campos notables:

Antes de configurar cualquier servicio de terceros con SAML se recomienda probar y comprobar localmente la instalación realizada de SimpleSAMLphp.

Configuración de Azure con SAML

En servicios de Azure® se debe acceder a la sección Extra ID:

Acceder luego a Aplicaciones empresariales:

Se crea una nueva aplicación (o se utiliza una existente):

Se accede a inicio de sesión único:

Se edita la configuración básica de SAML:

Se rellenan los siguientes campos, con el ID para la aplicación, la dirección del SimpleSAMLphp instalado (se debe cambiar pandora.local por la URL de la Consola web PFMS) y la dirección donde Azure® tendrá que redirigir cuando se cierre la sesión:

Descargar el fichero XML con metadatos de federación el cual se utilizará más adelante:

Y por último se debe guardar el ID que de el paso anterior y la URL del identificador extra:

Configuración en SimpleSAMLphp

Se debe editar el fichero /opt/simplesamlphp/config/authsources.php con los siguientes valores:

Y por la página web de SimpleSAMLphp al menú de Federación y luego a la sección Herramientas para la conversión de XML a PHP:

Se debe cambiar el nombre de saml20-idp-remote.php.dist con:

mv /opt/simplesamlphp/metadata/saml20-idp-remote.php.dist /opt/simplesamlphp/metadata/saml20-idp-remote.php

Se copia el contenido del XML descargado anteriormente, se pega y se procesa; esto generará un texto de configuración para PHP el cual se copia y pega dentro del fichero /opt/simplesamlphp/config/authsources.php reemplazando todo su contenido.

Si todo está correcto se procede a realizar una prueba:

Obteniendo el siguiente resultado:

El correo electrónico e identificador de usuario se puede sacar de los atributos que devuelve Azure® en la prueba realizada anteriormente:

Para la configuración avanzada se puede profundizar el mapeo de propiedades o seleccionar una por defecto en caso de no hacer coincidencia con ninguna:

Cifrado de contraseñas

Pandora FMS permite cifrar las contraseñas que se almacenan en la base de datos.

La clave de cifrado se genera a partir de una contraseña proporcionada por el usuario y no se guarda en la base de datos (ni la contraseña ni la clave), de modo que las contraseñas no se puedan recuperar de un volcado de la base de datos.

Una vez el usuario configura la contraseña, el cifrado funciona de forma transparente para el usuario.

Si se pierde la contraseña proporcionada por el usuario no podrá recuperar las contraseñas almacenadas en la base de datos de Pandora FMS. Guárdese en lugar seguro o hágase un respaldo (backup) de los ficheros config.php y pandora_server.conf.

Detalles técnicos

Las contraseñas se cifran utilizando el cifrado Rijndael con bloques de 128 bits en modo ECB. Una clave de 256 bits se genera en el arranque a partir del MD5 de la contraseña configurada por el usuario.

Configuración en una instalación nueva de Pandora FMS

Para habilitar el cifrado de claves, la contraseña se debe configurar tanto en el Servidor de Pandora FMS como en la Consola web.

Los pasos a seguir para el cifrado son los siguientes:

$config["encryption_passphrase"]="passphrase";
/usr/bin/pandora_encrypt_db /etc/pandora/pandora_server.conf

Se deberá reiniciar el servidor de Pandora FMS después de haber efectuado los cambios y haber lanzado el script.

Cambiando la contraseña de cifrado

Es posible cambiar la contraseña de cifrado en caso de que se haya visto comprometida. Primero se deben descifrar las contraseñas almacenadas en la base de datos:

/usr/bin/pandora_encrypt_db -d /etc/pandora/pandora_server.conf

A continuación, después de haber cambiado la contraseña de cifrado (como se describe en la sección para la configuración en una instalación nueva), se pueden cifrar de nuevo:

/usr/bin/pandora_encrypt_db /etc/pandora/pandora_server.conf

A partir de 7.0 NG 739 se incluye el gestor de credenciales seguro. Consulte la siguiente sección para finalizar correctamente este proceso.

Gestor de credenciales:

En caso de disponer de una base de datos cifrada, para poder seguir utilizando el gestor de credenciales sin perder datos será necesario descifrar todo menos la tabla tcredential_store.

Para ello ejecútense los siguientes comandos:

/usr/bin/pandora_encrypt_db -d -m /etc/pandora/pandora_server.conf

Con lo que quedará descifrado.

Una vez descifrado, se volverá a cifrar de nuevo:

/usr/bin/pandora_encrypt_db /etc/pandora/pandora_server.conf

Si solo desea cifrar de cero, bastará con ejecutar el último comando.

Quitando la contraseña de cifrado

Se recomienda mantener de manera cifrada toda contraseña almacenada en Pandora FMS.

/usr/bin/pandora_encrypt_db -d /etc/pandora/pandora_server.conf
# $config["encryption_passphrase"]="your encryption passphrase";

Se deberá reiniciar el servidor de Pandora FMS después de haber efectuado los cambios y haber lanzado el script.

Política de contraseñas de usuarios

Menú Management → Settings → System Settings → Password policy .






Para activar la política de contraseñas se debe tener perfil de administrador (Pandora administrator) o ser un superadmin .

Campos importantes:

Log de auditoría

Menú Management → Admin tools → System Audit Log.






Pandora FMS guarda un log con todos los cambios y acciones de importancia producidos en la Consola de Pandora FMS. Allí se podrán ver una serie de entradas relacionadas con la actividad de la Consola, información sobre el usuario, tipo de acción, fecha y una pequeña descripción de los eventos registrados.

Se pueden filtrar cuales entradas a mostrar por diferentes criterios, incluyendo: acciones, usuario y dirección IP. Incluso se puede realizar una búsqueda de texto y determinar las horas máximas a buscar, con la opción de guardar dicho filtro si es de uso frecuente.

Se debe utilizar el filtro lateral derecho y establecer una fecha de inicio y una fecha de finalización y ejecutar el filtrado.

Volver al índice de la documentación de Pandora FMS