J'ai récemment activé l'authentification à deux facteurs à l'aide de Google-Authenticator sur mon serveur SSH. Cependant, je suis maintenant confronté à un problème:
J'ai un groupe d'utilisateurs différent sur mon serveur que j'utilise pour SFTP, mais ce groupe n'est plus en mesure de se connecter car 2FA n'est pas configuré pour les utilisateurs du groupe. Est-il possible de désactiver le module d'authentification Google pour ce groupe? L'activer pour les utilisateurs du groupe n'est pas une option car plusieurs utilisateurs utiliseront ce compte.
PS: j'utilise openssh-server
Réponses:
Vous pouvez utiliser le
pam_succeed_if
module (voir la page de manuel) avantpam_google_authenticator
de sauter cette partie pour votre groupe:la source
[success=1 default=ignore]
lieu derequired
. À l'heure actuelle, un utilisateur qui n'est pas dans le groupe entraînera l'échec de l'authentification, je pense.success=1
fera sauter la méthode suivante,default=ignore
signifie que les utilisateurs qui ne sont pas dans le groupe passeront simplement à la méthode suivante.Certains clients SFTP peuvent gérer 2FA. Par exemple, j'utilise 2FA avec FileZilla et WinSCP et ils fonctionnent. J'ai également configuré l'authentification par clé ssh et cela fonctionne avec 2FA.
Cependant, votre question est intéressante et j'ai fait un bref sondage. J'ai trouvé cette réponse .
Ainsi, il est possible (et facile) d'exécuter des instances ssh distinctes. Je l'ai déjà testé.
Faites des copies séparées du
sshd_config
fichier.Modifiez ces nouveaux
config
fichiers. Une des choses que vous devez changer est le port shh. Selon l'exemple:2.a)
sshd_config_pwd
les lignes spécifiques sont:2.b)
sshd_config_2fa
les lignes spécifiques sont:Ouvrez les ports nécessaires dans le pare-feu. Selon l'exemple:
Exécutez les nouvelles instances ssh:
C'est ça.
la source
sshd_config
pour utiliser une pile PAM différente et ne pas utiliser 2FA?Ce qui suit fera Google 2FA obligatoire pour tous les utilisateurs ,
sauf les utilisateurs appartenant au sudo et administrateur groupe
( qui signifie que si un utilisateur du groupe ou admin ne sudo pas 2FA configuré, il l'authentifier / elle en fonction de leur clé publique):
Fichier:
/etc/pam.d/sshd
Fichier:
/etc/ssh/sshd_config
Résultats:
Selon la documentation README.md de Google Authenticator :
Cela rend l'utilisation d'
nullok
ici sûre.la source