From 635a010a9a0636f873ad3b008d6a781f9695febd Mon Sep 17 00:00:00 2001 From: pigeonmoelleux Date: Sat, 4 Mar 2023 18:45:14 +0100 Subject: [PATCH] =?UTF-8?q?[infrastructure/ldap*]=20Mise=20=C3=A0=20jour?= =?UTF-8?q?=202023?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infrastructure/ldap-adh.md | 26 +++++++++++++++++++++++--- infrastructure/ldap.md | 23 ++++++++++++++--------- 2 files changed, 37 insertions(+), 12 deletions(-) diff --git a/infrastructure/ldap-adh.md b/infrastructure/ldap-adh.md index e55a48b..80aa910 100644 --- a/infrastructure/ldap-adh.md +++ b/infrastructure/ldap-adh.md @@ -10,13 +10,21 @@ Le serveur LDAP est hébergé sur la machine `flirt` et est accessible sur le po ssh -L 1636:172.16.10.114:636 tealc.adm.crans.org -J zamok.adm.crans.org ``` +Le plus simple est d'utiliser `shelldap`, permettant de naviguer simplement à travers la base (voir [la documentation sur le LDAP admin](ldap.md)). + ## Schéma -Voici la hiérarchie actuelle du LDAP (décembre 2021) : +Voici la hiérarchie actuelle du LDAP (mars 2023) : ``` dc=adh,dc=crans,dc=org | ++-cn=admin +| ++-cn=membership +| ++-cn=reader +| +-ou=users | +-cn=user (inetOrgPerson) | @@ -24,7 +32,10 @@ dc=adh,dc=crans,dc=org | +-o=club (organization) | +-ou=hosts - +-cn=machine (device, ipHost, ieee802Device) +| +-cn=machine (device, ipHost, ieee802Device) +| ++-ou=networks + +-ipNetworkNumber= (ipNetwork, ipHost) ``` ## Utilisateurs @@ -58,4 +69,13 @@ Les machines sont ajoutées dans `ou=hosts` et ont les attributs suivants : * `macAddress`: l'adresse MAC de la machine * `description`: l'ouverture de ports de la machine * `owner`: le dn du propriétaire de la machine (utilisateur ou club) - + +# Réseaux + +Les sous-réseaux adhérents sont ajoutés dans `ou=networks` et ont les attributs suivants : + * `dn`: le nom du sous-réseau + * `cn`: le pseudo de l'adhérent propriétaire du sous-réseau + * `description` (optionnel) : deux NSRecord et un DSRecord du sous-réseau + * `ipHostNumber`: IPv6 interface avec le sous-réseau + * `ipNetMaskNumber`: masque de sous-réseau + * `ipNetworkNumber`: première IPv6 du sous-réseau diff --git a/infrastructure/ldap.md b/infrastructure/ldap.md index 52b3119..f092534 100644 --- a/infrastructure/ldap.md +++ b/infrastructure/ldap.md @@ -2,22 +2,22 @@ Le Crans dispose d'une base de donnée avec laquelle on peut communiquer via le protocole LDAP (que nous appellerons par la suite base LDAP ou simplement LDAP) stockant l'ensemble de ses administrateurs, groupes, serveurs, réseaux et services. -La serveur LDAP se trouve sur `tealc` et est répliqué sur les virtualiseurs ainsi que sur `sputnik` et `gulp`. +La serveur LDAP se trouve sur tealc et est répliqué sur les virtualiseurs ainsi que sur sputnik et gulp. ## Connexion -Le LDAP écoute uniquement sur son interface `adm` en LDAPS et en local sur `tealc`. Pour s'y connecter, on peut faire une redirection de ports comme par exemple : - -```bash -ssh -L 1636:172.16.10.1:636 tealc.adm.crans.org -J zamok.adm.crans.org -``` +Le LDAP écoute uniquement sur son interface `adm` en LDAPS et en local sur `flirt`. Pour s'y connecter, le plus simple est de se connecter en ssh sur `flirt`, puis d'utiliser `shelldap` (voir ci-dessous). ## Schéma -Voici la hiérarchie actuelle du LDAP (avril 2021) : +Voici la hiérarchie actuelle du LDAP (mars 2023) : ``` dc=crans,dc=org ++-ou=dns +| +-dc=eu (dNSDomain, domain) +| +-dc=fr (dNSDomain, domain) +| +-dc=org (dNSDomain, domain) | +-ou=group | +-cn=_nounou (posixGroup) @@ -37,6 +37,10 @@ dc=crans,dc=org +-cn=ssh (ipService) ``` +### DNS + +Les enregistrements DNS sont ajoutés dans `ou=dns`, il y a actuellement trois groupes : `eu`, `fr` et `org` contenant chacun le groupe `crans`, correspondant respectivement à `crans.eu`, `crans.fr` et `crans.org`. L'enregistrement DNS de `subdomain.crans.org` sera modifiable dans un attribut `description` de l'entrée `dc=crans,dc=org,ou=dns,dc=crans,dc=org` ou dans une entrée `dc=subdomain,dc=crans,dc=org,ou=dns,dc=crans,dc=org` selon le besoin. + ### Groupes Les groupes sont ajoutés dans `ou=group`, il y a actuellement deux groupes : @@ -220,7 +224,7 @@ Avec cette configuration, il suffit de faire une redirection du port 636 distant Pour naviguer dans la base, on peut aussi utiliser un utilitaire en ligne de commande : shelldap qui permet de se déplacer à coup de `ls`, `cd` et `cat`. shelldap est installé sur `tealc`, mais non configuré. En ajoutant la configuration dans le fichier `.shelldap.rc` : ``` server: ldaps://172.16.10.1:636 -binddn: uid=_PSEUDO,ou=passwd,dc=crans,dc=org +binddn: uid=<_pseudo>,ou=passwd,dc=crans,dc=org basedn: dc=crans,dc=org promptpass: yes tls: yes @@ -230,10 +234,11 @@ tls_cacert: /etc/ldap/ldap.pem Et on peut ensuite se connecter au LDAP : ``` _shirenn@tealc $ shelldap -Bind password: coucoupollion +Bind password: coucoupollion // Ce mot de passe est le mot de passe du compte <_pseudo>, et non l'un de ceux dans le pass crans. ~ > ls cn=admin cn=replicator +ou=dns/ ou=group/ ou=hosts/ ou=networks/