4 votes

Pourquoi sshd utilise-t-il toujours PAM ?

Le contexte/comportement est le suivant : si vous vous connectez à la boîte par ssh et que GSSAPI/Kerberos réussit, et que vous avez un utilisateur local dans la base de données de la boîte. /etc/passwd vous vous connectez bien selon la configuration PAM ci-dessous. Tout va bien.

Mais si vous n'avez pas d'utilisateur local en /etc/passwd mais vous pouvez obtenir un ticket de service host/XXXXXX (GSSAPI fonctionne), sshd échoue la connexion et ne reçoit jamais d'invite pour SecurID (notre pam radius pointe vers un SecurID). Je comprends cela. Puisque le serveur a 'authentifié' l'utilisateur et que pam_unix connaît l'utilisateur n'est pas dans /etc/passwd, il n'y a pas besoin d'utiliser d'autres méthodes d'authentification.

Cependant, ma question est la suivante : pourquoi, si je lance d'abord kdestroy (en faisant intentionnellement échouer GSSAPI), (et que je n'existe toujours pas dans /etc/passwd), est-ce que j'obtiens soudainement une invite Securid (c'est-à-dire que PAM est engagé) ?

L'exécution de sshd avec débogage montre : clavier-interactif reporté pour l'utilisateur invalide "user". Premièrement, pourquoi n'aurait-il pas simplement échoué ? Deuxièmement, pourquoi un retard ? pam_radius est 'requisite', pas 'required'.

Je m'attendrais également à un échec pur et simple, car même si je ne me suis pas authentifié, je n'ai jamais réussi à passer le cap de pam_unix.

Les dossiers :

/etc/ssh/sshd_config

....  
ChallengeResponseAuthentication yes  
GSSAPIAuthentication            yes  
HostbasedAuthentication         no  
KerberosAuthentication          no  
PasswordAuthentication          no  
PubkeyAuthentication            yes  
RhostsRSAAuthentication         no  
RSAAuthentication               yes  
UsePAM                          yes      
....

/etc/pam.d/sshd

auth       requisite        pam_radius_auth.so conf=pam_radius_auth.conf debug retry=3  
auth       required     pam_nologin.so  
auth     required     pam_krb5.so.1  
account  sufficient      pam_radius_auth.so conf=pam_radius_auth.conf  
account    required     pam_stack.so service=system-auth  
password   required     pam_stack.so service=system-auth  
session    required     pam_stack.so service=system-auth  
session    required     pam_limits.so  
session    optional     pam_console.so  

/etc/pam.d/system-auth

auth        required      pam_env.so  
auth        sufficient    pam_krb5.so.1  
auth        sufficient    pam_unix.so  
auth        required      pam_deny.so  
account     required      pam_unix.so  
password    required      pam_cracklib.so retry=3  
password    sufficient    pam_unix.so use_authtok md5 shadow  
password    required      pam_deny.so  
session     required      pam_limits.so  
session     required      pam_unix.so

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X