Table des matières

Authentification UNIX via SSSd

Installation

apt install sssd sssd-ldap sssd-tools libpam-sss libnss-sss

Configuration

Il est possible de valider la configuration avec la commande suivante :
sssctl config-check

Configuration NSS

Activer sss pour les diverses services déclarer dans le fichier /etc/nsswitch.conf. Par exemple :

passwd:         files systemd sss
group:          files systemd sss
shadow:         files sss
gshadow:        files

hosts:          files dns
networks:       files

protocols:      db files
services:       db files sss
ethers:         db files
rpc:            db files

netgroup:       nis sss
automount:      sss
Pour vérifier que les informations des utilisateurs remontent bien, plusieurs solutions :
  • getent passwd
  • id [username]
  • sssctl user-checks [username]

Création automatique des dossiers personnels des utilisateurs lors de leur première connexion

Configuration de SSH

Il est possible de faire en sorte que les clés SSH publiques autorisées des utilisateurs soient récupérées dans l'annuaire LDAP (si elles y sont stockées).

Pour cela :

Il est possible de vérifier que cela fonctionne correctement en lançant la commande sss_ssh_authorizedkeys avec en paramètre le nom d'un utilisateur ayant saisi sa clé publique SSH dans l'annuaire : La commande doit alors normalement retourner la clé de l'utilisateur.

Remarque : il est pas indispensable que l'utilisateur soit autorisé à se connecter à cette machine (=passe le test du paramètre ldap_access_filter) pour que ce test fonctionne.

L'activation du paramètre AuthorizedKeysCommandUser ne désactive pas pour autant le fichier spécifié via le paramètre AuthorizedKeysFile. Dans les faits, sshd va d'abord tenter de trouver une clé correspondante dans le fichier spécifié via le paramètre AuthorizedKeysFile et n'exécutera la commande du paramètre AuthorizedKeysCommandUser que si aucune correspondance n'a été trouvée.