solution validée sur alma9 et ldap://ldx1
This commit is contained in:
42
Readme.md
42
Readme.md
@@ -10,25 +10,27 @@ sudo dnf install -y openldap-clients
|
||||
|
||||
## Caractéristiques du serveur à interroger:
|
||||
|
||||
* adresse: localhost
|
||||
* adresse: ldx1.formation.opendoor.fr
|
||||
* port: 389
|
||||
* dn de connexion: cn=admin,dc=example,dc=fr
|
||||
* mot de passe: admin
|
||||
* racine: dc=example,dc=fr
|
||||
|
||||
Il n'y a pas si longtemps, l'installation par défaut d'openldap acceptait les requètes anonymes en lecture-seule. Ce n'est désormais plus le cas.
|
||||
|
||||
Donc on va systèmatiquement utiliser les options suivantes:
|
||||
|
||||
ldap{add,search,modify,...} -H ldap:/// -wadmin -xD cn=admin,dc=example,dc=fr
|
||||
ldap{add,search,modify,...} -H ldap://ldx1.formation.opendoor.fr -wadmin -xD cn=admin,dc=example,dc=fr
|
||||
|
||||
⚠️ALe mot de passe en clair sur la ligne de commande, ce n'est pas génial. on peut utiliser -W (la commande va nous demander le mot de passe) ou -y ~/.ldap.secret ( ~/.ldap.secret étant un fichier dans lequel on aura écrit notre mot de passe)
|
||||
⚠️ Le mot de passe en clair sur la ligne de commande, ce n'est pas génial. on peut utiliser -W (la commande va nous demander le mot de passe) ou -y ~/.ldap.secret ( ~/.ldap.secret étant un fichier dans lequel on aura écrit notre mot de passe)
|
||||
|
||||
## Qui suis-je
|
||||
|
||||
Faire un _ldapwhoami_ en tant qu'utilisateur admin, puis thomas
|
||||
|
||||
```bash
|
||||
ldapwhoami -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr
|
||||
ldapwhoami -H ldap://localhost -WxD uid=thomas,ou=users,dc=example,dc=fr
|
||||
ldapwhoami -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr
|
||||
ldapwhoami -H ldap://ldx1.formation.opendoor.fr -WxD uid=thomas,ou=users,dc=example,dc=fr
|
||||
```
|
||||
|
||||
## Recherche
|
||||
@@ -36,7 +38,7 @@ ldapwhoami -H ldap://localhost -WxD uid=thomas,ou=users,dc=example,dc=fr
|
||||
Faire une recherche anonyme sur l'ensemble de l'arbre
|
||||
|
||||
```bash
|
||||
ldapsearch -H ldap:/// -x -b dc=example,dc=fr
|
||||
ldapsearch -H ldap://ldx1.opendoor.fr -x -b dc=example,dc=fr # Result 32 no such object
|
||||
```
|
||||
|
||||
### Base de recherche
|
||||
@@ -44,7 +46,7 @@ ldapsearch -H ldap:/// -x -b dc=example,dc=fr
|
||||
Faire une recherche à partir de la branche ou=users,dc=example,dc=fr.
|
||||
|
||||
```bash
|
||||
ldapsearch -H ldap:/// -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=example,dc=fr
|
||||
ldapsearch -H ldap://ldx1.formation.opendoor.fr -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=example,dc=fr
|
||||
```
|
||||
|
||||
### Étendue
|
||||
@@ -52,7 +54,7 @@ ldapsearch -H ldap:/// -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=exam
|
||||
Faire une recherche à partir de la branche user en n'affichant que les enfants de premier niveau
|
||||
|
||||
```bash
|
||||
ldapsearch -H ldap:/// -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=example,dc=fr -s one
|
||||
ldapsearch -H ldap://ldx1.formation.opendoor.fr -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=example,dc=fr -s one
|
||||
```
|
||||
|
||||
### Filtres
|
||||
@@ -60,13 +62,13 @@ ldapsearch -H ldap:/// -wadmin -xD cn=admin,dc=example,dc=fr -b ou=users,dc=exam
|
||||
Trouvez les entrées ldap dont la classe d'objet est _posixAccount_
|
||||
|
||||
```bash
|
||||
ldapsearch -LLLH ldap://localhost -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr objectclass=posixaccount
|
||||
ldapsearch -LLLH ldap://ldx1.formation.opendoor.fr -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr objectclass=posixaccount
|
||||
```
|
||||
|
||||
Trouvez les entrées ldap dont la classe d'objet est _posixAccount_ *et* dont le gidNumber est _1238_
|
||||
|
||||
```bash
|
||||
ldapsearch -LLLH ldap://localhost -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))'
|
||||
ldapsearch -LLLH ldap://ldx1.formation.opendoor.fr -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))'
|
||||
```
|
||||
|
||||
|
||||
@@ -75,13 +77,13 @@ ldapsearch -LLLH ldap://localhost -b dc=example,dc=fr -xwadmin -D cn=admin,dc=ex
|
||||
Récupérer uniquement le _mail_ de l'entrée correspondant à la recherche précédente
|
||||
|
||||
```bash
|
||||
ldapsearch -LLLH ldap://localhost -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))' mail
|
||||
ldapsearch -LLLH ldap://ldx1.formation.opendoor.fr -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))' mail
|
||||
```
|
||||
|
||||
Récupérer uniquement les attributs relatifs à la classe d'objet _person_
|
||||
|
||||
```bash
|
||||
ldapsearch -LLLH ldap://localhost -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))' @person
|
||||
ldapsearch -LLLH ldap://ldx1.formation.opendoor.fr -b dc=example,dc=fr -xwadmin -D cn=admin,dc=example,dc=fr '(&(gidnumber=1238)(objectclass=posixaccount))' @person
|
||||
```
|
||||
❗ Notre utilisateur est de la classe _inetOrgPerson_ qui dérive de _Person_
|
||||
|
||||
@@ -106,17 +108,17 @@ memberuid: thomas
|
||||
```
|
||||
|
||||
```bash
|
||||
ldapadd -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr -f groupe.ldif
|
||||
ldapadd -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr -f groupe.ldif
|
||||
```
|
||||
|
||||
## Modification d'un mot de passe
|
||||
|
||||
```bash
|
||||
ldappasswd -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr # génération d'un mot de passe aléatoire
|
||||
ldappasswd -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr # génération d'un mot de passe aléatoire
|
||||
|
||||
ldappasswd -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr -s 123Soleil # ⚠️ mot de passe sur ligne de commande
|
||||
ldappasswd -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr -s 123Soleil # ⚠️ mot de passe sur ligne de commande
|
||||
|
||||
ldappasswd -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr -S # définition du mot de passe par dialogue
|
||||
ldappasswd -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr uid=thomas,ou=users,dc=example,dc=fr -S # définition du mot de passe par dialogue
|
||||
```
|
||||
|
||||
|
||||
@@ -144,7 +146,7 @@ loginShell: /bin/fish
|
||||
|
||||
|
||||
```bash
|
||||
ldapmodify -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr -f modif_user.ldif
|
||||
ldapmodify -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr -f modif_user.ldif
|
||||
```
|
||||
|
||||
## Déplacement / copie
|
||||
@@ -154,7 +156,7 @@ Renommez le groupe utilisateurs en utilisateur·trice·s
|
||||
Constatez le résultat.
|
||||
|
||||
```bash
|
||||
ldapmodrdn -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr -r cn=utilisateurs,ou=groups,dc=example,dc=fr cn=utilisateur·trice·s
|
||||
ldapmodrdn -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr -r cn=utilisateurs,ou=groups,dc=example,dc=fr cn=utilisateur·trice·s
|
||||
|
||||
echo 'Y249dXRpbGlzYXRldXLCt3RyaWNlwrdzLG91PUdyb3VwcyxkYz1leGFtcGxlLGRjPWNvbQ==' | base64 -d
|
||||
cn=utilisateur·trice·s,ou=Groups,dc=example,dc=fr
|
||||
@@ -165,11 +167,11 @@ cn=utilisateur·trice·s,ou=Groups,dc=example,dc=fr
|
||||
Recrééz le groupe "utilisateurs",
|
||||
|
||||
```bash
|
||||
ldapadd -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr -f groupe.ldif
|
||||
ldapadd -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr -f groupe.ldif
|
||||
```
|
||||
|
||||
Supprimez le groupe "utilisateur·trice·s"
|
||||
|
||||
```bash
|
||||
ldapdelete -H ldap://localhost -xwadmin -D cn=admin,dc=example,dc=fr cn=utilisateur·trice·s,ou=Groups,dc=example,dc=fr
|
||||
ldapdelete -H ldap://ldx1.formation.opendoor.fr -xwadmin -D cn=admin,dc=example,dc=fr cn=utilisateur·trice·s,ou=Groups,dc=example,dc=fr
|
||||
```
|
||||
Reference in New Issue
Block a user