Mit Debian 8 könnt ihr euren SSH Login zusätzlich zu eurem Passwort noch mit einem One Time Passwort absichern. Dies erhöht die Sicherheit, da euer Passwort alleine dem Angreifer kein Zugriff auf euren Server gewährt.

In dieser Anleitung zeige ich euch, wie ihr diese 2 Faktor Authentifizierung innerhalb weniger Minuten aktiviert.

Dazu installiert ihr zuerst das benötigte Programm

apt-get update
apt-get install libpam-google-authenticator

Danach startet ihr das Programm mit folgendem Befehl:

google-authenticator

Nun durchlauft ihr die Konfiguration:

Do you want authentication tokens to be time-based (y/n) y

Diesen QR Code müsst ihr mit einer App wie Authy scannen. Am besten schreibt ihr euch auch die Notfall Codes auf, da ihr sonst eventuell keinen Zugriff auf euren Server mehr habt.

Danach solltet ihr diese Einstellungen wählen.

 

Do you want me to update your "/root/.google_authenticator" file (y/n) y

Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) y

By default, tokens are good for 30 seconds and in order to compensate for
possible time-skew between the client and the server, we allow an extra
token before and after the current time. If you experience problems with poor
time synchronization, you can increase the window from its default
size of 1:30min to about 4min. Do you want to do so (y/n) n

If the computer that you are logging into isn't hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting (y/n) y

Nachdem ihr das Programm fertig konfiguriert habt müsst ihr nur noch die Debian SSH Konfiguration anpassen. Dazu öffnet ihr folgende Datei:

nano /etc/pam.d/sshd

Dort fügt ihr folgende Zeile am Ende hinzu:

auth required pam_google_authenticator.so

Danach speichert ihr die Datei und öffnet die nächste Konfiguration:

nano /etc/ssh/sshd_config

Hier sucht ihr die Zeile „ChallengeResponseAuthentication no“ und ersetzt dies durch „yes“.

ChallengeResponseAuthentication yes

Nun müsst ihr den SSH Dienst nur noch neu starten.

systemctl restart sshd.service

Öffnet nun eine neue Shell und lasst die alte noch offen, falls ihr Probleme habt.

Wenn ihr euch jetzt erneut anmeldet, dann sollte von euch ein „Verification Code“ erfragt werden.

Teile diesen Beitrag
Christian

2 Kommentare

  1. Hallo Christian

    Vorab, danke für die Anleitung. Vielleicht kannst Du das noch in die Kombination bringen, wenn der root-Login verboten ist. Wie kann ich die Challenge auf den Login eines anderen Nutzers ausdehenen?

    Grüsse Ben

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.