Verständnisfrage zur Zwei-Faktor-Authentifizierung mit SSH in Verbindung mit PAM

11/09/2016 - 13:00 von Thilo Engelbracht | Report spam
Hallo zusammen,

ich habe einen RootServer, auf dem diverse Dienste laufen.

Normalerweise habe ich SSHd so konfiguriert, dass der Zugriff
ausschließlich über PrivateKey/PublicKey möglich ist.

Nun habe ich zu Testzwecken die Konfiguration geàndert: Für den Zugriff
ist eine Zwei-Faktor-Authentifizierung via "Google Authenticator"
erfordlich: im ersten Schritt muss der User einen "verification code"
angeben, im zweiten Schritt sein Kennwort.

Dazu habe ich in der Datei "/etc/pam.d/sshd" ganz am Anfang die folgende
Zeile eingetragen:

auth required pam_google_authenticator.so secret=/etc/ssh/users/${USER}/google_authenticator


Und in der "/etc/ssh/sshd_config" steht u.a.:

UsePAM yes


Das funktioniert auch problemlos: Wenn ich von einem Client aus auf den
Server zugreifen möchte (ssh -p 1111 benutzername@fqdn), dann wird der
Benutzer zuerst nach einem "Verification code" gefragt, anschl. muss er
sein normales Kennwort eingeben. So weit, so gut.

Ich hàtte jetzt vermutet, dass aufgrund der oben genannten Konfiguration
der "Verification code" für ALLE user abgefragt wird.
Oder anders: Der Zugriff via ssh ist nur möglich, wenn
/etc/ssh/users/$USER/google_authenticator existiert.

Das stimmt aber nicht: Der Benutzer "root" kann sich ganz normal mit
seinem PrivateKey anmelden, ohne Google-Authentifizierung.
Ich verstehe nicht, warum dies möglich ist... In der
SSH-Konfigurationsdatei ist doch definiert, dass PAM verwendet werden
soll, und in der PAM-Konfiguration zu ssh ist gleich am Anfang
definiert, dass google_authenticator notwendig ist ("required").

Kann mir bitte jemand die Augen öffnen und mir den Zusammenhang
erklàren?

Vielen Dank im Voraus!


Liebe Grüße

Thilo
 

Lesen sie die antworten

#1 Stefan Tichy
11/09/2016 - 13:50 | Warnen spam
On Sun, Sep 11, 2016 at 12:45:42PM +0200, Thilo Engelbracht wrote:
auth required pam_google_authenticator.so .



Wenn PAM genutzt wird, dann mit Google-Authentifizierung.


Und in der "/etc/ssh/sshd_config" steht u.a.:

UsePAM yes



"If set to “yes” this will enable PAM authentication "

Steht zur Verfügung, muß aber nicht genutzt werden.


Siehe sshd_config(5) AuthenticationMethods und RSAAuthentication bzw.
PubkeyAuthentication.


Grüße

Stefan Tichy ( dlist at pi4tel dot de )

Ähnliche fragen