Obwohl diese Methode nicht nach einer Authentifizierungsmethode sucht, löst sie das Problem der Anmeldung von unsicheren / nicht vertrauenswürdigen Computern mithilfe von OTP.
Um den SSH-Dämon so zu konfigurieren, dass er mehrere Ports überwacht (einen für die Authentifizierung mit öffentlichem Schlüssel und einen für die OTP-Authentifizierung), fügen Sie der Datei sshd_config einfach eine weitere Portnummer hinzu, d. H.
Port 22 # For key-based auth
Port 60000 # For OTP-based auth
Der 2-FA basiert auf der 2-Schritt-Authentifizierungstechnologie von Google. So installieren Sie die Bibliothek und das Programm:
$ sudo apt-get install libpam-google-authenticator
Installieren Sie in der Zwischenzeit die Google Authenticator-App auf Ihrem Smartphone. Nach der Installation starten Sie das Programm vom Terminal aus:
$ google-authenticator
Dadurch erhalten Sie einen Barcode, ein Geheimnis und eine Reihe von Rubbelcodes. BESCHÜTZE SIE!!! Wenn Sie keinen Zugriff auf Ihr Telefon haben oder anderweitig einen Notfallzugriff benötigen, sind diese Codes Ihr einziger Weg. Unterschätzen Sie nicht, wie wichtig dieser Sicherungsmechanismus ist. Es könnte Sie auf lange Sicht verarschen. Konfigurieren Sie das PAM-Modul für die Verwendung von Google Authenticator:
$ sudo nano /etc/pam.d/sshd
Um die Kennwortanmeldung danach zu deaktivieren, setzen Sie ein # vor die Zeile @include common-auth. Fügen Sie am Ende der Datei Folgendes hinzu:
auth required pam_google_authenticator.so
So aktivieren Sie die OTP-Authentifizierung:
$ sudo nano /etc/ssh/sshd_config
Suchen Sie die Zeile mit der Phrase: ChallengeResponseAuthentication
und ändern Sie sie von "Nein" in "Ja".
Setze PermitRootLogin no
und PasswordAuthentication no
.
Verwenden Sie am Ende der Datei den Parameter "match", um zu bestimmen, welche Authentifizierungsmechanismen verwendet werden müssen, um von diesem Port aus auf den Computer zuzugreifen. Beispiel:
Match LocalPort 22
PasswordAuthentication no
AuthenticationMethods publickey
PubKeyAuthentication yes
Match LocalPort 60000
AuthenticationMethods keyboard-interactive:pam
Der Parameter „Tastatur-interaktiv: pam“ zwingt den SSH-Dämon, zum PAM-Modul-Dämon (konfiguriert unter /etc/pam.d/sshd
) zu wechseln und sich wie dort angegeben zu authentifizieren (daher muss auch die Kennwortanmeldung vom PAM-Modul deaktiviert werden, indem die common-auth
Zeile gestrichen wird ). . Vergessen Sie nicht, Ihren SSH-Daemon neu zu starten, damit die Änderungen wirksam werden:
$ sudo /etc/init.d/sshd restart
Wenn Sie sich dann auf einem nicht vertrauenswürdigen Computer befinden, senden Sie einfach SSH an Port 60000 (oder was auch immer Sie einstellen) und verwenden Sie OTP zur Authentifizierung.