• Agregar usuarios y grupos a OpenLDAP usando archivos LDIF

    Si vienes de este hack donde instalamos el servidor OpenLDAP en Debian te interesará leer este hack donde aprenderás a crear usuarios y grupos a partir de archivos ldif.

    Pero antes de crear el usuario debes elegir que tipo de clase estructural le vas a dar al usuario. Cada clase estructural tiene sus atributos. Sólo puede elegir una clase estructural por cada entrada. Aquí te dejo cada clase estructural con sus atributos mínimos:

    objectClass: person

    Atributos mínimos:

    • cn
    • sn

    objectClass: organizationalPerson

    Atributos mínimos:

    • cn
    • sn

    objectClass: inetOrgPerson

    Atributos mínimos:

    • cn
    • sn

    objectClass: residentialPerson

    Atributos mínimos:

    • cn
    • sn

    Luego puede elegir una clase auxiliar. Por cada entrada podrás poner todas las que quieras. Aquí te dejo las posibles clases auxiliares con sus atributos mínimos:

    objectClass: posixAccount

    Atributos mínimos:

    • cn
    • uid
    • uidNumber
    • gidNumber
    • homeDirectory

    objectClass: shadowAccount

    Atributos mínimos:

    • uid

    Teniendo en cuenta los datos de arriba, las líneas mínimas para crear un usuario serían:

    dn: uid=alberteinstein,ou=profesores,dc=dominio,dc=com
    objectClass: organizationalPerson
    cn: Albert
    sn: Einstein

    O, usando agregando la clase auxiliar shadowAccount:

    dn: uid=alberteinstein,ou=profesores,dc=dominio,dc=com
    objectClass: organizationalPerson
    objectClass: shadowAccount
    uid: alberteinstein
    cn: Pepe
    sn: Goteras

    Y éstas otras agregando a lo anterior la clase auxiliar posixAccount:

    dn: uid=alberteinstein,ou=profesores,dc=dominio,dc=com
    objectClass: organizationalPerson
    objectClass: shadowAccount
    objectClass: posixAccount
    uid: alberteinstein
    cn: Pepe
    sn: Goteras
    uidNumber: 2000
    gidNumber: 10000
    homeDirectory: /home/alberteinstein
    

    Ahora vamos a crear un usuario, no sólo con atributos mínimos necesarios, sino con muchos atributos extra:

    Creamos el archivo ldif para crear el primer usuario completo (/root/OpenLDAP/Usuario1.ldif):

    dn: uid=nipegun,ou=usuarios,dc=hacks4geeks,dc=local
      objectClass: inetOrgPerson
      objectClass: posixAccount
      objectClass: shadowAccount
      uid: nipegun
      sn: Petersen
      givenName: Nico
      cn: Nico Petersen
      displayName: Nico Petersen
      uidNumber: 2000
      gidNumber: 10000
      userPassword: 12345678
      gecos: Nico Petersen
      loginShell: /bin/bash
      homeDirectory: /home/nipegun
      shadowExpire: -1
      shadowFlag: 0
      shadowWarning: 7
      shadowMin: 8
      shadowMax: 999999
      shadowLastChange: 10877
      mail: nipegun@hacks4geeks.com
      postalCode: 20300
      o: hacks4geeks
      initials: NPG

    Agregamos el usuario a OpenLDAP:

    ldapadd -x -D cn=admin,dc=hacks4geeks,dc=local -W -f /root/OpenLDAP/Usuario1.ldif

    Nos pedirá la contraseña de administración de OpenLDAP.

    Creamos el archivo ldif para crear el primer grupo (/root/OpenLDAP/Grupo1.ldif):

    dn: cn=TecInf,ou=grupos,dc=hacks4geeks,dc=local
    objectClass: posixGroup
    cn: TECINF
    gidNumber: 10000

    Agregamos el grupo a OpenLDAP:

    ldapadd -x -D cn=admin,dc=hacks4geeks,dc=local -W -f /root/OpenLDAP/Grupo1.ldif

    Nos volverá a pedir la contraseña de administración.

    Utilizamos ldapsearch para comprobar que todo se agregó correctamente a OpenLDAP.

    ldapsearch -xLLL -b "dc=hacks4geeks,dc=local" uid=nipegun sn givenName cn

     

    Deja una respuesta