Zwei-Faktor Authentifizierung für Zarafa/Kopano WebApp mit Google2FA | Zarafa/Kopano WebApp Plugin allows the use of Google two-factor authentication

2-Faktor Authentifizierung für die Zarafa WebApp

Die erste Version meines Zarafa-WebApp-Plugins steht zum Download bereit… 🙂

Eine Zwei-Faktor Authentifizierung bietet einen zusätzlichen Schutz. Neben der gewohnten Anmeldung mit Benutzernamen und Passwort wird ein einmalig gültiger, zeitbasierter Code benötigt, um sich anzumelden.

Das Plugin ermöglicht die Absicherung der Zarafa WebApp mit Hilfe einer Zwei-Faktor Authentifizierung. Der Code kann mit der kostenlosen App Authenticator von Google, die für unterschiedliche Smartphones zur Verfügung steht, generiert werden.

Weitere Informationen findet Ihr auf der Projektseite.

10 Gedanken zu „2-Faktor Authentifizierung für die Zarafa WebApp“

    1. Hallo Juvi,

      danke für die Rückmeldung. Ich konnte den Fehler nachstellen. Wenn bei den WebApp-Einstellungen des Plugins keine zeitunabhängigen Codes generiert wurden, dann ist eine Anmeldung mit leerem Code beim Login möglich. Das soll natürlich nicht so sein. Ich habe den Fehler behoben und die Version 0.2.1 zur Verfügung gestellt.

      Sorry, Norman

  1. Hallo,

    eigentlich toll –
    habe zarafa nur mit zwei konten.
    aber bei einem Konto gehts, bei einem anderen nicht. Nach der Anmeldung passiert dan einfach nix…

    1. Hallo Andreas,

      getestet habe ich das Plugin mit mehreren Konten gleichzeitig – daran sollte es nicht liegen.
      Ich bräuchte mehr Informationen, um die Ursache ermitteln zu können.

      Hilft ein Reset des Plugins in den Plugin-Einstellungen?
      Funktionierte der Code-Check bei der Konfiguration in den Einstellungen?
      Funktionieren die generierten Notfall-Codes?
      Welche Zarafa-/WebApp-/Plugin-Version ist im Einsatz?
      Wurde etwas an der Standard-Konfigurationsdatei geändert?
      Gibt es etwas Besonderes im Anmeldenamen oder Passwort – zum Beispiel ein Sonderzeichen, das beim funktionierenden Konto nicht vorhanden ist?
      Welche Verschlüsselung wird verwendet bzw. ist auf dem Server mcrypt installiert?
      Interessant wäre auch, ob im Apache-Log PHP-Fehler oder in der Browser Konsole (oft mit F12 zu öffnen) JavaScript-Fehler ausgegeben werden.

      Wenn man in der “/etc/zarafa/webapp/config.php” den Wert “define(‘ENABLE_ADVANCED_SETTINGS’, true);” setzt, dann erscheint in den WebApp-Einstellungen ein Menüeintrag “Erweitert”. Dort kann man auch die Einstellungen und Konfiguration des Plugins inkl. Verschlüsselungsart einsehen “Einstellungen/zarafa/v1/plugins/google2fa/”.

      Gruß, Norman

  2. Hallo Norman,

    klasse Plugin. Allerdings funktioniert bei uns das generieren der QR-Codes auf dem Server nicht. Als erstes ist mir aufgefallen, das in der qr.php am Anfang nicht <?php steht. das habe ich behoben. Allerdings kommt es dann zu folgendem Fehler:

    PHP Fatal error: Call to a member function get() on null in /usr/share/zarafa-webapp/plugins/google2fa/php/class.google2fadata.settings.php on line 20, referer: https://webmail.lumberg.org/webapp/

    Hast du eine Idee, was falsch läuft?

    Vielen Dank und Gruß

    Mark

    1. Hallo Mark,

      in der Tat ist es besser, wenn der lange PHP-Tag verwendet wird. Es ist zwar Standard, dass die Kurzform erlaubt ist (PHP-Konfigurationsdatei short_open_tag = 1) – aber kompatibler ist die Langform. Danke für den Hinweis.

      Ansonsten hast Du einen Fehler gefunden, den ich nicht so leicht beheben kann. Da muss ich mir etwas Gedanken machen.

      Die Kombination aus QR-Code selber erzeugen

      define(‘PLUGIN_GOOGLE2FA_GENERATEQR’, true);

      und Speicherung der Daten in den WebApp-Settings

      define(‘PLUGIN_GOOGLE2FA_DATABASE’, ‘settings’);

      funktioniert aktuell leider nicht.

      Ich schlage erstmal vor, dass der QR-Code nicht selber generiert wird oder die Einstellungen in einer MYSQL-Datenbank gespeichert werden. Die zweite Option ist die bessere Variante!
      Sorry – mehr kann ich kurzfristig nicht anbieten.

      Hintergrund: qr.php ist eine eigenständige Datei, die den QR-Code / also ein Bild darstellt. Beim Aufruf stehen an dieser Stelle die WebApp-Settings nicht zur Verfügung – deswegen ist das Objekt null. Ich muss mal schauen, wie ich daran kommen könnte.

      Sorry,
      Norman

  3. Hallo Norman
    Erstmal danke für das tolle plugin 🙂
    Kannst du das plugin bzgl Deskapp anpassen siehe meinen Tread im Zarafa/Kopano Forum
    https://forums.zarafa.com/showthread.php?13311-Google-2FA&p=57804#post57804
    Da mit dem Plugin enabled die Deskapp Anmeldung nicht klappt und dies bei der Deskapp ja nicht benötigt wird da der User sich schon am PC anmelden muss um diese zu starten

    ich werds mal versuchen das zu modifizieren – wäre aber toll wenn Du das in Dein plugin übernehmen könntest

    1. Hi,

      nach dem Mailaustausch hier einmal die Zusammenfassung für alle, die es interessiert. Die DeskApp unterstützt technisch keine 2 Faktor-Authentifizierung. Eine Ausnahme im Plugin für die DeskApp wäre eine Reduzierung der Sicherheit, da diese Ausnahme leicht missbraucht werden könnte. Beste Lösung ist aktuell die Konfiguration der Whitelist in der config.php des Plugins.

      Gruß, Norman

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.