Rol openldap-docker
Este rol configurar un servicio OpenLDAP dentro de un container Docker. Permite un esquema de replicación delta-syncrepl deltasync.
El rol efectúa a grandes rasgos las siguientes tareas:
-
Configuración general: setea clave del administrador
cn=admin,cn=configy carga esquemas. -
Configuración de provider delta-syncrepl: configura los módulos
accesslogysyncproven el provider de replicación. -
Configuración de dominios: Hace un loop sobre cada dominio especificado en
openldap_domains, configurando entradas de las base de datos encn=configy clientes de replicación del dominio.
La siguientes consideraciones deben ser tenidas en cuenta al usar este rol:
-
Se deben especificar primero los dominios más generales (
ejemplo.com.ar) y luego los más específicos (sub.ejemplo.com.ar). -
La base
cn=accesslogdel provider requiere que se especifique un usuario administrador en la variableopenldap_accesslog_admin_dn. Este usuario debe pertenecer a alguno de los dominios configurados en el servidor. -
Se debe setear una clave para el usuario administrador
cn=admin,cn=configen la variableopenldap_admin_password.
Configuración del rol
Las variables a continuación determinan el comportamiento del rol. El valor por defecto se muestra entre paréntesis.
Configuraciones generales
-
openldap_schemas: Schemas a cargar. Cada schema personalizado se debe agregar el LDIF correspondiente enfiles/schemas/NOMBRE.ldifdentro del rol. Valor por defecto:- core - cosine - nis - inetorgperson - misc -
openldap_create_dit_entries(yes): Especifica si se debe crear el DIT: dominios, usuarios administradores, OUs, para cada dominio.
Replicación
A no ser que se seteen las variables a continuación, el rol no configura replicación alguna.
-
openldap_provider(no): En un esquema de replicación, el host es provider. -
openldap_consumer(no): En un esquema de replicación, el host es consumer. -
openldap_replicator_base(dc=example,dc=com): DN base a partir del cual se replica. -
openldap_accesslog_dir(/var/lib/ldap/accesslog): Directorio donde crear la basecn=accesslog.
Credenciales
-
openldap_admin_password(password): Clave del usuario administradorcn=admin,cn=config. -
openldap_accesslog_admin_dn(cn=admin,dc=example,dc=com): DN del usuario administrador para la basecn=accesslog. Se debe setear en el provider. -
openldap_replicator_dn(cn=replicator,dc=example,dc=com): DN del usuario usado para replicación. Se debe setear en el provider y en el consumer. -
openldap_replicator_password(password): Clave del usuario usado para replicación. Se debe setear en el provider y en el consumer.
Valores por defecto para los dominios
-
openldap_default_db_access: Lista con permisos de acceso. Valor por defecto:- {0}to attrs=userPassword by self write by anonymous auth by * none" - {1}to attrs=shadowLastChange by self write by * read" - {2}to * by * read" -
openldap_default_db_index: Lista con índices del dominio. Valor por defecto:- cn,uid eq - member,memberUid eq - objectClass eq - uidNumber,gidNumber eq -
openldap_default_db_limits: Límites de acceso al dominio. Valor por defecto:[](lista vacía) -
openldap_default_domain_ous: OUs a crear dentro del dominio. Valor por defecto:- Alias - Group - People
Configuración de dominios
La configuración de los dominios se setea en la variable
openldap_domains ([]). Esta variable es una lista de
diccionarios en la que cada item representa un dominio.
Cada dominio (diccionario) tiene las siguientes claves:
-
name: Obligatorio. Nombre del dominio en notaciónmi.dominio.com. Para este ejemplo se crea la organizaciondc=mi,dc=ejemplo,dc=com. -
admincn(admin): cn del administrador, cuyo DN vendrá dado porcn=admin,dc=mi,dc=ejemplo,dc=com. -
adminpw(password): clave del administrador del dominio. Se recomienda cambiar este valor, o setear la variableadminpw_id. -
adminpw_id: ID de la clave del administrador en Rattic. Sobreescribe el valor deadminpwcon la clave obtenida de Rattic. -
access: lista con permisos de acceso. Por defecto toma el valor de la variableopenldap_default_db_access. -
ou: unidades organizacionales del dominio. Por defecto toma el valor de la variableopenldap_default_domain_ous. -
Si bien se crea un usuario admin para los subdominios, éstos por defecto no tienen permiso alguno.