Adminkonto nicht mehr erreichbar wegen 2-Faktor-Authentifizierung

Guten Tag zusammen,

meine Nextcloud läuft auf einem Synology NAS im heimischen LAN. Um die Sicherheit zu erhöhen, habe ich beim Adminkonto die 2-Faktor-Authentifizierung eingeschaltet (erzwingen) und dabei nicht bedacht, dass ich das Adminkonto nur am Browser betreibe, aber an keiner App.
Jetzt wollte ich mich dort wieder einloggen, kann es aber nicht mehr, da ich den Login auf einer App bestätigen solle. Da es aber keine App gibt, kann ich mich nicht mehr einloggen.
Wie kann ich die 2FA wieder deaktivieren, damit ich mich wieder einloggen kann?

Die Nextcloud ist auf Version 3.16.5.

Was für eine Paketversion soll dies sein, die offiziellen Nextcloud-Version lauten 29.x, 30.x oder 31.x?

Zur Anmeldung kannst Du natürlich die Backup-Codes verwenden, die Du hoffentlich vor der Abmeldung des Accounts erzeugt und gespeichert hast.

Alternativ kannst Du die “Two-Factor Admin Support” App verwenden um eine One-Time-Token auf der Konsole zu erzeugen - falls Du diese installiert hast.

Abschließend bleibt Dir noch die Möglichkeit die 2FA-App auf der Konsole zu deaktivieren, sodass Du dich dann wieder normal anmelden können solltest.

Hallo @Nasivin,

willkommen in den Foren der Anwender-Gemeinschaft von Nextcloud! :handshake:

bitte verwende die Suche das Problem haben schon viele vor dir gehabt zB Disable 2FA by OCC command - #23 by corin.corvus und Admin Locked out by 2FA with Notification-Login

Backupcodes hab ich natürlich nicht erstellt… Es bleibt wohl nur der Weg über die Konsole. Allerdings bin ich da ein blutiger Anfänger, vor allem weil die Nextcloud auf einem Synology NAS läuft. Soweit ich weiß muss SSH im DSM aktiviert sein. Wie finde ich da den richtigen Pfad?

Danke für die Links, aber da ist nichts für Nextclouds auf Synology dabei und ich bin nicht so fit, dass ich das alleine ummünzen kann.

Hallo @Nasivin ,
dies ist leider das Nextcloud-Support-Forum und nicht das Synology-NAS Support Forum, sodass Du hier kaum Tipps zu dieser Umgebung erhalten wirst. Ich empfehle die Suche mittels Google, welches mir z.B. folgenden Artikel zeigt, wenn ich nach “nextcloud synology Konsole” suche:

1 Like

Ich habe Backupcodes gefunden. Scheinbar hab ich die doch erstellt. Wie kann ich die nutzen? Anstelle des Passworts funktioniert leider nicht.

Und unter dieser Meldung gibt es keinen Button “Backup codes benutzen” o.Ä.?

EDIT:
Nutzt du diese App für 2FA, und ausschliesslich diese App/Methode? Two-Factor Authentication via Nextcloud notification - Apps - App Store - Nextcloud

Falls ja, und falls man dem Screenshot im Link glauben kann, bleibt dir wohl wirklich nur die Konsole übrig.

Btw. falls du es geschafft hast, deaktiviere diese App, und nutze TOTP oder WebAuthn. Eine 2FA Methode, die ein anderes Gerät voraussetzt, in dem man noch eingeloggt ist, ohne Möglichkeit irgendwelche Backup Codes einzugeben, scheint mir keine besonders gute Idee zu sein, zumindest nicht als einzige 2FA Methode.

Es sei denn, man sucht nach einer besonders effektiven Methode, um sich aus seinem Account auszusperren. :wink:

Übrigens habe ich es in der Zwischenzeit ausprobiert und es scheint mit dieser App tatsächlich keinerlei Möglichkeit zu geben, Backup-Codes einzugeben oder erst zu erzeugen. Wenn also die andere 2FA-Methode, mit der du deine Backup-Codes erzeugt hast, nicht mehr aktiv ist, ist occ deine einzige Rettung.

Wenn du herausgefunden hast, wie du auf der Synology occ commands ausführen kannst:

occ twofactorauth:disable <username> twofactor_nextcloud_notification

…und dann gleich noch:

occ app:disable twofactor_nextcloud_notification

Das muss ich jetzt einfach noch loswerden:

Man kann also in der Nextcloud eine “shipped” App aktivieren, wo man sich durch das einfache Betätigen eines einzelnen “Toggles” aus seinem Account aussperren kann, ohne Netz und doppelten Boden.

So etwas kann man doch nicht einfach so auf die Leute loslassen, ohne Backup Codes zu erzwingen, oder zumindest eine fette rote Warnung einzublenden, die einem über die möglichen Folgen aufklärt. Ich weiss das klingt jetzt polemisch (ja ich kann das auch), aber da wäre eine rote Warnung mal wirklich sinnvoll (im Gegensatz zu einem fehlenden Talk High Performance Backend) :wink:

*DUCKUNDWEG

1 Like

Danke dir, werd ich heute testen!

1 Like

@Nasivin Erstmal eine grundsätzliche Anmerkung:
Nextcloud ermöglicht verschiedene Arten der 2 Faktor Authentifizierung. Bei deinem Beitrag musste ich erst einmal lange lesen, um herauszubekommen, dass du nicht 2FA TOTP nutzt, wie ich. Die von dir verwendete Methode nutze ich nicht, daher dazu kein konkreter Beitrag von mir.

