Kopano SSO einrichten

Guten Morgen,

ich würde gerne Kopano DeskApp so einrichten dass es die aktuelle Anmeldung vom System nutzt. Hintergrund ist die Passwort-Richtlinie welche die User alle 30 Tage zwingt ihr Passwort zu ändern. Durch SSO soll diese dann für Kopano (Client) mit geändert werden.

Der Support von Kopano hat mir mitgeteilt dass die mit UCS 4.3 möglich sei:

Die Konfiguration der WebApp für SSO wäre hier beschrieben:

https://kb.kopano.io/display/WIKI/Kopano+WebApp+Kerberos+Single+Sign+On+configuration

Er hat mir aber den Hinweis gegeben:

“Manche Schritte können Sie überspringen da auf dem UCS die Keytab normalerweise schon vorhanden ist.”

Bevor ich jetzt meinen UCS vermurkse. Hat dass schon jemand von Euch gemacht bzw. kann mir sagen welche Schritte notwendig und welche unnötig sind?

Viele Grüße
Sven

Hallo @pixel,

das letzte Kerberos SSO Setup ist eine Weile bei mir her. Falls du ein solches (UCS spezifisches Howto) contributen möchtest richte ich gerne eine Seite dafür im Wiki ein.

Hallo,

ich weiß ja gar nicht wie die Einrichtung von statten geht bzw. welche Teile von der Kopan-Doku unter UCS relevant sind.

Das war ja meine Frage.

vielleicht macht es dieser thread hier klarer Zarafa SSO für Outlook unter UCS 3 (Samba 4) ?

Soweit ich es im oben verlinkten Howto lesen kann sollten aber all diese Schritte auch auf Univention zutreffen (ob eine keytab Datei auf Univention schon existiert kann ich nicht sagen), mit der ausnahme dass das Univention System bereits in die Domäne gejoined sein sollte.

edit: das in der zweiten Antwort hinterlegte Skript macht ucr set zarafa/cfg/server/local_admin_users="root www-data" dies ist eine blöde Idee wenn noch andere Anwendungen auf dem System auf Kopano zugreifen (Z-Push z.B.). Stattdessen sollte in der WebApp Authentifizierung mittels eines SSL Zertifikates durchgeführt werden.

Ich muss da nochmal nachfragen. Man verzeihe mir meine Unwissenheit.

Ich habe doch Kopano, welches auf einem UCS-Menber läuft, aus dem App-Store von UCS installiert. Wenn ich nun meinem UCS-Benutzer ein neues Passwort gebe greift dies auch bei Kopano. Ich kann mich dort dann auch nur noch mit dem neuen Passwort anmeleden.

Das ist doch SSO, oder?

Mein Client auf dem Kopan DeskApp läuft ist ja dieser Domäne beigetreten und benutzt diesen User vom UCS-Server.

Im einfachsten Sinne: ja.

SSO bedeutet in erster Linie, dass die selbe Kombination aus Benutzer und Password an mehreren Anwendungen verwendet werden kann. Ändert sich das Passwort im UCS, dann muss der Nutzer auch das neue Passwort für die Anmeldung an seiner Workstation, WebApp, DeskApp verwenden.

SSO kann aber auch bedeuten, dass der Nutzer sich nur einmal einloggen muss (an seiner Workstation z.B.) und dieser Login dann (mittels Kerberos) auch für andere Anwendungen gilt.

https://kb.kopano.io/display/WIKI/Kopano+WebApp+Kerberos+Single+Sign+On+configuration beschreibt letzteres.

Ich würde das noch nicht SSO nennen. Das ist eher same user - same password. Das UCS Identity Management sorgt dafür, dass man sich mit der gleichen Benutzer+Passwort Kombination an allen Diensten anmelden kann.

SSO meint, dass man sich im Idealfall nur einmal anmelden muss, also nur einmal sein Passwort eingeben muss. Mit dem Single Sign-On in UCS kann man sich beispielsweise einmal am UCS Portal anmelden, und kann dann über die Links dort auf beliebige Dienste zugreifen, und ist direkt angemeldet. Das funktioniert zum Beispiel mit unseren Connector Apps für Office365 und G-Suite. Aber auch andere Apps aus dem App Center lassen sich darüber anbinden.

Das ist ja jetzt eine andere Anleitung. So richte ich SSO für Kopano auf UCS ein? Hat dies schon jemand hemacht?

Das ist der Link den du oben selbst gepostet hast.

1 Like

