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