Sicherheit · 5 min read · Dec 30, 2025

Zwei-Faktor-Authentifizierung für ownCloud

erleuchten Sie Ihre eigene Cloud mit zwei Faktoren zur Authentifizierung

von arnobabotte @pixabay

In diesem Tutorial zeige ich Ihnen, wie Sie Ihre ownCloud-Installation mit privacyIDEA schützen können, das Sie verwenden können, um die zweiten Authentifizierungsfaktoren Ihrer Benutzer zu verwalten.

ownCloud ist ein System, um Ihre eigenen oder die Daten Ihres Unternehmens nicht auf dem Computer eines anderen (auch bekannt als “die Cloud”) zu speichern, sondern auf Ihrem eigenen Computer unter Ihrer Kontrolle. privacyIDEA ist ein System zur Verwaltung von Authentifizierungsgeräten für die Zwei-Faktor-Authentifizierung in Ihrem eigenen Netzwerk - nicht bei einem Identitätsanbieter - und hält somit Ihre Identität und die Identitäten Ihrer Benutzer ebenfalls unter Ihrer Kontrolle.

Wenn Sie wissen möchten, wie das aussehen wird, können Sie sich dieses Video auf YouTube ansehen.

Voraussetzungen

Ich gehe davon aus, dass Sie bereits ein ownCloud 8-System eingerichtet und am Laufen haben. Es gibt einige ziemlich gute Beispiele dafür. Sie können auch hier auf dieser Seite nachsehen, wie man ownCloud 8 mit nginx installiert.

Zusätzlich gehe ich davon aus, dass Sie ein privacyIDEA-System betreiben. Diese Anleitung behandelt nicht die Installation von privacyIDEA. Sie finden auch eine Anleitung hier bei Howtoforge zur Installation von privacyIDEA auf CentOS oder Sie können die Installationsanweisungen in der Dokumentation verwenden.

Bitte beachten: Sie müssen privacyIDEA und ownCloud nicht auf demselben Server ausführen. Sie entfalten die volle Leistung eines solchen Setups, wenn Sie privacyIDEA als Authentifizierungssystem auf einem Server installieren und die anderen Anwendungen wie ownCloud gegen dieses privacyIDEA konfigurieren. Dies hat auch den Vorteil, dass Sie keine Authentifizierungsgeräte für ownCloud, Authentifizierungsgeräte für Ihre zweite Anwendung und Authentifizierungsgeräte für Ihre dritte Anwendung usw. verwalten müssen. Sie sehen, dass diese Lösung ihre Stärken beweist, wenn Sie mehrere Anwendungen und mehr als zwei Benutzer haben. Aber es wird natürlich auch in kleineren Szenarien funktionieren.

Bitte beachten: Die ownCloud privacyIDEA-App befindet sich in einem frühen Entwicklungsstadium. Daher wird Ihr Feedback sehr geschätzt und hilft, dieses Tool zu verbessern. Sie können hier bei Howtoforge, über die GitHub-Issues oder über die Google-Gruppe Feedback geben.

Verbindung von privacyIDEA zur ownCloud-Datenbank

Vorbereitung der Datenbank

Es gibt eine Bedingung für privacyIDEA. Die ownCloud-Benutzer müssen privacyIDEA bekannt sein oder umgekehrt, die Benutzer, denen Sie Tokens in privacyIDEA zuweisen, müssen auch in ownCloud verfügbar sein.

Sie könnten ein Setup betreiben, bei dem Ihre Benutzer in einem LDAP-Verzeichnis gespeichert sind, aber in diesem Beispiel verwenden wir einfach die vorhandene ownCloud SQL-Benutzertabelle.

Bitte beachten: Wenn Sie privacyIDEA und ownCloud auf verschiedenen Servern ausführen, müssen Sie den Zugriff auf die SQL-Datenbank gewähren. Im Falle von MySQL/MariaDB müssen Sie die bind-address in /etc/mysql/my.cnf entsprechend ändern:

bind-address = 0.0.0.0

Darüber hinaus müssen Sie das Zugriffsrecht basierend auf MySQL hinzufügen:

grant all privileges on owncloud.* to "ocuser"@"privacyIDEA-Server" identified by "password";

Jetzt kann der MySQL-Benutzer “ocuser” von dem privacyIDEA-Server auf die Datenbank auf dem ownCloud-Server zugreifen.

WARNUNG: Der Netzwerkverkehr zum MySQL-Server ist nicht verschlüsselt. Wir empfehlen dringend, TLS einzurichten, wenn Sie dieses Szenario betreiben. Sie finden möglicherweise auch einige Anleitungen auf dieser Seite zur Einrichtung von MySQL mit SSL.

Verbindung von privacyIDEA zu ownCloud

Benutzer-Resolver erstellen

Jetzt verbinden wir privacyIDEA mit ownCloud, damit privacyIDEA die Benutzer kennt. Wir erstellen einen neuen Benutzer-Resolver unter Konfiguration → Benutzer.

