Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Introducción

En este artículo te explicaremos todo lo que hay que saber sobre la gestión de usuarios en Checkmk. Pero antes de entrar en detalles, tenemos que aclarar algunos conceptos.

En Checkmk, un usuario es alguien que tiene acceso a la interfaz de usuario. Un usuario tiene uno o más roles. Estos roles son la base de los permisos.

En cuanto un usuario es responsable de hosts y servicios específicos, se le identifica como contacto. Normalmente, un contacto solo ve sus propios hosts y servicios en el entorno de monitorización y puede recibir notificaciones sobre cualquier problema relacionado con ellos.

También hay usuarios que no son contactos. Un ejemplo de esto es cmkadmin, que se genera automáticamente al crear un site. A este usuario se le permite ver todos los hosts y servicios, pero solo porque el rol Administrator contiene el permiso See all hosts and services, y no necesariamente porque sea un contacto para todo.

Si se ha creado un contacto con el único propósito de recibir notificaciones (por ejemplo, para reenviar notificaciones a un sistema de tickets), puede ser útil configurarlo de tal manera que no sea posible realizar el inicio de sesión en la interfaz.

Un contacto siempre es miembro de uno o más grupos de contactos. El propósito de estos grupos de contacto es asignar contactos a hosts y servicios. Por ejemplo, el contacto hhirsch podría estar en el grupo de contactos linux y este, a su vez, podría asignarse a todos los hosts Linux mediante una regla. No es posible asignar contactos directamente a hosts o servicios y, de hecho, podría crear dificultades en la práctica (por ejemplo, cuando un usuario abandona la organización).

En resumen:

  • Los usuarios pueden utilizar la interfaz de usuario.

  • Los contactos son usuarios responsables de hosts y servicios específicos.

  • Los grupos de contacto definen de qué es responsable un usuario.

  • Los roles definen de qué permisos dispone un usuario.

2. Gestión de usuarios en el entorno de configuración

2.1. Vista general

La página de gestión de usuarios se encuentra en Setup > Users > Users. En un sitio recién creado, esta página tiene este aspecto (en la imagen solo se han omitido algunas columnas de la tabla):

List of users with administrator attributes.

La imagen de arriba muestra todos los usuarios que se crearon automáticamente al crear el sitio: Un usuario de automatización, seguido del usuario único (cmkadmin) para el inicio de sesión interactivo con contraseña. Con la Appliance Checkmk, este usuario puede tener un nombre diferente, ya que tú mismo defines su nombre y contraseña. Este usuario cmkadmin tiene las siguientes propiedades:

  • Tiene el rol de Administrator y, por lo tanto, todos los permisos.

  • No es contacto para nada y no recibe notificaciones.

  • Aún así, puede verlo todo (gracias a su rol de Administrator).

  • Tú eliges la contraseña de este usuario al crear el site. También puedes cambiar esta contraseña en cualquier momento más adelante.

El formulario para crear un nuevo usuario (en Button for creating a new user.) o realizar la edición de uno ya existente (en Icon for editing.) se divide en cinco secciones. La primera sección trata sobre la identidad.

2.2. Identidad

Dialog for a user's identity.

Como siempre en Checkmk, el ID de un conjunto de datos (Username) no se puede cambiar posteriormente. Se utiliza para iniciar sesión y también como clave interna en todos los archivos y estructuras de datos.

La dirección de correo electrónico es opcional y solo es necesaria si el usuario va a ser un contacto al que se le notificará por correo electrónico (se requiere configuración SMTP). Del mismo modo, el campo Pager address está pensado para notificaciones por SMS o sistemas similares. Si escribes tus propios scripts de notificación, puedes acceder a los valores de estos campos y utilizarlos para cualquier propósito.

Con Monitored sites puedes restringir opcionalmente a cuáles de los sitios existentes se puede acceder. Esto resulta especialmente práctico en entornos muy grandes, como una monitorización distribuida con cientos de sitios. Si un usuario solo necesita un número determinado de estos sitios para sus hosts, la GUI solo se pondrá en contacto con los sitios seleccionados para configurar las vistas de tabla, lo que a su vez mejora considerablemente el rendimiento.

2.3. Seguridad

Dialog for a user's security settings.

Este cuadro es para el inicio de sesión y la autorización. La opción «Automation secret for machine accounts» está pensada para cuentas que acceden a Checkmk a través de HTTP/HTTPS y se autentican mediante la URL. A continuación te mostraremos cómo hacerlo.

En cuanto a los roles, debes seleccionar al menos uno. En teoría, podrías asignar varios roles a un usuario, y este obtendría entonces los derechos de todos esos roles. Sin embargo, con los roles predefinidos, esto no tendría mucho sentido.

Si bloqueas a los usuarios con la opción «disable the login to this account», aparecerán en la tabla con el icono «Icon of a locked user.». Ya no podrán iniciar sesión, pero seguirán estando en el sistema. Si un usuario es un contacto, las notificaciones no se verán afectadas y el usuario seguirá recibiendo correos electrónicos, etc. Si el usuario estaba conectado en el momento del bloqueo, se le cerrará la sesión automáticamente.

2.4. Grupos de contacto

Dialog for a user's contact groups.

En cuanto asignes a un usuario a uno o más grupos de contactos, ese usuario se convierte en un contacto. Cuando se crea un nuevo site, también se crea el grupo de contactos Everything, que siempre contiene todos los hosts y todos los servicios. Un usuario de este grupo será entonces automáticamente responsable de todos los hosts y servicios.

2.5. Notificaciones

Dialog for a user's notification settings.

En la caja «Notifications», puedes usar la opción «Receive fallback notifications» para especificar que este contacto reciba notificaciones cuando no se aplique ninguna regla de notificación.

2.6. Configuración personal

Dialog for a user's personal settings.

Los usuarios también pueden cambiar ellos mismos todos los ajustes de esta caja a través de User > Edit profile (excepto con el rol de Guest user). Aparte de la selección del idioma de la interfaz, estos ajustes rara vez son necesarios. Como siempre, puedes encontrar más detalles en la ayuda en línea.

2.7. Ajustes de la interfaz

Dialog for a user's interface settings.

Los usuarios también pueden personalizar ellos mismos la configuración de la interfaz a través de User > Edit profile. Es especialmente interesante la opción «Show more / Show less» para determinar si Checkmk debe mostrar más o menos información en la interfaz. Si siempre quieres verlo todo, puedes forzarlo aquí con «Enforce show more».

3. Grupos de contacto

3.1. Crear y editar grupos de contacto

