Skip to content
/ 2fa Public
forked from nemo-cluster/2fa

Erste Tests mit 2FA bein NEMO zum Testen für bwHPC

Notifications You must be signed in to change notification settings

wanneut/2fa

 
 

Repository files navigation

2FA

2FA zum Testen für bwHPC

Nutzer können sich einmalig auf dem QR-Generator-Knoten einen QR-Code erzeugen lassen, den sie mit einer geeigneten App abscannen. Diese erzeugt nun Einmalpasswörter, die als zweiter Faktor beim Login auf dem eigentlichen System abgefragt werden. Zukünftig könnte man auch Yubikeys etc. unterstützen, doch funktioniert derzeit lediglich die Yubikey-Mobil-App.

Eine erneute Erzeugung des QR-Codes ist nur möglich, wenn der Nutzer administrativ auf dem QR-Generator-Knoten wieder freigeschalten wurde.

Dies ist ein Fork der von nemo-cluster/2fa die wesentlichen Änderungen sind:

  • Es wird sichere auf RSA basierende Verschlüsslung aus gpg statt des textbook RSA aus openssl verwendet.
  • Es wird sichergestellt, dass die Einmalpasswörter wirklich nur einmalig verwendet werden können.
  • Um vorher genanntes zu erreichen wurde der Updatemechanismus angepasst.
  • Mehrere der Management-Knoten (HA-Setups) werden supportet.

Installation

Es gibt drei Knotentypen, wobei Management- und Loginknoten identisch sein können. Im einfachsten Fall nutzen alle drei Knotentypen die selbe Nutzerauthentifizierung (z.B. LDAP). Da auf dem Managementknoten Credentials erzeugt werden, die der QR-Generator-Knoten ebenfalls benötigt, sollte mit dessen Installation begonnen werden:

Geeignete Mobile-Apps

Mobile Authenticator-Apps für Android

IOS

Amazon Fire Tablets/Sticks:

Mufri Authenticator

Samsung Geräte

Microsoft Authentificator

Infos für Admins

  • Soll ermöglicht werden, dass ein User sich neue Credentials erstellen kann, muss oathdel [USER] auf dem QR-Geneartor-Knoten aufgerufen werden. Diese überschreiben die alten sobald der User dies auch wirklich macht.
  • Soll ein 2nd Faktor deaktiviert werden muss auf dem Management oathdeact [USER] aufgerufen werden. Diese funktionen sind also komplementär.

Wichtige Dateien und Verzeichnisse

  • /etc/2fa/secret: Hier liegt das shared secret, mit dem Management und QR-Generator-Knoten Credentials austauschen. Es muss entsprechend auf diesen Knotentypen identisch sein.

  • /<Pfad>/2fa/users.oath /<Pfad>/2fa/users.lock: Hier liegt die Liste der User und deren Seeds, welche zwischen QR-Generator- und Management-Knoten synchron sein muss. Es empfiehlt sich daher ein geshartes Dateisystem (NFS, Lustre, etc.), prinzipiell sind aber auch andere Synchronisierungsmechanismus möglich.

  • /root/.gnupg/ /etc/public_key.gpg: Der Key mit dem die Seeds verschlüsselt werden. Der öffentliche Schlüssel muss auf jedem QR-Generator-Knoten, der private Schlüssel auf jedem Management-Knoten importiert werden.

About

Erste Tests mit 2FA bein NEMO zum Testen für bwHPC

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 98.5%
  • Python 1.5%