Ich verwende Ubuntu 14.04.1 (mit OpenSSH 6.6 und libpam-google-authenticator 20130529-2).
Ich versuche, SSH-Anmeldungen einzurichten, bei denen sich der öffentliche Schlüssel authentifiziert (ohne Kennwort) und ein Benutzer aufgefordert wird, einen Code vom Google-Authentifikator einzugeben.
Durch das Befolgen / Anpassen dieser Anweisungen erhalte ich eine Aufforderung zur Passworteingabe sowie eine Aufforderung zur Google-Authentifizierung:
- https://scottlinux.com/2013/06/02/use-google-authenticator-for-two-factor-ssh-authentication-in-linux/
- http://www.howtogeek.com/121650/how-to-secure-ssh-with-google-authenticators-two-factor-authentication/
- https://wiki.archlinux.org/index.php/Google_Authenticator und https://wiki.archlinux.org/index.php/SSH_keys#Two-factor_authentication_and_public_keys
- https://www.digitalocean.com/community/tutorials/how-to-protect-ssh-with-two-factor-authentication
Ich habe das Paket installiert, meine /etc/ssh/sshd_config
und /etc/pam.d/ssh
Dateien bearbeitet
In /etc/ssh/sshd_config
:
ChallengeResponseAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
UsePAM yes
und am unteren Rand von /etc/pam.d/ssh
:
auth required pam_google_authenticator.so nullok # (I want to give everyone a chance to set up their 2FA before removing "nullok")
Ich weiß, dass PAM auftragsabhängig ist, aber sshd_config
auch?
Was mache ich falsch? Jede Hilfe wäre dankbar.
PasswordAuthentication no
, aber das war es nicht. Das Problem ist / war, dass ich / habeControlMaster auto
undControlPath
Anweisungen in meiner ~ / .ssh / config-Datei. Ich wollte sicherstellen, dass ich mich nicht aussperre, damit ich immer eine SSH-Sitzung offen lasse. Da mein Computer sie nur wiederverwendete, stieg ich immer ein, ohne dass das System nach einem Token fragte. Ich habe Ihre Antwort als richtig markiert, da jemand, der sie befolgt, tatsächlich ein funktionierendes Setup erhalten würde. Vielen Dank!