Los grupos de contactos son el enlace entre los hosts y los servicios, por un lado, y los contactos, por otro. Cada grupo de contactos representa una responsabilidad sobre un área específica de tu entorno TI. Por ejemplo, el grupo de contactos «SAP» podría incluir a todas las personas que mantienen los sistemas SAP y estar asignado a todos los hosts y servicios que prestan dichos servicios en este entorno.

Puedes gestionar los grupos de contactos a través de Setup > Users > Contact groups. La siguiente imagen muestra este módulo con tres grupos de contactos creados manualmente:

List of contact groups.

Crear un nuevo grupo es muy sencillo. Como siempre, el ID es permanente y el alias es un nombre de visualización que puedes cambiar más adelante en cualquier momento:

Dialog for name and alias of contact groups.

El nuevo grupo de contactos está vacío en dos aspectos: no contiene ni contactos, ni hosts, ni servicios. La asignación de grupos de contactos a los contactos se realiza a través de los perfiles de usuario, como ya has visto al editar el usuario.

Configuración de la visibilidad del inventario

Además, puedes configurar la visibilidad del inventario encontrado con el inventario de HW/SW. Por defecto, todo el inventario es visible, pero también se puede ocultar por completo o habilitar de forma selectiva con la opción «Allowed to see parts of the tree» y las rutas de inventario internas:

Dialog for visibility of inventory data.

Para poder introducir la información de ruta necesaria, primero debes leerla de los datos del inventario. A continuación, puedes utilizar esta información para rellenar las rutas y las claves y hacer que, por ejemplo, solo sean visibles algunos datos seleccionados del inventario del procesador (modelo y arquitectura):

Dialog for visibility of inventory data with CPU filter.

3.2. Añadir hosts a un grupo de contacto

Hay dos métodos para incluir hosts en grupos de contactos: a través de carpetas y a través de reglas. También puedes combinar ambos métodos. En este caso, se asignará al host una agregación de los respectivos grupos de contactos.

Asignación mediante carpetas

Puedes acceder a las propiedades de una carpeta a través de «Folder > Properties» mientras estás en la carpeta. Allí encontrarás la opción «Permissions». Marca esta checkbox para acceder a la selección de grupos de contactos:

Dialog for assigning contact groups to folders.

El objetivo real de esta opción es configurar los permisos para el mantenimiento de los hosts, lo cual explicamos en detalle a continuación.

En cuanto hayas asignado permisos a grupos de contacto específicos, podrás a su vez introducir estos grupos como grupos de contacto para los hosts en la monitorización. Al hacerlo, puedes decidir si las asignaciones también deben aplicarse a los hosts de las subcarpetas y si los servicios de estos hosts también deben recibir explícitamente estos grupos. Los servicios sin asignaciones explícitas heredan todos los grupos de contacto de un host, incluso los asignados por reglas.

Tip

La herencia del atributo «Permissions» (Inherit grupos de contacto) a través de las carpetas se anula en este punto. Esto te permite añadir más grupos de contacto a las subcarpetas. Por lo tanto, la asignación también se realiza de forma acumulativa a través de todas las carpetas principales, si en estas carpetas principales se ha activado la opción «Add these groups as contacts to all hosts in all subfolders of this folder» (Inherit grupos de contacto).

Por cierto, también puedes encontrar las opciones de grupos de contactos de forma simplificada directamente en los detalles de un host. Esto significa que también puedes usarlas para asignar grupos de contactos a hosts individuales. Sin embargo, como esto puede volverse bastante confuso rápidamente, solo deberías hacerlo en casos excepcionales y, si es necesario, quizá prefieras trabajar con reglas.

Asignación mediante reglas

El segundo método —asignar grupos de contactos mediante reglas— es un poco más engorroso, pero mucho más flexible. Y resulta muy útil si no has configurado tu estructura de carpetas según principios organizativos estructurados y, por lo tanto, no puedes asignar carpetas a grupos de contactos de forma clara.

El conjunto de reglas «Assignment of hosts to contact groups» necesario para esto se puede encontrar en Setup > Hosts > Host monitoring rules. En este conjunto de reglas, encontrarás una regla predefinida que se generó al crear el site y que asigna todos los hosts al grupo de contacto «Everything».

Rule set for assigning hosts to contact groups.

Ten en cuenta que este conjunto de reglas está definido de tal manera que se evalúan todas las reglas aplicables, ¡y no solo la primera! Puede ser útil que un host pertenezca a más de un grupo de contacto. En tal caso, necesitarás un conjunto de reglas para cada asignación.

Dialog for assigning hosts to the Windows-Servers contact group.

3.3. Incluir servicios en grupos de contacto

No siempre tiene sentido que un servicio esté en los mismos grupos de contacto que su host. Por lo tanto, puedes usar el conjunto de reglas «Assignment of services to contact groups» (Asignar grupos de contacto al servicio), independientemente de los grupos de contacto del host. Se aplican las siguientes reglas:

  • Si a un servicio no se le asigna un grupo de contacto, recibe automáticamente los mismos grupos de contacto que su host.

  • En cuanto se asigna explícitamente al menos un grupo de contacto a un servicio, este deja de heredar los grupos de contacto del host.

En un entorno sencillo, por lo tanto, basta con asignar grupos de contacto solo a los hosts. En cuanto necesites una mayor diferenciación, también puedes crear reglas para los servicios.

3.4. Control de las asignaciones

Puedes comprobar si has configurado correctamente todas las reglas y carpetas consultando los detalles de un host o servicio en el entorno de monitorización. Allí encontrarás las entradas Host contact groups y Host contacts (o Service contact groups y Service contacts, respectivamente), que forman una lista de las asignaciones reales para este objeto:

List of host details.

4. Visibilidad de los hosts y los servicios

4.1. Vista general

El hecho de que los usuarios normales (el rol Normal monitoring user) solo vean aquellos objetos de los que son contacto cobra mayor importancia cuanto más grande es tu entorno de monitorización. Esto no solo proporciona una vista general ordenada, sino que también evita que los usuarios intervengan donde no les corresponde.

Como administrador (el rol «Administrator»), por supuesto, siempre puedes verlo todo. Esto se controla mediante el permiso «See all host and services». En tu configuración personal, en Visibility of hosts/services, encontrarás la checkbox «Only show hosts and services the user is a contact for». Con esto, puedes renunciar voluntariamente a ver todo y mostrar solo los hosts y servicios para los que eres contacto. Esta opción está pensada para roles duales, es decir, para alguien que es tanto administrador como usuario normal.

