Topologie logique
Les manipulations présentées dans ce support utilisent un domaine de diffusion unique (VLAN) dans lequel on trouve au moins deux systèmes virtuels ou physiques avec deux rôles distincts.
-
Le système serveur cumule l'hébergement des services d'identités et de stockage. Il est le centre de distribution de clés Kerberos (KDC) et l'autorité de certification locale.
-
Le système client interroge l'annuaire et présente les comptes ainsi que les points de montages des répertoires personnels de ces comptes.
Scénario
Ce support de travaux pratiques constitue la synthèse des deux énoncés qui le précèdent dans la série Administration système en réseau :
-
Introduction au système de fichiers réseau NFSv4 : Installer et configurer un serveur NFSv4 avec sécurité Kerberos (
sec=krb5p) et chiffrement des échanges au niveau transport avec TLS (xprtsec=tls:mtls). -
Introduction aux annuaires LDAP avec OpenLDAP : Déployer un annuaire OpenLDAP avec une authentification forte SASL/GSSAPI (Kerberos) et un chiffrement des échanges au niveau transport avec StartTLS ou
ldaps://.
L’objectif de ce support est de mutualiser les deux services sur le même couple serveur/client afin de reproduire un cas d’usage classique en environnement de production : un utilisateur s’authentifie via LDAP, puis son répertoire personnel est monté automatiquement à la connexion depuis un partage NFS sécurisé.
Cette mutualisation soulève deux nouvelles problématiques, traitées en détail dans cette synthèse :
-
La coexistence, sur le même hôte, des services
slapd,krb5-kdc,nfs-kernel-serveretidmapd, qui partagent le même royaume KerberosLAB.LOCALet la même autorité de certification X509. -
La publication des cartes de montage automatique (
auto.master,auto.home) dans le DIT LDAP plutôt que dans des fichiers locaux, afin que tout clientautofsconfiguré pour interroger l'annuaire dispose automatiquement des règles de montage à jour.
Tableau 1. Répartition des rôles entre client et serveur
| Client | Serveur |
|---|---|
Configurez la résolution statique des noms d'hôtes (/etc/hosts). Déployez l'autorité labCA.crt dans le magasin système (update-ca-certificates). Installez ktls-utils avec le certificat et la clé client. Installez les paquets Kerberos client (krb5-user, libpam-krb5) et déployez le keytab machine /etc/krb5.keytab. |
Configurez la résolution statique des noms d'hôtes (/etc/hosts). Générez l'autorité commune labCA et l'ensemble des clés et certificats TLS (LDAP et NFS). Installez le KDC, créez le royaume LAB.LOCAL, les principaux de service (ldap/..., nfs/...) et machine (host/...). Déployez les fichiers keytab dédiés. |
Configurez /etc/ldap/ldap.conf avec la racine de confiance et le contrôle strict TLS. Déployez nslcd, libnss-ldapd et libpam-ldapd avec le compte de service nslcd-proxy. Validez la résolution des comptes (id, getent) et le bind GSSAPI machine (ldapwhoami -Y GSSAPI). |
Initialisez la configuration dynamique cn=config de slapd (dc=lab,dc=local). Activez TLS (ldaps://, seuil SSF 128), l'authentification SASL/GSSAPI et les règles d'équivalence d'identités (olcAuthzRegexp). Implantez l'arbre DIT (users, groups, hosts), les comptes Skywalker et le compte nslcd-proxy. |
Installez nfs-common et vérifiez les arborescences exportées par le serveur (showmount -e). Initiez une première connexion SSH (ssh anakin@srvr.lab.local) pour déclencher la création physique de son répertoire personnel sur le stockage du serveur. |
Installez nfs-kernel-server et exportez /home/exports/home avec les options sec=krb5p et xprtsec=tls:mtls. Créez le montage local bind sur /ahome. Configurez le serveur comme client de son propre annuaire et activez la création automatique de répertoires (pam_mkhomedir). |
Installez le paquet autofs-ldap pour disposer du démon automount. Localisez le schéma /etc/ldap/schema/autofs.schema et transférez-le sur le serveur. |
Convertissez autofs.schema au format LDIF (slaptest) et intégrez-le dans cn=schema,cn=config. Publiez dans l'unité ou=automount les cartes de montage auto.master et auto.home avec les options de montage sécurisées (sec=krb5p,xprtsec=mtls). |
Configurez autofs pour interroger l'annuaire via ldaps:// (/etc/nsswitch.conf, /etc/default/autofs) avec authentification SASL/GSSAPI machine (/etc/autofs_ldap_auth.conf). Tentez une ouverture de session (su - anakin) et constatez le refus d'accès (Permission non accordée) lié à l'absence de ticket utilisateur. |
Provisionnez dans le KDC les principaux Kerberos pour chaque compte utilisateur (user@LAB.LOCAL) en synchronisant leurs mots de passe avec les secrets générés lors de la création des entrées LDAP. |
Validez l'accès transparent complet : ouverture de session (su - anakin), obtention automatique du ticket Kerberos via libpam-krb5, déclenchement de l'automontage indirect sous /ahome/anakin et accès effectif aux fichiers sur le montage chiffré de bout en bout (sec=krb5p,xprtsec=mtls). |
Supervisez et validez les transactions dans les journaux du KDC (krb5kdc), les accès à l'annuaire (slapd) et l'état des exportations actives (exportfs -v). |
Plan d'adressage
Le tableau ci-dessous correspond au plan d’adressage de la maquette qui a servi à traiter les questions des sections suivantes. Lors des séances de travaux pratiques, un plan d’adressage spécifique est fourni à chaque binôme d’étudiants. Il faut se référer au document Infrastructure.
Tableau 2. Plan d'adressage de la maquette « Association LDAP, NFSv4 et autofs »
| Rôle | Nom | VLAN | Adresses IP | Interface tap |
|---|---|---|---|---|
| Serveur | srvr.lab.local |
VVV | 172.28.VVV.XXX/242001:db8:VVVV::baad:caff:fefe:XXXX/64 |
5 |
| Client | clnt.lab.local |
VVV | 172.28.VVV.YYY/242001:db8:VVVV::baad:caff:fefe:YYYY/64 |
6 |
Le nom de domaine DNS lab.local correspond au royaume Kerberos LAB.LOCAL et au contexte de nommage LDAP dc=lab,dc=local. Cette correspondance est essentielle à la fois pour la résolution automatique du realm Kerberos et pour la cohérence des identifiants distinctifs LDAP avec les noms DNS.
