
Habilitant autenticació LDAP a Grafana
Bo, un altre post que serà cortit amb idea d'usar recomanacions i millors pràctiques; avui toca recordar que no hem de fer servir usuaris locals, i així que li fiquem mà a Grafana, i forçarem els inicis de sessió d'un magatzem central com pugui ser el nostre Directori Actiu o qualsevol LDAP.
Doncs el que s'ha dit, debemos intentar usar usuarios locales en cada servicio que tengamos en la organización, por muchas razones, es mejor gobernar un sitio central de usuarios que N repartidos, donde sabe Diosito cuando se le cambió la contraseña la última vez, políticas de complejidad… Y como no, para delegar permisos, será mejor dar acceso a quien lo requiera únicamente a donde deba ¿no? que no dar permisos a todo… Y para ello es fundamental apoyarnos (en aquest cas) en un Directorio Activo.
Vingui, que está chupao! Comencem! Lo primero será indicarle a Grafana que queremos usar LDAP, así que en el fichero de configuración de Grafana ‘/etc/grafana/grafana.ini’ l'habiliten:
[auth.ldap] enabled = true config_file = /etc/grafana/ldap.toml allow_sign_up = false
Y ahora sí que toca configurar el fichero de configuración para LDAP, deberemos indicar como siempre el FQDN de algún controlador de dominio, lo ideal siempre es usar el nombre del dominio, así dará igual cuantos DCs tengamos que el DNS balanceará la entrada; o si migramos a futuro las máquinas LDAP no tengamos que acordarnos y venir aquí a tocar. Indicamos el puerto, si usaremos LDAP 389 o LDAPS 636 preferiblemente. Así como un usuario específico con privilegios de lectura para validar las autenticaciones, y adicionalmente podremos filtrar más, por ejemplo a partir de que OU estarán los usuarios o un grupo al que deban pertenecer para poder acceder, y que tengan por defecto el rol de visor:
servers host = "FQDN_LDAP" port = 636 use_ssl = true start_tls = true ssl_skip_verify = false bind_dn = "cn=ldap_grafana,ou=OU2,ou=OU1,dc=dominio,dc = local" bind_password = 'XXXXXXXXXXXXXXXXXXX' search_filter = "(sAMAccountName=%s)" search_base_dns = ["dc = domini,dc = local"] group_search_base_dns = ["cn=Usuarios Grafana,ou=OU2,ou=OU1,dc=dominio,dc = local"] [servers.attributes] name = "givenName" surname = "sn" username = "sAMAccountName" member_of = "memberOf" email = "email" servers.group_mappings group_dn = "cn=Usuarios Grafana,ou=OU2,ou=OU1,dc=dominio,dc = local" org_role = "Viewer"
Y con esto y un bizcocho…. ¡lo tenemos! Reiniciamos Grafana y probamos a validarnos y a acceder con un usuario de Directorio Activo.
sudo systemctl restart grafana-server
Pues esto es todo por hoy 🙂 Mandaros un abrazo, cuidar-vos, cuidar de los vuestros, que us vagi molt bé!