El rol «Guest user» está preconfigurado para que sus usuarios también puedan verlo todo. Aquí están desactivados los ajustes y las intervenciones.

Para los usuarios normales, la visibilidad en el entorno de monitorización está implementada de tal manera que los hosts y servicios para los que no eres contacto parecen ni siquiera existir en el sistema. Entre otras cosas, los siguientes elementos tienen en cuenta la visibilidad:

4.2. Visibilidad de los servicios

Como hemos mostrado anteriormente, es posible que seas un contacto para un host, pero no para todos sus servicios. No obstante, en tal caso podrás ver todos los servicios del host en la GUI.

Esta excepción está configurada por defecto porque suele ser útil. En la práctica, esto significa, por ejemplo, que el compañero responsable del host en cuestión también puede ver cualquier servicio conectado a ese host, ¡aunque no reciba ninguna notificación sobre dichos servicios!

Si no te gusta este enfoque, puedes cambiarlo en las ediciones comerciales a través de Global settings > Monitoring core > Authorization settings. Si allí cambias la configuración «Services» a «Strict - Visible if user is contact for the service», los usuarios solo podrán ver los servicios si han sido asignados directamente como contacto para ese servicio.

Dialog with authorization settings.

Por cierto, todo esto no tiene nada que ver con el hecho de que un servicio herede los grupos de contactos de su host si no se le han asignado grupos de contactos propios, ya que en ese caso tú serías un contacto del servicio y, por lo tanto, recibirías sus notificaciones.

4.3. Grupos de hosts y grupos de servicio

La segunda opción en la configuración global de Authorization settings se refiere a los grupos de hosts y servicios. Normalmente puedes ver un grupo siempre que puedas ver al menos un elemento del grupo; sin embargo, el grupo parecerá entonces como si solo contuviera los elementos que son visibles para ti.

Si cambias a «Strict - Visible if all members are visible», se ocultarán todos los grupos en los que no seas contacto de al menos un host o servicio.

Ten en cuenta que estos dos ajustes de visibilidad no influyen en las notificaciones.

5. Notificaciones

Las asignaciones de contactos también influyen en las notificaciones. Checkmk está configurado de forma predeterminada para que se notifique a todos los contactos del host o servicio afectado en caso de que surja un problema. Esto se hace mediante una regla de notificación global que se genera automáticamente al crear nuevos sites. Es una función muy útil.

No obstante, si es necesario, puedes adaptar una regla o complementarla con otras reglas, de modo que, en casos extremos, las notificaciones se puedan enviar de forma totalmente independiente de los grupos de contacto. Una razón habitual para ello es que un usuario no quiera recibir ciertas notificaciones o, por el contrario, quiera estar informado de problemas con hosts o servicios concretos, aunque no sea directamente responsable de ellos (y, por lo tanto, no sea un contacto explícito).

Encontrarás más detalles sobre la regla de notificación global que ofrece Checkmk en la Guía para principiantes.

6. Roles y permisos

6.1. Roles predefinidos

Checkmk siempre asigna permisos a los usuarios a través de roles, nunca directamente. Un rol no es más que una lista de permisos. Es importante que entiendas que los roles definen el nivel de permisos y no hacen referencia a ningún host o servicio. Para eso están los grupos de contacto.

Checkmk incluye los siguientes roles predefinidos, que nunca se pueden eliminar, pero se pueden personalizar como quieras:

Nombre del rol Alias Permisos Función

admin

Administrador

Todos los permisos, especialmente el derecho a modificar permisos.

El administrador de Checkmk que se encarga del mantenimiento del propio sistema de monitorización.

user

Usuario normal de monitorización

Solo puede ver sus propios hosts y servicios, realizar cambios en la interfaz web únicamente en las carpetas compartidas de estos, y, en general, no puede hacer nada que afecte a otros usuarios.

El usuario normal de Checkmk que accede a la monitorización y reacciona ante cualquier notificación.

agent_registration

Usuario de registro de agentes

Permiso para registrar el agente Checkmk de un host en el servidor Checkmk para la transmisión de datos cifrados con TLS; nada más.

Este rol se asigna al usuario de automatización agent_registration para realizar un registro con derechos mínimos. En Checkmk Ultimate CSE, este rol incluye permisos adicionales para crear hosts automáticamente.

guest

Usuario invitado

Puede ver todo, pero no cambiar nada.

El usuario invitado está pensado simplemente para «mirar», por lo que todos los invitados comparten una cuenta común. También es útil para monitores de estado «públicos» colgados en la pared.

no_permissions

Plantilla vacía para roles con privilegios mínimos

No puede hacer nada.

Este rol no está pensado para su asignación directa. En su lugar, se puede usar para crear nuevos roles con solo los permisos mínimos necesarios. Si se añaden nuevos permisos o cambian los existentes en futuras versiones de Checkmk, puedes estar seguro de que un rol derivado de no_permissions no recibirá ningún permiso nuevo e inesperado.

Los roles se gestionan a través de Setup > Users > Roles & permissions:

List of user roles.

Por cierto, al crear un nuevo site de Checkmk, solo se crea un usuario (cmkadmin) con el rol Administrator para el inicio de sesión en la interfaz de Checkmk. Los demás roles posibles no se utilizarán por el momento. Si necesitas un usuario invitado, debes crearlo tú mismo.

6.2. Personalización de roles existentes

Como de costumbre, el Icon for editing. te lleva al modo de edición de un rol:

List of permissions for a user role.

Puedes averiguar qué significan los distintos permisos (que se muestran aquí en extractos) en la ayuda en línea.

La particularidad aquí es que para cada permiso hay tres opciones: yes, no y default (yes) o default (no). Durante la instalación, todos los valores se establecen en default. Para la autorización en sí, no importa si has establecido yes o default (yes). Sin embargo, es posible que la instalación de una nueva versión de Checkmk cambie un valor por defecto (aunque esto ocurra muy raramente). Una configuración que hayas establecido explícitamente no se vería afectada por la instalación.

Además, este principio te permite reconocer muy rápidamente en qué aspectos tu instalación de Checkmk podría haberse desviado del estándar.

6.3. Definición de roles propios

Quizás te sorprenda que no haya ningún botón para crear un nuevo rol. Hay una razón deliberada para ello. Los nuevos roles se crean derivándolos de los ya existentes mediante Icon for cloning. Clone. El nuevo rol no se crea simplemente como una copia, sino que conserva su relación con el rol original (Based on role):

Basic properties of a newly created user role.

Esta conexión tiene una función importante. Porque todos los permisos del rol clonado que no se hayan establecido explícitamente (es decir, que sigan configurados como default) se heredarán del rol de origen. Los cambios posteriores en el rol de origen se trasladarán al nuevo rol clonado. Esto resulta muy práctico si piensas en la cantidad de permisos que podría tener el rol original. Con una simple copia, podrías perder fácilmente la pista de qué es lo que realmente tiene de especial el rol que has definido para ti mismo.

Esta función de derivación también resuelve otro problema: Dado que seguimos desarrollando Checkmk, se añaden continuamente nuevos permisos. Cada vez que lo hacemos, decidimos en cuál de los tres roles Administrator, Normal monitoring user y Guest user debe incluirse el nuevo permiso. Dado que cada uno de tus propios roles se deriva de uno de los roles predefinidos, el nuevo permiso se preconfigura automáticamente con un valor razonable. Sería muy poco práctico si, por ejemplo, definieras tu propio rol de usuario y siempre faltaran allí los nuevos permisos. Tendrías que adaptar tu rol para cada nueva función, para que tus usuarios pudieran utilizarlas.

6.4. Comparación de roles con la vista de tabla

Si quieres comparar los permisos de cada rol, puedes utilizar la vista de tabla, a la que puedes acceder a través de Setup > Users > Roles & permissions > Roles > Permission matrix. Esta opción del menú muestra la siguiente vista de tabla, en la que no solo puedes comparar los permisos de cada rol, sino también ver dónde se han establecido explícitamente los permisos (Icon of an existing permission.) o se han eliminado (Icon of a missing permission.).

Matrix view with comparison of user roles.

7. Configuración personal

Cada usuario puede gestionar algunas opciones de configuración de su propio perfil. Encontrarás una descripción detallada de todas las opciones disponibles en el artículo sobre la interfaz de usuario.

Una nota adicional sobre la monitorización distribuida: En un entorno distribuido, cualquier nueva configuración se transfiere inmediatamente a todos los sitios de monitorización. Esta es la única forma de garantizar que, en particular, una contraseña recién asignada también funcione de inmediato en todas partes, y no solo tras la siguiente activación de cambios. Sin embargo, esto solo funciona para los sitios a los que se pueda acceder a través de la red en ese momento. Todos los demás sitios recibirán las actualizaciones en la siguiente activación de cambios que se realice con éxito.

8. Usuarios especiales

Hasta ahora, hemos explicado cómo crear un «usuario normal». Sin embargo, por diversas razones, también hay usuarios que tienen derechos o funciones especiales.

Entre ellos se incluyen, por ejemplo, los administradores y los usuarios de automatización. A continuación, veremos sus características especiales.

8.1. Administrador

Al instalar Checkmk, se crea un administrador por defecto, como ya se ha mencionado anteriormente. Este administrador se llama cmkadmin. Ahora puedes seguir trabajando con este administrador como desees, aunque es posible que no quieras utilizar este administrador predeterminado. Por ejemplo, debido a normativas internas de la empresa, porque quieres definir varios administradores o para cumplir con recomendaciones de seguridad como el Estándar de Verificación de Seguridad de Aplicaciones (ASVS) de OWASP.

En primer lugar, un administrador es un usuario como cualquier otro. Por lo tanto, se crea tal y como se describe en el capítulo «Administración de usuarios» del entorno de configuración. Sin embargo, los derechos que se asignan al usuario a través del rol seleccionado son decisivos.

Selecting the Administrator role for a user.

Selecciona el rol «Administrator» al crear el usuario. El resto de ajustes para el administrador también se realizan según tus preferencias personales o las especificaciones internas de la empresa.

8.2. Usuario de automatización (para servicios web)

Al realizar la conexión de Checkmk a otros sistemas, a menudo se desea automatizar ciertas actividades que normalmente se realizan a través de la GUI. Algunos ejemplos son:

En tales situaciones, el software externo debe poder recuperar automáticamente ciertas URL de la interfaz de Checkmk. Esto, por supuesto, plantea la cuestión de cómo inicia sesión el usuario. La forma habitual a través del diálogo de inicio de sesión es engorrosa y requiere recuperar varias URL seguidas y guardar una cookie.

Para simplificar esto, Checkmk ofrece el concepto de usuarios de automatización. Estos usuarios son exclusivamente para el control remoto y no permiten un inicio de sesión normal a través de la GUI. La autenticación se realiza aquí mediante la autenticación básica HTTP.

En cada sitio de Checkmk ya hay un usuario de automatización configurado: para registrar el agente Checkmk en el servidor Checkmk para la transferencia de datos cifrada con TLS. Para otras tareas, puedes crear usuarios de automatización adicionales, normalmente con el rol «administrator». Se crea un usuario de automatización igual que un usuario normal, pero no se le asigna una contraseña normal, sino una contraseña de automatización (Automation secret). Puedes hacer que esta contraseña se cree automáticamente con el cubo «Icon for rolling the dice.»:

Automation user security settings.
Important

La autenticación básica HTTP requiere la contraseña de automatización en texto sin cifrar de forma predeterminada. Para ello, configura la opción Store the secret in cleartext. La contraseña se guarda entonces en el directorio del site en ~/var/check_mk/web/<username>/automation.secret. Esto es necesario para todas las reglas y scripts que utilizan la contraseña de automatización.

Un usuario de automatización tiene un rol igual que un usuario normal y también puede ser un contacto. Esto significa que puedes restringir los permisos y la visibilidad de los hosts y servicios según sea necesario.

Para la recuperación automática de páginas web, introduce el encabezado de la autenticación HTTP Basic, que básicamente tiene este aspecto: Authorization: Basic 1234567890abcdef. La cadena de caracteres es la forma codificada en Base64 de username:password.

Aquí tienes un ejemplo de cómo recuperar una vista de tabla en formato JSON con el usuario de automatización automation y su contraseña de automatización; la codificación Base64 la realiza curl:

root@linux# curl --user automation:a8075a39-e7fe-4b5c-9daa-02635 'http://moni01.mycompany.net/mysite/check_mk/view.py?view_name=svcproblems&output_format=json'
 [
  "service_state",
  "host",
  "service_description",
  "service_icons",
  "svc_plugin_output",
  "svc_state_age",
  "svc_check_age",
  "perfometer"
 ],
 [
  "CRIT",
  "stable",
  "Filesystem /",
  "menu pnp",
  "CRIT - 96.0% used (207.27 of 215.81 GB), (warn/crit at 80.00/90.00%), trend: +217.07 MB / 24 hours",
  "119 min",
  "30 sec",
  "96%"
 ],
 ...
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