Bei 2FA TOTP (oft auch Google Authenticator genannt) gäbe es die von dir benannten Probleme jedoch nicht. Zum einen weil man die 2FA für jeden User einzeln aktivieren muss, zum anderen weil es erst dann scharf geschaltet wird, wenn man vorab im Webinterface für jeden USER der Nextcloud, der es nutzen soll, einen QR-Code gescannt hat und mit einer 2FA TOTP App (muss nicht die App von Google sein, gibt bessere Alternativen) einen erzeugten Freischaltqode eingegeben hat. Auch Backup Codes werden dabei erzeugt. Die muss man aber noch selbst sicher irgendwo abspeichern.

Vor allem aber ist 2FA TOTP auch deshalb im Vorteil, weil es eben mit den Apps funktioniert, die man eh hat, etwa um sich bei web.de/gmx.net, Paypal, Amazon und wo auch immer mit 2FA sicher einzuloggen. Selbst bei manchen Behörden wird 2FA TOTP inzwischen angeboten. Es ist also ein Quasi-Standard geworden.

Insofern würde ich dir anraten die 2FA Methode zu wechseln, sobald du wieder in den Admin-Account kommen kannst

1 Like

Genau das wollte ich ja und hatte ich auch so verstanden. Mein Gedanke dabei war, wenn ich es aktiviere, müsste dann die Aufforderung zur Registrierung in einer 2FA App wie zB. dem Google Authentifikator kommen. Nachdem es dann nicht kam, dachte ich, es kommt dann bei der nächsten Anmeldung.
Leider war dem nicht so. Es kam zwar der Hinweis, dass ich die Anmeldung in einer App bestätigen solle, aber da keine App da ist, komme ich nicht mehr rein.

occ: command not found
Kann man das occ irgendwie aktivieren?

Es ist aktiv. Es du musst es vermutlich aber mit vollständiger Pfadangabe ausführen, also

/Pfad/zu/occ

Der genau Pfad kann von Installation zu Installation abweichen, bei mir also ein andere sein als bei dir. Bei mir ist es:

/var/www/nextcloud/occ

aber wie geschrieben, das kann sehr gut bei dir ein abweichender Pfad sein.

Ich habe jetzt alternative Befehle gefunden.
sudo -u http php /volume1/web/nextcloud/occ twofactorauth:disable username
Es kam folgende Meldung:
An unhandled exception has been thrown:
Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurre d in the driver: could not find driver in /volume1/web/nextcloud/lib/private/DB/ Connection.php:237
Stack trace:
#0 /volume1/web/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(458): OC\DB\ Connection->connect()
#1 /volume1/web/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(416): Doctri ne\DBAL\Connection->getDatabasePlatformVersion()
#2 /volume1/web/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(323): Doctri ne\DBAL\Connection->detectDatabasePlatform()
#3 /volume1/web/nextcloud/lib/private/DB/Connection.php(903): Doctrine\DBAL\Conn ection->getDatabasePlatform()
#4 /volume1/web/nextcloud/lib/private/DB/ConnectionAdapter.php(235): OC\DB\Conne ction->getDatabaseProvider()
#5 /volume1/web/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php(96): OC\D B\ConnectionAdapter->getDatabaseProvider()
#6 /volume1/web/nextcloud/lib/private/AppConfig.php(1226): OC\DB\QueryBuilder\Qu eryBuilder->expr()
#7 /volume1/web/nextcloud/lib/private/AppConfig.php(243): OC\AppConfig->loadConf ig(NULL, false)
#8 /volume1/web/nextcloud/lib/private/AppConfig.php(1366): OC\AppConfig->searchV alues(‘enabled’, false, 2)
#9 /volume1/web/nextcloud/lib/private/App/AppManager.php(136): OC\AppConfig->get Values(false, ‘enabled’)
#10 /volume1/web/nextcloud/lib/private/App/AppManager.php(157): OC\App\AppManage r->getInstalledAppsValues()
#11 /volume1/web/nextcloud/lib/private/legacy/OC_App.php(188): OC\App\AppManager ->getInstalledApps()
#12 /volume1/web/nextcloud/lib/private/AppFramework/Bootstrap/Coordinator.php(48 ): OC_App::getEnabledApps()
#13 /volume1/web/nextcloud/lib/base.php(675): OC\AppFramework\Bootstrap\Coordina tor->runInitialRegistration()
#14 /volume1/web/nextcloud/lib/base.php(1171): OC::init()
#15 /volume1/web/nextcloud/console.php(28): require_once(‘/volume1/web/ne…’)
#16 /volume1/web/nextcloud/occ(33): require_once(‘/volume1/web/ne…’)
Die 2FA ist leider nicht deaktiviert. Weiß einer woran das jetzt noch liegen kann?

Ich bin im richtigen Pfad gewesen /volume1/web/nextcloud/. In diesem Ordner ist auch eine Datei die OCC heißt.

Das kann gut sein, dass du im richtigen Pfad warst. Aber zum einen glaube ich ja nicht so richtig, dass du auch 2FA TOTP aktiviert hast, denn es gibt ja auch andere Methoden. Die, auf die @bb77 verlinkt hat, verweist ja auf die Methode über die Nextcloud-App, nicht auf die Methode über die Google (oder kompatible) App.

Ich würde mal denken, dass das Deaktivieren via occ auch zur tatsächlich verwendeten Methode passen muss. Und die ist mir (und womöglich sogar dir) unklar.

Hast du dir auch die Links von @wwe angesehen. Die verweisen auch auf TOTP. Ich bin denen mal kurz gefolgt und letztlich bei Lost access to TOTP on admin user gelandet. Das half 2018 bei TOTP.


Dieser Haken ist beim Adminkonto gesetzt und hat diese Probleme ausgelöst