Sie können auf die Schaltfläche ownCloud klicken, die alle erforderlichen Felder in der Datenbankattributzuordnung vorab ausfüllen sollte.

Dann können Sie auf SQL-Resolver testen klicken, um zu sehen, ob alles gut gelaufen ist.

Realm erstellen

Jetzt können Sie zu Konfiguration → Realms gehen, um einen Standard-Realm aus dem Resolver zu erstellen.

Sie sollten jetzt die ownCloud-Benutzer im Tab Benutzer sehen und in der Lage sein, Tokens für diese Benutzer zu registrieren.

Google Authenticator registrieren

privacyIDEA unterstützt eine Vielzahl von Tokens, die Sie hier finden können.

Wir werden schnell einen Google Authenticator als einfaches Beispiel registrieren.

Gehen Sie zur Benutzeransicht und wählen Sie einen Benutzer aus, um die Benutzerdetails zu sehen. Hier können Sie auf die Schaltfläche Neuen Token registrieren klicken.

Im Registrierungsdialog können Sie den Token-Typ auswählen, und je nach Token-Typ müssen Sie unterschiedliche Details eingeben. In diesem Beispiel verwenden wir den Standard-Token-Typ HOTP. Am Ende der Seite können Sie eine OTP-PIN eingeben.

Klicken Sie auf Token registrieren.

Der Token ist registriert und Ihnen wird ein QR-Code angezeigt, den Sie mit Ihrer Google Authenticator-App scannen können.

Andere Token-Typen werden auf andere Weise registriert, was außerhalb des Rahmens dieses Tutorials liegt. Für weitere Informationen siehe die privacyIDEA-Dokumentation.

Jetzt sind wir fertig, da der ownCloud-Benutzer ein Token zugewiesen bekommen hat. Sie können diesen Prozess für weitere ownCloud-Benutzer wiederholen.

Die ownCloud-App herunterladen

Zuerst müssen Sie die ownCloud privacyIDEA-App herunterladen.

Sie können die App hier herunterladen. Sie müssen das Verzeichnis user_privacyidea in Ihr ownCloud-Verzeichnis apps/ kopieren. Angenommen, Sie haben ownCloud in /var/www/owncloud installiert, sodass Sie am Ende mit einer Struktur wie dieser enden:

root@owncloud:~# ls /var/www/owncloud/apps/user_privacyidea/ -l  
 -rw-rw-r-- 1 root root 1671 Jun 25 15:05 adminSettings.php  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 appinfo  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 img  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 js  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 lib  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 templates

Die privacyIDEA-App wird als ownCloud-Benutzer-Backend implementiert und fungiert als Overlay für Ihre vorhandenen Benutzer-Backends, um in die Authentifizierungsanfrage einzutreten und den zweiten Faktor zur Anmeldung hinzuzufügen.

Konfiguration der ownCloud-App

Gehen Sie zu Apps → nicht aktiviert und aktivieren Sie die App.

Dann können Sie zu Ihr Benutzer → Admin gehen, um die privacyIDEA-App zu konfigurieren.

Sie müssen die URL des privacyIDEA-Servers angeben. Sie sollten den privacyIDEA-Server mit einem vertrauenswürdigen Zertifikat betreiben. Wenn Sie während Ihres Einrichtungsprozesses kein vertrauenswürdiges Zertifikat haben, können Sie das Kontrollkästchen Überprüfen Sie das SSL-Zertifikat des privacyIDEA-Servers deaktivieren.

Um zu vermeiden, dass Sie sich aussperren, können Sie das Kontrollkästchen Erlauben Sie auch Benutzern, sich mit ihrem normalen Passwort zu authentifizieren aktivieren. In diesem Fall wird der Benutzer authentifiziert, wenn die Authentifizierung bei privacyIDEA fehlschlägt, gegen das zugrunde liegende ownCloud-Benutzer-Backend. In der produktiven Nutzung sollten Sie dieses Kontrollkästchen deaktivieren.

Desktop-Clients haben natürlich Probleme mit den Einmal-Passwörtern. Wenn Sie solche Clients verwenden, sollten Sie das Kontrollkästchen Erlauben Sie den API-Zugriff auf remote.php mit statischem Passwort aktivieren. In diesem Fall wird die Authentifizierungsanfrage, die von einem Desktop-Client (identifiziert durch remote.php) kommt, nicht gegen privacyIDEA, sondern gegen das zugrunde liegende Benutzer-Backend authentifiziert.

Schließlich, wenn alles in Ordnung ist, können Sie die Zwei-Faktor-Authentifizierung aktivieren, indem Sie das Kontrollkästchen Verwenden Sie privacyIDEA zur Authentifizierung der Benutzer aktivieren.

Anmelden bei ownCloud

Nach der Aktivierung der privacyIDEA-App ändert sich der Anmeldebildschirm von ownCloud nicht.

Um sich anzumelden, müssen Sie Ihren Benutzernamen eingeben und im Passwortfeld müssen Sie die OTP-PIN und den von Ihrem Google Authenticator generierten OTP-Wert eingeben.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.