Ssh mit publickey PasswordAuthentication no Problem
Hallo Kollegen,
mal eine vlt. dumme Frage ich find den Fehler nicht
Ich habe ssh publickey mit 2FA OTP wie folgt eingerichtet:
die 10-totp.conf schaut so aus:
in der /etc/pam.d/sshd ist PasswordAuthentication auf no gesetzt.
wen ich versuche mich einzuloggen mit ssh -v hostname bekomme ich die Eingabeaufforderrung für das OTP gefolgt von der für das passwort. Wie muss ich das noch konfigurieren, damit kein passwort mehr aubgefragt wird?
Gruss
Uli
mal eine vlt. dumme Frage ich find den Fehler nicht
Ich habe ssh publickey mit 2FA OTP wie folgt eingerichtet:
PAM-Modul installieren
Bearbeiten
apt-get install libpam-google-authenticator
2FA einrichten
Bearbeiten
google-authenticator --time-based --disallow-reuse --window-size=3 --step-size=30 --rate-limit=3 --rate-time=30
Den ausgegebenen QR-Code mit einer TOTP-App wie Google Authenticator oder FreeOTP+ aufnehmen. Das Geheimnis (Secret) und die Wiederherstellungscodes in einer KeePass-Datenbank speichern.
Das Programm erstellt die Datei ~/.google_authenticator.
Secure Shell
Bearbeiten
Die SSH-Anmeldung an unseren Servern soll nur noch mit Public-Key-Authentifizierung und einem Einmalkennwort möglich sein. Ausnahmen können konfiguriert werden.
PAM konfigurieren
Das PAM-Modul wird am Anfang der Datei /etc/pam.d/sshd eingefügt.
# PAM configuration for the Secure Shell service
# Google Authenticator
auth [success=done new_authtok_reqd=done ignore=ignore default=die] pam_google_authenticator.so
# Standard Un*x authentication.
@include common-auth
Die Zeile mit common-auth nicht auskommentieren.
Siehe https://wiki.ubuntuusers.de/PAM/ für eine Beschreibung von PAM.
SSHD konfigurieren
Die Datei /etc/ssh/sshd_config.d/10-totp.conf anlegen.
# Google Authenticator
UsePAM yes
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication yes
KbdInteractiveAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
PermitRootLogin yes
SSHD neu starten
systemctl restart sshd
die 10-totp.conf schaut so aus:
# Google Authenticator
UsePAM yes
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication yes
KbdInteractiveAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
PermitRootLogin yes
in der /etc/pam.d/sshd ist PasswordAuthentication auf no gesetzt.
wen ich versuche mich einzuloggen mit ssh -v hostname bekomme ich die Eingabeaufforderrung für das OTP gefolgt von der für das passwort. Wie muss ich das noch konfigurieren, damit kein passwort mehr aubgefragt wird?
Gruss
Uli
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 670283
Url: https://administrator.de/contentid/670283
Ausgedruckt am: 19.12.2024 um 14:12 Uhr
3 Kommentare
Neuester Kommentar
Wie muss ich das noch konfigurieren, damit kein passwort mehr aubgefragt wird?
In der /etc/pam.d/sshd
diese Zeile:@include common-auth
# @include common-auth
So das es am Ende so in der
/etc/pam.d/sshd
aussieht# google authenticator
auth required pam_google_authenticator.so
# Standard Un*x authentication
# @include common-auth
# ...
# ..
Klappt hier damit einwandfrei (Debian 12 (Bookworm)):
/etc/sshd/sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication yes
KbdInteractiveAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
UsePAM yes
/etc/pam.d/sshd
# google authenticator
auth required pam_google_authenticator.so
# Standard Un*x authentication
# @include common-auth
# ... rest bleibt gleich
Test:
Works as designed.
Gruß gastric
Dann nenne doch bitte als erstes mal die verwendete Debian Version und poste alle deine Konfigurationsdateien für sshd und pam. uns das herbei Raten können wir hier leider nicht ... Funktioniert so wie gesagt auf einem aktuellen Debian Bookworm out of the box einwandfrei auf zig Systemen!
Wir müssen aber auch wissen was in der sshd_config sonst noch steht, denn da lassen sich auch Ausnahmen für bestimmte User definieren.
Auch kann ich die sshdconfig nicht verwenden sondern muss in /etc/ssh/sshd_config.d diese 10-totop.conf verwenden.
Spielt keine Rolle so lange die entsprechenden Werte oben dort überschrieben werden und in der sshd_config die Zeile Include /etc/ssh/sshd_config.d/*.conf steht.Wir müssen aber auch wissen was in der sshd_config sonst noch steht, denn da lassen sich auch Ausnahmen für bestimmte User definieren.
Auch kann ich die sshdconfig nicht verwenden
Und warum eigentlich nicht? Bist du nicht der admin von dem System??funtioniert gar nichts mehr.
"Funktioniert nicht" ist keine Fehlermeldung!! 🙄 Check deine Logs und das Journal und poste sie hier!Serie: Der tägliche Wahnsinn Tagebuch eines armen Admins
Ssh mit publickey PasswordAuthentication no Problem3