Hier ist eindeutig zu heiß. Ok, scheint keinen Weg zu geben dies ohne manuellen Eingrifff und ungewissen Nebenwirkungen hin zu bekommen. Dann sollen die User halt, nach der durch die UCS-Richtlinie erzwungene Passwort-Änderung, in Kopano das Passwort menuell auch anpassen. Ist mir zu riskant da herum zu flicken. Aber danke für die Erklärungen :slight_smile:

Das ist ja netzt doch schon 2 Jahre her. Gibt es hier neue Erkenntnisse? Hat das Setup jemand Erfolgreiche vollzogen, und mag dieser jemand sein Wissen teilen?

Weniger invasiv als Kerberos (und gleichzeitig weniger komplex) wäre die WebApp für OIDC Login einzurichten. Dafür haben wir vor einiger ein Skript unter https://github.com/Kopano-dev/ucs-oidc-webapp veröffentlicht.

Der ursprüngliche Thread erwähnt auch die DeskApp, diese unterstützt den OIDC Login derzeit aber noch nicht (macht weiterhin direkten Passwort Auth).

1 Like

Hi,
@fbartels : ich habe dieses Skript mal bei einem Kunden ausprobiert und komme damit leider nicht zurecht.

Es geht ja davon aus, dass die OIDC-App und Kopano Core/Webapp am selben Server installiert sind, was im dem Szenario nicht der Fall ist.
Daher habe ich Teile des Skripts auf dem UCS-Master (dort läuft der OIDC-Container) laufen lassen, nämlich die Erstellung des Users oidc-helper und des Services oidc/rpservice.

Die .env-Datei habe ich angepasst, sodass FQDN_SSO auf den Master zeigt und sichergestellt, dass die beiden Dateien auf beiden Servern gleich sind.

Der Rest läuft dann am Kopano-Server. Dort sollen dann auch die beiden weiteren Docker-Container laufen, nehme ich an. Richtig?
Einer der beiden (kopano_ssl) startet kurz und führt start.sh aus - danach beendet er sich sofort wieder. Ist das das gewünschte Verhalten?
Der andere (kopano_konnect) läuft und lauscht.

Die Ausgabe des Skripts sieht dann so aus:

root@mailsrv:/opt/git/ucs-oidc-webapp# ./run.sh
configuring Apache
setting config options in WebApp and kopano-core for oidc
Not updating kopano/webapp/config/LANG
Create kopano/webapp/config/OIDC_ISS
Create kopano/webapp/config/OIDC_CLIENT_ID
Create kopano/cfg/server/kcoidc_issuer_identifier
Create kopano/cfg/server/enable_sso
Create kopano/cfg/server/kcoidc_initialize_timeout
Module: kopano-cfg
pulling containers before starting
Pulling kopano_ssl     ... done
Pulling kopano_konnect ... done
starting containers
Starting ucs-oidc-webapp_kopano_ssl_1 ... done
ucs-oidc-webapp_kopano_konnect_1 is up-to-date
restarting kopano-server to apply changes
Waiting for kopano-server to startup, then syncing user list to create the new user
2020/08/11 13:19:02 Waiting for tcp://127.0.0.1:236: dial tcp 127.0.0.1:236: connect: connection refused.
2020/08/11 13:19:03 Ready: tcp://127.0.0.1:236.
The server is not running, or not accessible through "default:".
Using the -v option (possibly multiple times) may give more hints.
An error occurded on line 141 of this script.

root@mailsrv:/opt/git/ucs-oidc-webapp# kopano-admin -l -vvv
[error  ] Logon to file:///var/run/kopano/server.sock: Remote side closed connection.
[error  ] HrLogon server "default:" user "SYSTEM": network error
[error  ] Unable to open Admin session: network error (80040115)
The server is not running, or not accessible through "default:".
Using the -v option (possibly multiple times) may give more hints.

Woran könnte das liegen?

Das undo-Skript habe ich noch erweitert, sodass die beiden neuen Apache-Configfiles auch gelöscht werden.

LG,
Roland.

@roland.gsell Ich würde empfehlen hierfür ein eigenes Topic aufzumachen. Bis auf das ich einen Link zu dem Skript hier gepostet hat, hat deine Frage nichts mit dem eigentlichen Topic zu tun.

Das offensichtliche wäre dass das kopano-server nicht läuft. Ein Blick in sein logging sollte mehr verraten.

Ja, genau - der kopano-server stellt daraufhin seinen Dienst ein.

Ich habe ein neues Topic erstellt: