Ubuntu 16.04 - YubiKey für SSH Zwei-Faktor-Authentifizierung (2FA) verwenden

Aus Twilight-Networks Wiki
Ubuntu 16.04 - YubiKey fuer SSH Zwei-Faktor-Authentifizierung (2FA) verwenden
Wechseln zu:Navigation, Suche


Vorwort

Diese Dokumentation beschreibt den Installationsvorgang und Einrichtung der Zwei-Faktor-Authentifizierung für den SSH-Login mit YubiKey (Yubico-OTP).

Bitte vergewissern Sie sich, dass Ihr System über die nötigen Voraussetzungen verfügt, wie in der Infobox beschrieben. Weiterhin sind Grundkenntnisse im Umgang mit Linux erforderlich, da die Vorgehensweise, wie sie hier beschrieben ist, in manchen Teilen abweichen kann. Kein System ist wie das Andere. Die Dokumentation wurde sorgfältig von mir geprüft. Dennoch kann ich keinerlei Haftung für Schäden an Ihrem System oder eine Gewährleistung übernehmen. Bitte verwenden Sie diese Dokumentation auf eigene Gefahr.


Ubuntu 16.04 - YubiKey fuer SSH Zwei-Faktor-Authentifizierung (2FA) verwenden
Stand: Stand 09/2019


Yubico-Logo-Small.png


Verwendete Software:


Voraussetzungen:


Weitere, empfohlene Dokumentationen:













Server vorbereiten

Root-Rechte einräumen

Während der gesamten Dokumentation werden Root-Rechte benötigt. Um auf das Voranstellen von sudo zu verzichten, verschaffen Sie sich für die gesamte Sitzung erhöhte Rechte mit:

# sudo -i


Update durchführen

Bringen Sie den Server auf den aktuellen Patchstand:

# apt update && apt upgrade


Software herunterladen und installieren

Fügen Sie das Yubico-Repository hinzu:

# add-apt-repository ppa:yubico/stable
# apt update

Installieren Sie das Yubico-PAM-Module:

# apt install libpam-yubico



Zwei-Faktor-Authentifizierung einrichten

YubiKeys zuordnen

Erstellen Sie die Datei /etc/yubikey_mappings nach folgendem Syntax:

# nano /etc/yubikey_mappings
yubikey_mappings
<USER1>:<YUBIKEY1-PUBLIC-ID>:<YUBIKEY2-PUBLIC-ID>
<USER2>:<YUBIKEY3-PUBLIC-ID>



SSH-Server konfigurieren

sshd_config editieren

Edititieren Sie die Datei /etc/ssh/sshd_config und ändern Sie folgende Parameter:

# nano /etc/ssh/sshd_config
Anzupassende Parameter:
# sshd_config
ChallengeResponseAuthentication yes
UsePAM yes


sshd editieren

Fügen Sie folgenden Parameter an das Ende der Datei /etc/pam.d/sshd ein:

# nano /etc/pam.d/sshd
Anzupassende Parameter:
[...]
# Yubico-OTP 
auth required pam_yubico.so id=<CLIENT API-ID> key=<CLIENT API-KEY> urllist=https://<YUBICO-VAL-SERVER>/wsapi/2.0/verify debug authfile=/etc/yubikey_mappings



Abschluss und Test

Starten Sie den SSH-Daemon neu, damit die Konfiguration angewendet wird:

# service ssh restart


Verbinden Sie sich mit per SSH mit dem soeben konfigurierten Server.
Nach erfolgreicher Eingabe des Passworts erscheint nun die zusätzliche Aufforderung nach dem YubiKey-OTP:

YubiKey SSH Login.PNG