En este caso vamos a añadir el esquema dnsdomain2 para servir las zonas DNS desde PowerDNS
Para ver los esquemas que tenemos actualmente ejecutamos el siguiente comando:
~# ls -1 /etc/ldap/slapd.d/cn\=config/cn\=schema cn={0}core.ldif cn={1}cosine.ldif cn={2}nis.ldif cn={3}inetorgperson.ldif cn={4}postfix.ldif
Primero crear un fichero de conversión añadiendo una línea con el esquema que queremos añadir a los que tenemos actualmente (Revisa con el punto anterior que los esquemas que incluyes existen en tu instalación):
~# cat > ./schema_conv.conf << EOL include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/misc.schema include /etc/ldap/schema/postfix.schema include /etc/ldap/schema/dnsdomain2.schema EOL
Convertimos el fichero de esquema a formato LDIF:
~# mkdir /tmp/ldif ~# slaptest -f ./schema_conv.conf -F /tmp/ldif/
Abrir el fichero /tmp/ldif/cn=config/cn=schema/cn={6}dnsdomain2.ldif y cambiar las siguientes líneas:
dn: cn={6}dnsdomain2 objectClass: olcSchemaConfig cn: {6}dnsdomain2
A esto otro:
dn: cn=dnsdomain2,cn=schema,cn=config objectClass: olcSchemaConfig cn: dnsdomain2
Además se deben borrar las siguientes líneas justo al final del fichero:
structuralObjectClass: olcSchemaConfig entryUUID: ccd26c58-54b6-1036-8f0f-cd16c06c9857 creatorsName: cn=config createTimestamp: 20161212130111Z entryCSN: 20161212130111.420925Z#000000#000#000000 modifiersName: cn=config modifyTimestamp: 20161212130111Z
Copiar el fichero al directorio de schemas:
~# cd /etc/ldap/schema ~# cp /tmp/ldif/cn\=config/cn\=schema/cn\=\{6\}dnsdomain2.ldif ./dnsdomain2.ldif
Insertar el nuevo esquema en el árbol de LDAP
~# ldapadd -Q -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/dnsdomain2.ldif adding new entry "cn=dnsdomain2,cn=schema,cn=config"
Y por último verificar que efectivamente está incluído:
~# ls -1 /etc/ldap/slapd.d/cn\=config/cn\=schema cn={0}core.ldif cn={1}cosine.ldif cn={2}nis.ldif cn={3}inetorgperson.ldif cn={4}postfix.ldif cn={5}dnsdomain2.ldif