2faktorauthentifizierung in der nextcloud

Erstmal: k.a. in welche Kategorie meine Frage gehört.
Prinzipielle Vorgehensweise bei 2fa ist mir klar und funktioniert schon mit ner android app. Jetzt geht’s drum, das unter die Leute zu bringen.

Wie gewährleistet ihr, dass alle totp aktiviert haben? Kann man das irgendwo im System kontrollieren?
Was macht man mit den Leuten ohne ein mobiles gerät? Gibt es (guenstige) alternativen?
Ein otp-Programm auf dem selben gerät, auf dem man die nextcloud besucht, ist irgendwie unlogisch.
Wahrscheinlich funktionieren alle apps. Aber gibt es irgendwelche Empfehlungen für android und iOS?
LG wolfgang

Hallo,

das ist prinzipiell nicht so einfach, die Leute zu zwingen.

Seit NC 15 kann man das für Benutzergruppen erzwingen, dass 2FA genutzt wird. Allerdings kommen die dann nicht mehr rein, weil du eine Henne-Ei Situation schaffst: Die Benutzer brauchen einen Zweiten Faktor, haben aber noch keinen…

https://www.bitblokes.de/nextcloud-15-zweifaktor-authentifizierung-2fa-erzwingen/

Als Administrator kann man auf der CLI einen solchen, einmal gültigen 2. Faktor erzeugen, den müsstest du dann aber austeilen :frowning:

Ich habe da mal was programmiert… Zu betrachten dort:

https://wolke.semtue.de/register2fa/

Dort kann man sich an seine dienstliche Mailadresse einen einmal gültigen Code schicken lassen, mit dem kommt man dann rein und kann sich die 2FA App einrichten. Das Skript merkt sich auch, wer schon eine Mail bekommen hat und schickt nicht nochmal.

Bei Interesse kann ich den Code mal aufräumen und das in ein Repo tun. Damit das für die SuS klappt, brauchen die aber eine Schulmailadresse.

VG

Frank

1 „Gefällt mir“

Hallo,

Jein. 2FA verhindert dann immer noch, dass ein Angreifer in - sagen wir Afrika… - nur mit deinem Passwort und deinem Benutzer in die Cloud kommt. Er braucht halt deinen Computer. KeepassXC kann auch TOTP Codes erzeugen. Allerdings sollte man die Secrets der Token natürlich nicht im selben Vault wie die Passwörter aufbewahren. Dazu haben die auch was aufgschrieben: Documentation and FAQ – KeePassXC

Für die Erzeugung auf Android verwende ich inzwischen AndOTP. https://play.google.com/store/apps/details?id=org.shadowice.flocke.andotp das ist FOSS, gibts auch bei FDroid und man kann die Secrets exportieren und getrennt sichern.

Für IOs bin ich zu arm :wink:

LG

Frank

hallo Frank,
danke für deine Hinweise und dein skript.
da ich aber nur noch ministrant bin und kein admin mehr, bin ich am überlegen, ob ich einfach eine frist setze und und danach vom dienstleister dicht machen lasse.
was hier natürlich für mich interessant wäre, ob es eine möglichkeit gibt, fest zu stellen, wer totp noch nicht aktiviert hat. dann könnte man die gezielt ansprechen.
lg
wolfgang

Hallo Wolfgang

Alle Benutzernamen deiner NC auflisten:

sudo -u www-data php occ user:list | awk -F: '{print $1}' | sed -e s/[-," "]//g

2FA Status eines Benutzers anzeigen:

sudo -u www-data php occ twofactor:state <uid>

Zusammen:

