cheatsheet ldapadd | zuhdi.org

Cheat Sheet ldapadd

Environment

  • Debian 10.0 x64
  • slapd 2.4.44 (Jan 29 2019 17:42:45)
  • ldapmodify (Aug 10 2019 18:58:18)

Log 2019 / 11

1. Install ldap-utils

root@chimera:~# apt-get -y install ldap-utils

root@chimera:~# ldapadd -VV
ldapadd: @(#) $OpenLDAP: ldapmodify  (Aug 10 2019 18:58:18) $
        Debian OpenLDAP Maintainers <pkg-openldap-devel@lists.alioth.debian.org>
        (LDAP library: OpenLDAP 20447)

2. ldapadd

2.1. Inline

ldapadd -H ldap://athos.host -D "cn=admin,dc=athos,dc=host" \
  -w p@ssw0rd <<EOF
#dn: dc=athos,dc=host
#objectClass: top
#objectClass: dcObject
#objectClass: organization
#o: athos
#dc: athos
#description: athos.host

#dn: ou=GIT,dc=athos,dc=host
#objectClass: top
#objectClass: organizationalUnit
#ou: GIT
#description: Group IT

#dn: cn=Group IT,ou=GIT,dc=athos,dc=host
#objectClass: posixGroup
#objectClass: top
#gidNumber: 40010
#cn: Group IT

dn: uid=zuhdi-alpha,ou=GIT,dc=athos,dc=host
objectClass: posixAccount
objectClass: top
objectClass: inetOrgPerson
objectClass: shadowAccount
givenName: zuhdi-alpha
sn: najib
displayName: Zuhdi Najib (Alpha)
homeDirectory: /home/zuhdi-alpha
loginShell: /bin/bash
cn: Zuhdi Najib
uidNumber: 5000
gidNumber: 40010
uid: zuhdi-alpha
gecos: Zuhdi Najib (Alpha)
shadowFlag: 0
shadowMin: 0
shadowMax: 99999
shadowWarning: 0
shadowInactive: 99999
shadowLastChange: 12011
shadowExpire: 99999
EOF

root@chimera:~# ldapadd -H ldap://athos.host -D "cn=admin,dc=athos,dc=host" \
>   -w p@ssw0rd <<EOF
(truncated)
adding new entry "uid=zuhdi-alpha,ou=GIT,dc=athos,dc=host"

2.2. Using LDIF File

cat <<EOF > input.ldif
dn: uid=zuhdi-charlie,ou=GIT,dc=athos,dc=host
objectClass: posixAccount
objectClass: top
objectClass: inetOrgPerson
objectClass: shadowAccount
givenName: zuhdi-charlie
sn: najib
displayName: Zuhdi Najib (Charlie)
homeDirectory: /home/zuhdi-charlie
loginShell: /bin/bash
cn: Zuhdi Najib
uidNumber: 5000
gidNumber: 40010
uid: zuhdi-charlie
gecos: Zuhdi Najib (charlie)
shadowFlag: 0
shadowMin: 0
shadowMax: 99999
shadowWarning: 0
shadowInactive: 99999
shadowLastChange: 12011
shadowExpire: 99999
EOF

root@chimera:~# cat <<EOF > input.ldif
> dn: uid=zuhdi-charlie,ou=GIT,dc=athos,dc=host
> objectClass: posixAccount
> objectClass: top
> objectClass: inetOrgPerson
> objectClass: shadowAccount
> givenName: zuhdi-charlie
> sn: najib
> displayName: Zuhdi Najib (Charlie)
> homeDirectory: /home/zuhdi-charlie
> loginShell: /bin/bash
> cn: Zuhdi Najib
> uidNumber: 5000
> gidNumber: 40010
> uid: zuhdi-charlie
> gecos: Zuhdi Najib (charlie)
> shadowFlag: 0
> shadowMin: 0
> shadowMax: 99999
> shadowWarning: 0
> shadowInactive: 99999
> shadowLastChange: 12011
> shadowExpire: 99999
> EOF

ldapadd -H ldap://athos.host -D "cn=admin,dc=athos,dc=host" \
  -w p@ssw0rd -f input.ldif

root@chimera:~# ldapadd -H ldap://athos.host -D "cn=admin,dc=athos,dc=host" \
>   -w p@ssw0rd -f input.ldif
adding new entry "uid=zuhdi-charlie,ou=GIT,dc=athos,dc=host"

3. Verification

ldapsearch -H ldap://athos.host -x -LLL -b 'dc=athos,dc=host' \
  'uid=zuhdi-*'

root@chimera:~# ldapsearch -H ldap://athos.host -x -LLL -b 'dc=athos,dc=host' \
>   'uid=zuhdi-*'
dn: uid=zuhdi-alpha,ou=GIT,dc=athos,dc=host
objectClass: posixAccount
objectClass: top
objectClass: inetOrgPerson
objectClass: shadowAccount
givenName: zuhdi-alpha
sn: najib
displayName: Zuhdi Najib (Alpha)
homeDirectory: /home/zuhdi-alpha
loginShell: /bin/bash
cn: Zuhdi Najib
uidNumber: 5000
gidNumber: 40010
uid: zuhdi-alpha
gecos: Zuhdi Najib (Alpha)
shadowFlag: 0
shadowMin: 0
shadowMax: 99999
shadowWarning: 0
shadowInactive: 99999
shadowLastChange: 12011
shadowExpire: 99999

dn: uid=zuhdi-charlie,ou=GIT,dc=athos,dc=host
objectClass: posixAccount
objectClass: top
objectClass: inetOrgPerson
objectClass: shadowAccount
givenName: zuhdi-charlie
sn: najib
displayName: Zuhdi Najib (Charlie)
homeDirectory: /home/zuhdi-charlie
loginShell: /bin/bash
cn: Zuhdi Najib
uidNumber: 5000
gidNumber: 40010
uid: zuhdi-charlie
gecos: Zuhdi Najib (charlie)
shadowFlag: 0
shadowMin: 0
shadowMax: 99999
shadowWarning: 0
shadowInactive: 99999
shadowLastChange: 12011
shadowExpire: 99999

Hugo. Malte Kiefer & Zuhdi Najib.