Si el script que recupera la URL se ejecuta directamente en el sitio de monitorización, puedes leer la contraseña de automatización del usuario directamente desde el sistema de archivos. Esto no es una vulnerabilidad de seguridad, sino que está pensado para que así sea: Puedes escribir scripts de automatización que no necesiten contener la contraseña de automatización ni un archivo de configuración. Para ello, lee el archivo ~/var/check_mk/web/myuser/automation.secret:

OMD[mysite]:~$ cat var/check_mk/web/automation/automation.secret
a8075a39-e7fe-4b5c-9daa-02635
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

Puedes guardar fácilmente el contenido de este archivo en una variable del shell, por ejemplo, para poder leerlo más tarde con un script:

OMD[mysite]:~$ SECRET=$(cat var/check_mk/web/automation/automation.secret)
OMD[mysite]:~$ echo "$SECRET"
a8075a39-e7fe-4b5c-9daa-02635
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

9. Inicio de sesión automático a través de la URL

Important

El inicio de sesión automático a través de la URL en el navegador que se describe a continuación se ha desactivado por motivos de seguridad desde Checkmk 2.2.0 , ya que las credenciales (nombre de usuario y contraseña) transmitidas a través de la URL se almacenan en los archivos de registro del Apache específico del sitio (véase Werk #14261). Si quieres utilizar el inicio de sesión automático a través de la URL a pesar de este riesgo de seguridad, debes habilitarlo explícitamente con la configuración global Setup > General > Global settings > User interface > Login via GET requests.

Como hemos visto, puedes usar usuarios de automatización para recuperar cualquier URL mediante un script, sin necesidad de iniciar sesión. Sin embargo, en situaciones que requieren un inicio de sesión real en el navegador, esto no funciona, ya que los datos de inicio de sesión para cualquier enlace incluido (por ejemplo, a imágenes e iframes) no se transmiten.

El mejor ejemplo de esto es el deseo de colgar en la pared un monitor que muestre continuamente un dashboard específico de Checkmk. Este monitor debe ser controlado por un ordenador que abra automáticamente el navegador al arrancar, inicie sesión en Checkmk y abra el dashboard requerido.

Para conseguirlo, lo mejor es crear primero un usuario especial para este fin. El rol «Guest user» es ideal para esta función, ya que otorga todos los derechos de lectura, pero no permite realizar cambios ni intervenir.

Crea la URL para un inicio de sesión automático de la siguiente manera:

  1. Empieza con: http://mycmkserver/mysite/check_mk/login.py?_origtarget=

  2. Determina la URL real que se va a mostrar (por ejemplo, la del dashboard) con tu navegador —preferiblemente sin navegación—, lo cual se puede hacer switchando Display > Show page navigation.

  3. Añade esta URL, omitiendo todo lo que hay antes de la parte /mysite/.

  4. Añade a la URL las dos variables _username y _password con el siguiente formato: &_username=myuser&_password=mysecret.

  5. Añade otro &_login=1.

Aquí tienes un ejemplo de una URL de este tipo:

http://mycmkserver/mysite/check_mk/login.py?_origtarget=/mysite/check_mk/dashboard.py?name=mydashboard&_username=myuser&_password=mypassword&_login=1

Nota:

  • En el ejemplo, sustituye los valores mycmkserver, mysite, myuser y mypassword por tus valores correspondientes. No puedes utilizar el usuario de automatización como myuser, ya que no se permite el inicio de sesión a través de la GUI para este usuario.

  • Si los caracteres especiales & o % aparecen en alguno de estos valores o en el valor de _origtarget, debes sustituirlos de la siguiente manera: & por %26 y % por %25.

Prueba todo el proceso cerrando sesión en Checkmk desde tu navegador y, a continuación, copiando la URL construida en la barra de direcciones de tu navegador. Deberías ir directamente a la página de destino, sin que aparezca ningún diálogo de inicio de sesión. Al mismo tiempo, habrás iniciado sesión y podrás acceder directamente a los enlaces que contiene la página.

También puedes probar la URL final con curl en la línea de comandos. Si lo has hecho todo correctamente, recibirás el código de estado HTTP 302 FOUND y serás redirigido a la URL especificada Location, como se muestra en la siguiente salida abreviada:

OMD[mysite]:~$ curl -v 'http://mycmkserver/mysite/check_mk/login.py?_origtarget=/mysite/check_mk/dashboard.py?name=mydashboard&_username=myuser&_password=mypassword&_login=1'
...
< HTTP/1.1 302 FOUND
...
< Location: /mysite/check_mk/dashboard.py?name=mydashboard
...
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

Si no obtienes la vista deseada en el navegador a pesar de este mensaje que confirma el éxito, check la URL indicada en Location — incluso si esta es incorrecta, curl devolverá el código de estado HTTP 302 FOUND.

Si los datos de inicio de sesión son incorrectos, recibirás el código de estado HTTP 200 OK, pero solo verás el código HTML de la página de inicio de sesión, como en la siguiente salida abreviada:

OMD[mysite]:~$ curl -v 'http://mycmkserver/mysite/check_mk/login.py?_origtarget=/mysite/check_mk/dashboard.py?name=mydashboard&_username=myuser&_password=NOT&_login=1'
...
< HTTP/1.1 200 OK
...
<!DOCTYPE HTML>
<html><head><meta content="text/html; ...
...
</script>
<script type="text/javascript">
cmk.visibility_detection.initialize();
</script>
</body></html>
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

10. Asignación de permisos para carpetas

10.1. Función del rol de «Normal monitoring user »

Si tienes que gestionar un entorno de monitorización algo más grande, te interesará involucrar a otros administradores en la configuración y, sobre todo, en la gestión de hosts y servicios. Para mantener el control sobre quién puede realizar cambios y qué se les permite hacer, y para que nadie se entrometa en el trabajo de los demás, puedes asignar permisos para la configuración de Checkmk basándote en carpetas.

El primer paso para ello es que tus compañeros administradores trabajen con sus propios usuarios basados en el rol «Normal monitoring user».

Este rol básicamente tiene autorización para el entorno de configuración, pero con algunas restricciones importantes:

  • Solo se permiten cambios en hosts, servicios, reglas y Agregaciones BI.

  • Los hosts, servicios y reglas solo se pueden gestionar en carpetas compartidas.

  • Las agregaciones BI solo se pueden gestionar en paquetes BI compartidos.

  • No se permite nada que tenga implicaciones globales.

Mientras no hayas publicado ninguna carpeta o paquete BI, esto significa que los usuarios con el rol «Normal monitoring user» no pueden realizar ningún cambio inicialmente. El sencillo menú «Setup» tiene este aspecto para los usuarios de monitorización normales:

Setup menu for normal monitoring users in Checkmk Community.
Menú de configuración para usuarios de monitorización normales en Checkmk Community

10.2. Permitir a los usuarios gestionar hosts

Un usuario recibe la autorización para crear, editar y eliminar hosts a través de grupos de contacto. El procedimiento es el siguiente:

  1. Añade al usuario a un grupo de contacto.

  2. Designa una o más carpetas para las que se autorizará al usuario.

  3. Activa la propiedad «Permissions» para estas carpetas y selecciona aquí el grupo de contacto.

El siguiente ejemplo muestra las propiedades de una carpeta en la que todos los usuarios del grupo de contacto «Linux» pueden gestionar hosts. Se ha activado la opción para permitir esto también en las subcarpetas.

Folder properties with the shared contact group Linux.

Tú decides si quieres incluir automáticamente los hosts en el grupo de contactos. En este ejemplo, la opción «Add these groups as contacts to all hosts in this folder» no se ha activado y los hosts no se añadirán al grupo de contactos «Linux». Esto significa que, en el entorno de monitorización, no serán visibles para el grupo de contactos «Linux» (a menos que una regla se encargue de ello). Así pues, como puedes ver, la visibilidad (y la responsabilidad en la monitorización) y la autorización para el entorno de configuración se pueden regular por separado.

11. Contraseñas

11.1. Seguridad de las contraseñas

La seguridad es una prioridad hoy en día. Por eso, en algunas empresas hay directrices generales sobre cómo gestionar las contraseñas. Checkmk ofrece varias opciones para aplicar estas normas. Algunas de ellas las encontrarás en Global settings > User management > Password policy for local accounts:

Dialog for password rules.

La primera opción, «Minimum password length», sirve para garantizar la calidad de la contraseña.

Para la segunda opción Number of character groups to use hay un total de cuatro grupos de caracteres:

  • letras minúsculas

  • letras mayúsculas

  • dígitos

  • caracteres especiales

Si introduce aquí «4», la contraseña deberá contener al menos un carácter de cada uno de los grupos anteriores. Con «2», al menos se garantiza que la contraseña no esté compuesta, por ejemplo, solo por letras minúsculas. Estos ajustes se checkan cada vez que se cambia la contraseña.

La tercera opción, «Maximum age of passwords», obliga al usuario a cambiar su contraseña a intervalos regulares. Cuando llegue el momento, al acceder a la página siguiente se le mostrará al usuario el siguiente mensaje:

Forced password change dialog.

Los usuarios solo podrán continuar después de cambiar su contraseña.

Puedes exigir un cambio de la contraseña inicial en el primer inicio de sesión. Esto se hace con la opción «Enforce change: Change password at next login or access» en la sección «Security» de las propiedades del usuario correspondiente.

11.2. Directivas de inicio de sesión

En «Global settings > User management» encontrarás más ajustes globales que regulan los inicios de sesión de los usuarios.

Bloqueo tras intentos de inicio de sesión inválidos

Con la configuración de «Lock user accounts after N logon failures», puedes bloquear una cuenta tras una serie de intentos fallidos de inicio de sesión:

Dialog for automatic login deactivation.

El desbloqueo solo lo puede realizar un usuario con el rol de administrador (Administrator). Como administrador, puedes desbloquear a otros usuarios a través de Setup > Users > Users y, a continuación, en las propiedades del usuario bloqueado. ¡Ten en cuenta que las cuentas de administrador también se pueden bloquear! Si te quedas bloqueado de forma permanente como último o único administrador, solo podrás desbloquear tu cuenta a través de la línea de comandos. Para ello, edita el archivo ~/etc/htpasswd como usuario del site y elimina el signo de exclamación de la línea del usuario afectado, en este caso myuser:

OMD[mysite]:~$ cat etc/htpasswd
agent_registration:$2y$12$83XzYwtQJVFizC...
automation:$2y$12$zKF4Sasws7rDJCByZ1r5ke...
cmkadmin:$2y$12$ZmE96frGSm9sdWiWRXtxbuyu...
myuser:!$2y$12$8FU93yH7TFTyJsyUvKCh1eqYJG..
OMD[mysite]:~$ vim etc/htpasswd
...
OMD[mysite]:~$ cat etc/htpasswd
agent_registration:$2y$12$83XzYwtQJVFizC...
automation:$2y$12$zKF4Sasws7rDJCByZ1r5ke...
cmkadmin:$2y$12$ZmE96frGSm9sdWiWRXtxbuyu...
myuser:$2y$12$8FU93yH7TFTyJsyUvKCh1eqYJG...
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

A continuación, podrás volver a iniciar sesión.

Cierre de sesión automático

En la caja «Session management», puedes especificar dos formas diferentes de finalizar una sesión y combinarlas entre sí: por un lado, en función de la duración de la sesión; por otro, en función de la actividad del usuario.

Maximum session duration asegura que la sesión termine automáticamente tras un periodo de tiempo establecido. Entre otras cosas, esto reduce el riesgo de uso externo de la sesión, ya que no permanece activa indefinidamente:

Session termination dialog.

Una vez que haya expirado la duración de la sesión definida, el usuario deberá volver a iniciar sesión, independientemente de si estaba activo al final de la sesión o no. Al mismo tiempo, puedes usar «Advise re-authentication before termination» para especificar cuándo se debe notificar al usuario que guarde sus entradas, cierre la sesión y vuelva a iniciarla antes de una terminación «forzada» de su sesión:

Warning before session termination.

La configuración Set an individual idle timeout garantiza que una sesión finalice si un usuario no utiliza activamente la GUI durante un periodo de tiempo prolongado, por ejemplo, si ha abandonado temporalmente su puesto de trabajo sin cerrar sesión en Checkmk. Este timeout se puede detener utilizando activamente la GUI. Sin embargo, no basta con tener abierta una vista de tabla que se recargue automáticamente de forma regular.

Evitar inicios de sesión múltiples

La configuración «Limit login to single session at a time» impide que un usuario inicie sesión en Checkmk con dos navegadores al mismo tiempo:

Dialog to limit the number of sessions.

Esta opción también está vinculada a un timeout para el cierre de sesión automático en caso de inactividad. Esta función también tiene sentido. Supongamos que te has olvidado de cerrar sesión en tu puesto de trabajo antes de cerrar el navegador. En esta situación, sin un timeout, no podrías iniciar sesión desde casa mientras estás de guardia, ya que cerrar el navegador o apagar el ordenador no activa automáticamente el cierre de sesión.

Al intentar un segundo inicio de sesión en paralelo, verás el siguiente mensaje de error:

Locked login dialog with notification of an already active session.

En este caso, solo podrás realizar el inicio de sesión si cierras activamente la sesión existente o esperas hasta que se produzca el timeout.

11.3. Autenticación de dos factores

Para mejorar la seguridad de tus sitios Checkmk, Checkmk ofrece la función de autenticación de dos factores para cada usuario. Esta autenticación de dos factores se basa en el estándar de internet FIDO2/WebAuthn. La autenticación se basa convencionalmente en el conocimiento (una contraseña) y la posesión (un autenticador).

Puedes utilizar cualquier dispositivo compatible con FIDO2 que sea compatible con tu navegador y sistema operativo. Los tokens USB o NFC, como el YubiKey, son los más utilizados. Como alternativa, es posible utilizar aplicaciones de autenticación (por ejemplo, en el smartphone) que generan una contraseña de un solo uso basada en el tiempo (TOTP).

Requisitos para el servidor Checkmk

Debido a las especificaciones del estándar WebAuthn, hay tres requisitos previos para el uso de la autenticación de dos factores:

  • La interfaz web de Checkmk está protegida con HTTPS.

  • La dirección de la web se especifica como un nombre del host simple o como un nombre de dominio completo —en cualquier caso, como una dirección de dominio válida.

  • La URL siempre se introduce con el mismo formato, p. ej., siempre https://www.mycompany.com/mysite.

Configuración

Accede a la autenticación de dos factores desde el menú Usuario:

Selecting two-factor authentication from the User menu.

Ahora se te ofrecerán dos opciones marcadas con el icono de la llave Icon of a credential. para añadir el segundo factor: Register authenticator app para configurar una aplicación que genere contraseñas de un solo uso, y Register security token para utilizar un token de hardware.

Setup page for two-factor authentication.

Checkmk reconoce las opciones de autenticación disponibles en tu ordenador. Se abre un pequeño diálogo en la ventana del navegador en el que debes especificar el autenticador. Si utilizas un token de hardware, la configuración se completa al pulsar el botón. Si utilizas contraseñas de un solo uso, primero escanea el código QR que se muestra con la Aplicación de autenticación e introduce un código generado por la aplicación para confirmar. La sesión continuará sin interrupciones en ambos casos.

Inicio de sesión

La autenticación de dos factores quedará activa en Checkmk para futuros intentos de inicio de sesión. Primero, introduce tu nombre de usuario y contraseña como de costumbre. A continuación, aparecerá un segundo diálogo de inicio de sesión:

Logging in with the second authentication factor.

Una vez activado el autenticador, puedes trabajar con Checkmk como de costumbre.

Creación y uso de códigos de copia de seguridad

En caso de que no tengas tu autenticador a mano, puedes introducir un código de copia de seguridad como alternativa.

Para ello, crea una lista de códigos de copia de seguridad con antelación en la página User > Two-factor authentication utilizando Icon for backup codes. Generate backup codes:

Display of created backup codes.

Guarda estos códigos en un lugar seguro.

Una vez que hayas generado los códigos de copia de seguridad, aparecerá la opción adicional «Use backup code» en el segundo diálogo de inicio de sesión Two-factor authentication. Haz clic en ella si quieres iniciar sesión en Checkmk con un código de copia de seguridad. El segundo diálogo de inicio de sesión se sustituirá para que puedas introducir allí un código de copia de seguridad:

Prompt to enter the backup code.

Comprobación y anulación de la autenticación de dos factores como administrador

Como administrador, en la gestión de usuarios (Setup > Users > Users) puedes ver qué usuarios tienen configurada la autenticación de dos factores mirando la entrada de la columna Authentication.

View of two-factor authentication in user management.

Si alguno de estos usuarios ya no tiene acceso a Checkmk —por ejemplo, si ha perdido o dañado su token de hardware—, puedes eliminar la autenticación de dos factores para ese usuario. Para ello, abre la entrada correspondiente en la gestión de usuarios haciendo clic en «Icon for editing.». Elimina la autenticación de dos factores para este usuario con «User > Remove two-factor authentication».

Removing the two-factor authentication.

Una vez que hayas confirmado el cuadro de diálogo de confirmación, el usuario podrá volver a iniciar sesión en la interfaz web de Checkmk utilizando «solo» el nombre de usuario y la contraseña.

Forzar la autenticación de dos factores como administrador

Como has leído en la sección de configuración, cada usuario puede activar la autenticación de dos factores para su propia cuenta de Checkmk. Los administradores tienen la opción de hacer que esta función opcional sea obligatoria para los usuarios bajo su control. La autenticación de dos factores se puede aplicar a todos los usuarios de un rol, o incluso a todos los usuarios, con la opción Enforce two factor authentication.

Para forzar la autenticación de dos factores para un rol, abre Setup > Users > Roles & permissions,, haz clic en el icono del lápiz del rol “Edit icon.” y marca la checkbox «Enforce two factor authentication» en Basic properties. Esta opción se encuentra para todos los usuarios de Checkmk en Setup > General > Global settings > User management. La activación como configuración global anula la configuración basada en roles.

Un usuario que deba activar la autenticación de dos factores pero que aún no la tenga será redirigido a la página Two-factor authentication al iniciar sesión tras introducir el nombre de usuario y la contraseña:

“The forced setup of two-factor authentication.”

El usuario solo será redirigido a la interfaz de usuario de Checkmk cuando se haya configurado una de las dos opciones disponibles para el segundo factor.

11.4. Cambiar una contraseña mediante la línea de comandos

En caso de emergencia, también puedes cambiar una contraseña a través de la línea de comandos. Esto te salva en una situación en la que hayas perdido la contraseña de cmkadmin. El requisito previo es, por supuesto, que aún sea posible iniciar sesión como usuario de Linux en el servidor Checkmk y que puedas convertirte en usuario del site con omd su mysite.

Las contraseñas se almacenan en el archivo ~/etc/htpasswd, como ya se ha descrito anteriormente.

El cambio de contraseñas se realiza con el comando cmk-passwd. Esto no te pedirá la contraseña actual. cmk-passwd siempre elegirá un método de cifrado seguro para almacenar tus contraseñas en una versión actual de Checkmk. Actualmente, cmk-passwd utiliza bcrypt para ello. Las contraseñas sin cifrar o con un cifrado débil (por ejemplo, con MD5) no permiten el inicio de sesión en la GUI.

OMD[mysite]:~$ cmk-passwd cmkadmin
New password:
Re-type new password:
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

12. Atributos de usuario personalizados

Además del campo para la dirección de correo electrónico, también está disponible el campo «Pager address» para notificar a los usuarios. Si esto no es suficiente y quieres guardar más información sobre un usuario, puedes crear tus propios campos a través de «Setup > Users > Custom user attributes > Add attribute», que luego se pueden rellenar con valores individuales para cada usuario.

Al crear un nuevo atributo de este tipo, se abre el siguiente diálogo:

Dialog for custom attributes.

Como siempre, el ID (Name) no se puede cambiar más adelante, pero el título (Title) sí. El Topic determina en qué sección de la configuración del usuario se clasificará el nuevo campo. Además, puedes decidir si los usuarios pueden editar el campo ellos mismos (entonces aparecerá en su configuración personal) y si el valor debe mostrarse directamente en la tabla de usuarios Setup.

Solo si marcas la checkbox en Make this variable available in notifications podrás utilizar este valor también en las notificaciones. Para ello, el valor debe asignarse al core de monitorización (p. ej., CMC) en una variable (una denominada «macro definida por el usuario»).

El nombre de la variable definida por el usuario se deriva del ID que hayas elegido. Este se convierte a mayúsculas y se le antepone CONTACT_. Así, phone se convierte en CONTACT_PHONE. Ten en cuenta que, cuando la variable se pasa a través de variables del entorno, se le antepondrá NOTIFY_. Con tu propio script de notificación, la variable llegará como NOTIFY_CONTACT_PHONE.

13. Enviar mensajes a los usuarios

En el artículo que describe las reglas de notificación, explicamos con todo detalle cómo Checkmk puede informar a los contactos sobre problemas con hosts o servicios. Sin embargo, a veces es posible que quieras notificar a todos los usuarios (incluso a aquellos que no son contactos) sobre asuntos internos de la organización, por ejemplo, el mantenimiento del propio sistema Checkmk.

Para estos fines, Checkmk ofrece una pequeña herramienta de mensajes integrada, que es completamente independiente de las notificaciones. Puedes encontrar la herramienta en Setup > Users y, dentro de ella, en Users > Send user messages. Aquí tienes la posibilidad de enviar un mensaje a todos o a algunos de tus usuarios.

Dialog for user messages.

Puedes elegir entre cuatro tipos de mensajes:

Show popup message

La próxima vez que el usuario abra la página, se abrirá una ventana emergente con el mensaje.

Show hint in the 'User' menu

Se le indicará al usuario que hay un mensaje mediante un símbolo numérico en el menú «Usuario» de la barra de navegación.

Send email

Envía un correo electrónico. Sin embargo, esto solo llegará a los usuarios que también tengan configurada una dirección de correo electrónico.

Show in the dashboard element 'User messages'

El mensaje se muestra en un dashlet del tipo User messages.

Con Message expiration puedes borrar fácilmente los mensajes que aún no se hayan consultado tan pronto como dejen de ser relevantes.

Una característica especial de la opción «Show hint in the 'User' menu»: a través de User messages > Received messages, los usuarios pueden encontrar sus mensajes de colección y realizar el reconocimiento o eliminarlos.

Overview of the user notifications.

Checkmk notifica automáticamente a los usuarios las notificaciones relevantes para la seguridad en sus cuentas. Estos incluyen cambios en la contraseña y la autenticación de dos factores (activación, desactivación, inicio de sesión mediante código de seguridad y la creación y revocación de códigos de seguridad). Si se ha almacenado una dirección de correo electrónico para el usuario, las notificaciones se envían por correo electrónico; de lo contrario, se envían a través de la herramienta de mensajes.

Los mensajes de seguridad solo se activan por acciones realizadas en la GUI de Checkmk. El usuario no puede eliminarlos, pero la duración de la visualización de estos mensajes se puede configurar en Setup > General > Global settings > User management > User security notification duration. Por defecto, la duración de la visualización es de 7 días.

14. Otros temas

Checkmk admite más métodos de inicio de sesión:

  • Conexión a LDAP/Directorio activo

  • Autenticación con SAML

  • Autenticación con Kerberos

  • Autenticación en una configuración con proxy inverso

  • Autenticación con autenticación básica HTTP

15. Archivos y directorios

La siguiente lista muestra qué archivos y directorios del servidor Checkmk están relacionados con la gestión de usuarios. Como siempre, todas las entradas aquí son relativas al directorio del site (por ejemplo, /omd/sites/mysite).

Ruta Función

~/etc/htpasswd

Contraseñas de los usuarios en formato Apache htpasswd.

~/etc/auth.secret

Este archivo contiene un secreto aleatorio que se usa para firmar las cookies de inicio de sesión. En entornos distribuidos, este archivo debería ser el mismo para todos los sitios —y así será si lo configuras todo a través de la interfaz web. Si se modifica este archivo, todos los inicios de sesión quedan inmediatamente inválidos y los usuarios deben volver a iniciar sesión. Este archivo es de acceso restringido 660, ya que el acceso de lectura por parte de un tercero permitiría falsificar un inicio de sesión.

~/etc/auth.serials

Números de serie de las contraseñas por usuario. Cualquier cambio de contraseña incrementa el número de serie y, por lo tanto, hace inválidas todas las sesiones actuales. Esto garantiza que un cambio de contraseña cierre la sesión del usuario de forma fiable.

~/etc/check_mk/multisite.d/wato/users.mk

Contiene los usuarios configurados con el entorno de configuración. Aquí solo se almacenan los datos de los usuarios que interactúan exclusivamente con la GUI. Los cambios manuales en este archivo surten efecto de inmediato.

~/etc/check_mk/conf.d/wato/contacts.mk

Información de contacto de los usuarios configurados con el entorno de configuración. Aquí se almacenan todos los datos relevantes para la configuración del core de monitorización. Solo aparecen aquí los usuarios que también son contactos. Para que los cambios manuales surtan efecto aquí, la nueva configuración debe cargarse en el core, p. ej., con cmk -O.

~/var/check_mk/web

Cada usuario que haya iniciado sesión en la GUI al menos una vez tiene aquí una subcarpeta donde se guardan cosas como vistas y informes personalizados, la configuración actual de la barra lateral y mucho más, en pequeños archivos individuales con la extensión .mk. Estos archivos tienen formato Python.

~/var/log/web.log

Archivo de registro de la interfaz de usuario. Aquí encontrarás mensajes de error relacionados con la autenticación y las conexiones LDAP.


Last modified: Tue, 24 Feb 2026 15:10:56 GMT via commit cf16902d7
En esta página