for u in $(sudo -u www-data php occ user:list | awk -F: '{print $1}' | sed -e s/[-," "]//g); do echo Benutzer "$u:";  sudo -u www-data php occ twofactor:state $u; done

VG

Frank

danke frank.
das probier ich in meiner cloud, wo ich noch admin bin aus.
lg
wolfgang

Hallo,
Wenn ein Kollege seinen „Schlüssel“ (z.B. löscht) verliert, aber alle als Gruppe zu 2FA gezwungen sind, was mache ich da als admin?
LG

Hallo,

2FA für diesen Benutzer deaktivieren. Dann muss dieser 2FA neu einrichten.

Viele Grüße
Steffen

Danke, Steffen!

Ich kann nur allen die Rechte/die Pflicht für 2FA geben oder nehmen, als Gruppe und nicht individuell. Es müssten also bei jedem „Verlust“ immer alle die 2FA neu einrichten. Vielleicht hab ich was übersehen?

ich denke du musst die 2fa dann per och Befehl für den Nutzer aktivieren. Ich hab damit keine Erfahrung. Aber das würde so gehen

sudo -u www-data php occ twofactorauth:state <uid>

um den 2fa Status des Nutzers mit der uid anzuzeigen
und dann

sudo -u www-data php occ twofactorauth:disable <uid> <provider_id>

wobei dann die provider_ip dann eines der aktiven 2fa Module einzutippen ist die beim State Befehl als aktiv angezeigt wurden

Hallo zusammen,

Andreas ist mein Kollege. Daher weiß ich, dass wir nur die grafische Admin-Oberfläche verwenden und auch gar nicht tiefer einsteigen wollen - also kei ssh-Zugang. Die Nextcloud und unser LMN-Server sind bei netzint gehostet.

Kann man auf der grafischen Admin-Oberfläche einzelnen Benutzern den zweiten Faktor zurück setzen?

Danke für die Hilfe!

Stefan

1 „Gefällt mir“

Hallo alle,

Nein, in der grafischen Oberfläche ist dies nicht möglich. Nur per Shell (twofactor_admin).

Grüße,
Tin

eventuell kann man versuchen ob mal als admin über „nachahmen“ auf den account kommt und da die 2fa im account abschalten oder backupcodes erzeugen kann… und unter den persönlichen sicherheitsEinstellung da das dann deaktivieren kann…
aber jo… ich hab jetzt nicht die Konsolenlösung beschrieben um’s extra kompliziert zu machen…
Im Zweifelsfall muss man halt ein support ticket beim provider dann aufmachen dass der sich drum kümmert.

1 „Gefällt mir“

Ja gut, das könnte eine Möglichkeit sein. Ich schaue eben.

; soviel ich sehe müsste es möglich sein, Backup Keys generieren zu lassen, wenn man das Passwort hat, das man ja auch ändern kann!. :slight_smile:

Hallo zusammen!

In der Admin Web-Oberfläche gibt es die Möglichkeit für einen Benutzer einen Admin-Code zu setzen. Den gibt man dem Benutzer. (Der ist 24 h gültig.)
Dann kann sich der Benutzer statt mit dem zweiten Faktor mit dem Admin-Code anmelden und seinen zweiten Faktor neu einrichten.

Damit der Admin erst gar nicht benötigt wird, sollte sich der Benutzer Backup-Codes erstellt haben, die alternativ zum zweiten Faktor per TOTP verwendet werden können.

Gruß - Rainer

1 „Gefällt mir“

Es gibt doch auch das occ plugin für die Weboberfläche, oder? Damit sollte auch ohne SSH Zugang Admin Tasks innerhalb der Cloud möglich sein :slight_smile:

Ist halt die Frage der Absprache am Schluss, was macht man selbst und ab welcher Stelle ist der Dienstleister in der Verantwortung.

Hallo,

Danke für die Tipps!

Ohne Konsolen-Skills zu entwickeln, geht also wohl nur der Vorschlag von
@roesslerrr

Leider konnten wir die Einstellung „Admin-Code“ weder in der grafischen Admin-Oberfläche, noch durch Internet-Recherche finden.

Da bräuchten wir etwas Hilfe!

Beste Wünsche!
Stefan

1 „Gefällt mir“

Hallo Stefan,

dann macht doch einen kurzen Support-Auftrag an Netzint.

Dem kann ich nur beipflichten.

Warum eigentlich nicht? Die OCC-Befehle sind im Vergleich zur grafischen Oberfläche ein Segen und alles andere als schwer zu verstehen. Das ist gut dokumentiert.

Viele Grüße
Steffen

Hallo und Danke für die Empfehlungen,

das ist alles soweit verständlich und die Backup-Codes sind wichtig!

Allerdings sind nicht viele Lehrkräfte so Admin-erfahren und sollen es m.E. auch nicht unbedingt werden, da es nicht ihr Kerngeschäft ist und Anrechnungsstunden rar sind.

Tagesgeschäft wie Benutzerverwaltung durch eine Lehrkraft machen zu lassen, wäre aber schon wünschenswert für alle Beteiligten. Das ist m.E. etwas, was eine Lehrkraft nebenher zum Kerngeschäft machen kann - wenn es über eine grafische Oberfläche geht.

Mit OCC Web geht es einigermaßen einfach, wie ich gerade probiert habe - hoffentlich funktioniert die App auch dauerhaft.

Nach etwas herumprobieren haben diese modifizierten Befehle funktioniert:

Mittels OCC Web kann man

den Status anzeigen lassen vom Benutzer

twofactorauth:state username

oder den TOTP-Faktor zurück setzen

twofactorauth:disable username totp

PS: Die Einstellung „Admin-Code“ auf der grafischen Admin-Oberfläche würde uns aber weiterhin interessieren!

Beste Wünsche!
Stefan