SSO DLAP Php Extension installieren

Waschlos?

Ensign
Registriert
Feb. 2016
Beiträge
192
Hey,
Ich habe in einem CMS eine Extension für sso/LDAP installiert und da bin ich jetzt an folgendem Punkt:

LDAP connect
hostmeinedomain.de
portmeinport
statusSuccess
module_status.configuration.option
sslEnable
LDAP bind
dnmeine dn...
password
diagnostic
statusCan't contact LDAP server
Und nun sagt mir der der es eingerichtet hat, das ich wegen dem "Can't contact LDAP server" nun an den Webserver ran muss. Nach meiner Recherche irgendwie der benutzten php Version eine SSO Extension hinzufügen oder installieren muss. Und ich bin trotz Recherche nicht in der Lage so richtig zu begreifen wie ich nun vorgehen muss.

Betriebssystem Debian 10.9 (64-bit)
Kernel 4.19.0-9-amd64

21.0 (Build 2195) Änderungsprotokoll

Webserver Apache 2.4.38
PHP PHP 7.3.27
Datenbank-Server MariaDB 10.3.27
FTP-Server ProFTPD 1.3.6
Mail Transfer Agent Postfix 3.4.14
Mail Delivery Agent Dovecot 2.3.4.1
Datenbank-Administration phpMyAdmin 5.1.0
Webmail Roundcube 1.4.11
Kryptographie OpenSSL 1.1.1d

Danke schon mal :)
 
Zuletzt bearbeitet:
Jede Menge Dienste, aber keinen LDAP service? 🤔

Probier erstmal einen manuellen LDAP bind, ob das überhaupt geht.

Die Übersicht ist auch nicht ganz klar. Wenn da als LDAP Server der Webserver eingetragen ist... dann funktioniert es natürlich nicht.
Aber das mag einem ungünstigen Tabellenformat geschuldet sein.
 
@RalphS Ja scheint so.

Wie geht denn ein manueller bind?

Wo ist der Webserver als LDAP eingetragen? ne die Tabelle stimmt schon. Wenn du den Host meinst. da ist die Domain eingetragen die in meinem Fall nicht dem Server entspricht :)
 
php7.3-ldap ist aber installier?

Und ein ldap Server ist auch in Betrieb?
 
@madmax2010 Ich habe php installiert. Aber von php-ldap weis ich nix. Ich glaube darum gehts ja auch ^^.
Ich weis nicht wie ich etwas für ldap installiert bekomme

Ich habe einen Server in Betrieb. Von einem ldapserver weis ich wiederum auch nix :)

Ich habe die phpOrdner auf d9ie ich Zugriff habe. Da sind auch diverse Ordner und DAteien drinnen wie: etc, lib, sbin share ...
 
Für SSO müssen die Benutzerkonten ja irgendwo herkommen.

Beschreib mal die Anforderung(en) etwas genauer. Was soll wie gehen?
 
@RalphS Ich habe ein CMS(typo3) in dem ich per User Extension die Nutzer organisiere. Die wiederum dann von anderen Websites mit sso angebunden werden. Sodass die User der anderen Websites sich nicht über die Websites selber anmelden sondern über die Zentrale Nutzerdatenbank. Und in der Folge auf allen anderen Websites automatisch angemeldet sind. Sowie auch darüber registrieren. Und eventuell auch seine Nutzerdaten editieren.

@PHuV Ich hatte verstanden was SSO ist und wie es grundsätzlich geht. LDAP scheint irgendwie mehr ein reiner Authentifizierungsservice zu sein. Da wohl viel SSOs LDAP als diesen verwenden. Wie die Extension anscheinend auch.
 
Zuletzt bearbeitet:
Und woher kommt die zentrale nutzterdstenbank? Ldap? Postgres? Csv?
 
  • Gefällt mir
Reaktionen: PHuV
Waschlos? schrieb:
@RalphS Ich habe ein CMS(typo3) in dem ich per User Extension die Nutzer organisiere. Die wiederum dann von anderen Websites mit sso angebunden werden. Sodass die User der anderen Websites sich nicht über die Websites selber anmelden sondern über die Zentrale Nutzerdatenbank. Und in der Folge auf allen anderen Websites automatisch angemeldet sind. Sowie auch darüber registrieren. Und eventuell auch seine Nutzerdaten editieren.

@PHuV Ich hatte verstanden was SSO ist und wie es grundsätzlich geht. LDAP scheint irgendwie mehr ein reiner Authentifizierungsservice zu sein. Da wohl viel SSOs LDAP als diesen verwenden. Wie die Extension anscheinend auch.
Wo ist aber dein LDAP-Server?
Du musst ja irgendwo einen LDAP Server haben, du kannst nicht von einer anderen Webseite Benutzer anziehen welche aus dem LDAP kommen. Du musst auf den LDAP Server zeigen, wo auch der 2. Webserver drauf zeigt.
 
  • Gefällt mir
Reaktionen: PHuV
@madmax2010 Die Datenbank wird gespeist durch typo3 und liegt auf einem Server, oder wie war die Frage gemeint?

@ASS Ich verstehe diese Formulierung nicht so ganz. WAs ist ein LDAP Server. Ich habe einen Server auf dem kann ich Sachen installieren, Domains anlegen und co.
Verstehe ich das richtig, das du meinst:
Meine LDAP Extension in der Typo3 installation mit der Nutzerdatenbank müssen auf einen Server zeigen? Ist das nicht der LDAP Bind status? Das ist übrigens die Extension:
https://extensions.typo3.org/extension/ig_ldap_sso_auth

Braucht es noch Informationen was ich in der Extension alles Konfiguriert habe? DA müsste ich ja dann irgendwo auf einen Server zeigen können oder so.


@All Ps. Die LDAP Extension ist übrigens in der Typo3 Installation mit der die Userdatenbank gespeist wird installiert. Vielleicht wäre das ja schon der erste Fehler. Und müsste vielleicht auf den anderen Websites liegen oder so...Ich dachte halt das der der das Konfiguriert hat zumindest nach der Recherche weis was er tut. Immerhin programmiert er php ..
 
Waschlos? schrieb:
@PHuV Ich hatte verstanden was SSO ist und wie es grundsätzlich geht. LDAP scheint irgendwie mehr ein reiner Authentifizierungsservice zu sein. Da wohl viel SSOs LDAP als diesen verwenden. Wie die Extension anscheinend auch.
Nope, Du hast eben nicht verstanden, was LDAP ist. Es ist eben KEIN reiner Authentifizierungsservice, sondern eine Datenbank mit allen Benutzern und deren Zugriffsberechtigung. Siehe auch die Frage von AAS und madmax2010. Wenn Du Windows kennen solltest, das ist wie ein Active Directory in einer Firma. Die Extension ist nur ein Tool, damit Du Dich per LDAP verbinden kannst, aber dafür brauchst Du einen laufenden LDAP Server bzw. Service. Sprich, Du mußt irgendwo eine Datenbank haben, wo Du entsprechende Benutzer, Bereiche, Rollen etc. angelegt hast.
 
  • Gefällt mir
Reaktionen: AAS
@PHuV Damit ich wenig verstehen muss hatte ich ja den Kerl ^^. Also bräuchte ich eine weitere Datenbank wo ich die User synchronisiere mit der Userdatenbank? Und das sso würde dann über die weitere Datenbank laufen und eben nicht über die Typo3 Userdatenbank?
Dafür bräuchte ich einen Service (so wie active directoy und OpenLDAP) der das mit der weiteren Managed oder einen LDAP Server. (immer noch nicht verstanden was der Unterschied zwischen LDAP Server und Webserver ist). Der Service ist also nicht die Extension. Die Extension ist das tool für die Verbindung zur Synchronisation der Userdatenbank mit der ldap Datenbank oder ist es das Tool das in jede Website/typo3installation installiert wird um den LDAP Service also sso nutzen zu können/sich extern einloggen zu können?

Puh, ist es so kompliziert oder bin ich einfach zu doof?


Zitat extension manual:
This extension enables import/update/deletion of users and groups (frontend, backend or both) from a LDAP-directory and provides Single Sign-On (SSO) for frontend users. These features make it the perfect choice when deploying TYPO3 as an intranet CMS.

In case the network topology makes it useful, this extension is able to work with multiple LDAP server configurations, with a priority order based on the manual sorting of configuration records.

This extension is known to work with OpenLDAP and Active Directory (various versions).

Hier steht das ja irgendwie auch, das es nur eine Verbindung zu dem OpenLDAP oder Active Directoy DAtenbank herstellen soll und nicht das LDAP an sich ist, richtig? Aber der SSO ist irgendwie getrennt worden im TExt. DAs das SSO auch ohne LDAAP geht???
 
Nochmals ganz einfach:
  • SSO - Irgend ein Service, wo Du Dich als Benutzer authentifizieren kannst.
  • LDAP - spezielle Datenbank für Benutzerverwaltung, die für SSO genutzt werden kann.
  • Webserver - Ein Dienst, der Webdienste für HTTP, HTTPS etc hostet (eben die typischen HTML-Seiten), aber auch SSO Anfragen umleiten kann (als Proxy etc.)
Der Webserver nimmt die Anfrage mit Login User/PW per SSO entgegen, und je nachdem, was Du intern konfigurierst, muß dieser User ja mit dem angegeben Passwort verifiziert werden. Also wird die Anmeldung vom Webserver an die Stelle weitergeleitet, die den Benutzer wie sein Kennwort und seine hinterlegten Berechtigungen gespeichert hat. Das kann die interne Userdatenbank sein, oder eine einfache Textdatei (z.B. htaccess) im Webserver, oder eben ein LDAP Server mit einer entsprechenden Datenbank dahinter.

Und da wird nix sychronisiert mit Userdatenbank oder sonstwas. Nur mal so, Du kannst auch SSO direkt mit einer eigenen Userdatenbank oder poppeligen Textdatei machen (siehe oben per htaccess), Du brauchst nicht unbedingt ein LDAP dahinter. Nur weiß ich ja nicht, was Du eigentlich machen willst. LDAP ist an sich nur für größere Umgebungen gedacht, um mehrere Benutzer in Organisationen mit entsprechenden Zugriffsrechten auf bestimmte angelegte Gruppen zu verwalten. Sprich, Du hast den Admin, der in Gruppe A B C D Admin, Lese und Schreibrechte hat. Und dann hast Du den Bereichtsleiter, der in A und B Lesen und Schreiben darf, und den Angestellten, der dann nur in B lesen darf usw.

Wenn Du von LDAP aktuell noch keine Ahnung hast (nicht als Vorwurf gemeint), dann laß es doch weg (weil LDAP ist schon etwas komplex), und lege für Dich ein einfacheres Verfahren an. Aber wie gesagt, ich weiß ja gar nichts über Deinen Hintergrund, was Du mit dem CMS wo und wie in welcher Umgebung machen willst. Für LDAP brauchst Du dann auch, wenn es vernünftig laufen soll, ein entsprechendes global signiertes Zertifikat.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: madmax2010
Du brauchst halt irgendeinen SSO Provider. Sei es nun LDAP oder OAUTH oder sonstiges .

Am einfachsten ist es für den Einstieg Keycloak zu verwenden, da es hier viele Anleitungen und Doku zu gibt. So lange du nicht LDAP als Backend dafür nutzt ist Keycloak auch nicht zu kompliziert.
Aber auch das gibt nichts, wenn du nur einen gemieteten webspace hast.

Was hast du überhaupt mit SSO vor? Hast du noch mehr als Wordpress auf der Seite? Nutzt du ein Portal für die Anwendungen?
 
@PHuV @madmax2010
Danke für die ausführliche und Verständliche Erläuterung :)

Ich hatte gehofft das der Programmierer mir sagen kann wo ich denn welche Nutzerdaten hinpacken soll und so. Konnte er nicht leider. Das LDAP kam durch diese Extension dazu. Meine eigentliche Aufgabenstellung war SSO, unabhängig ob die den zweck erfüllt hätte (was ich da so möchte. weis ich halt nicht) . Die Extension hatte halt nun die Felder wo man LDAP eintragen kann oder muss. Und er wusste anscheinend was er da eintragen muss. Allerdings nicht wie er mit Textdateien oder anderen Varianten ohne LDAP, das SSO hinbekommt.
Und ich leider auch nicht.

Ich habe mehrere Typo3 Installationen. Die sollen sich in einer zentralen Nutzerdatenbank anmelden können. Vielleicht auch Ihre DAten dort(ich weis nicht wie sowas in der regel gemacht wird/wo) Editieren und einsehen können. Diese Datenbank wird gemanaged durch eine Typo3installation in der eine userregister, edit, und loginextension installiert ist. Sowie Benutzergruppen. Und ich die Gruppen und User jetzt auch nach und nach durch weitere eigene Extensions mit Datenbank Feldern erweitern lasse. Die dann eben wieder mit der Userextension funktionieren soll :).

Ps. Habe einen eigenen Server. Verwaltet mit einem Server Management System. ALso theoretisch könnte ich eine Menge machen. Wenn ich denn könnte :D.
 
  • Gefällt mir
Reaktionen: PHuV
Waschlos? schrieb:
Ich habe mehrere Typo3 Installationen. Die sollen sich in einer zentralen Nutzerdatenbank anmelden können. Vielleicht auch Ihre DAten dort(ich weis nicht wie sowas in der regel gemacht wird/wo) Editieren und einsehen können. Diese Datenbank wird gemanaged durch eine Typo3installation in der eine userregister, edit, und loginextension installiert ist.
grundsätzlich kannst du das schon so einrichten, dass die Typo3 Instanzen sich alle die Nutzerdatenbank teilen, das ist aber eher hässlich und vermutlich bekommst du es in der Datenschutzerklärung nicht DSGVO konform formuliert.

Waschlos? schrieb:
Und er wusste anscheinend was er da eintragen muss. Allerdings nicht wie er mit Textdateien oder anderen Varianten ohne LDAP, das SSO hinbekommt.
Der ist azubi oder?

Waschlos? schrieb:
Server Management System
Kommst du auf die kommandozeile?
Du könntest halt mal keycloak installieren.
Aber versuch doch mal bitte, uns den ist zustand was genauer zu erklären und wo du genau hin willst und welche Mittel du da von wem hast.

Da du oben PHPMyAdmin sagtest: Bitte nicht direkt übers internet erreichbar haben.. PHPMyAdmin ist ganz weit vorne bei den Tools, durch die Server besonders oft von unbefugten auf gemacht werden.
 
madmax2010 schrieb:
grundsätzlich kannst du das schon so einrichten, dass die Typo3 Instanzen sich alle die Nutzerdatenbank teilen, das ist aber eher hässlich und vermutlich bekommst du es in der Datenschutzerklärung nicht DSGVO konform formuliert.


Der ist azubi oder?


Kommst du auf die kommandozeile?
Du könntest halt mal keycloak installieren.
Aber versuch doch mal bitte, uns den ist zustand was genauer zu erklären und wo du genau hin willst und welche Mittel du da von wem hast.

Da du oben PHPMyAdmin sagtest: Bitte nicht direkt übers internet erreichbar haben.. PHPMyAdmin ist ganz weit vorne bei den Tools, durch die Server besonders oft von unbefugten auf gemacht werden.



@madmax2010 Zuerst wollte ich die einfach anzapfen die Userdatenbank mit allen installationen. ABer aufgrund von dem was du sagst, bin ich dazu rübergegangen dann doch SSO machen. Ich dachte dann teilen sie sich die Datenbank nicht wenn sone Art Service, eben die hin und zurückleiten zum anmelden und zurück. Weis aber dann nicht wie sich das mit dem Editieren von Benutzerdaten verhält. Ob man das über sso trotzdem hin und her leiten kann, für das editieren und registrieren auch weis ich nicht.

Der ist Inder. Und kann wohl php und auf jeden Fall Typo3. Ist zuverlässig und fair. Arbeitet wohl schon ein paar Jahre selbstständig als Webprogrammierer. Hat aber SSO noch nie gemacht. Und hat mir bisher wenige Dinge in Typo3 gemacht. Weniger komplexe.

Ja ssh/putty komme ich drauf. Auch als root.

Danke für den Tipp. Du meinst mit nicht direkt übers Internet, das man es nicht über den Browser aufrufen lassen kann?
Php myadmin wird über das Servermanagementsystem zur Verfügung gestellt. Ich gehe immer über jenes da rein in dem ich die Datenbank dort anwähle :)


Der Istzustand: Etwas schwierig, weil ich die einen Websites (Punkt 1) neu aufsetzen wollte, die ich dann mit dem sso und so..Aber gehen wir mal nach dem neu aufsetzen aus:
1) Eine Typo3 Installation, mit mehreren Websites.
2) Eine Typo3 Installation mit einem Shop
  • DIeser hat eine Registrierungsfunktion, die allerdings eingebunden werden soll in die Zentrale Nutzerdatenbank/SSO. Da müssen glaube ich 2 Datenbankfelder die die Extension mitbringt.
  • Desweiteren hat sie Funktionen mit dem Benutzergruppen die auch irgendwie connected oder umgeschrieben werden müssten. (könnte kompliziert werden)
3) EIne Typo3 Installation mit einem Blog
4) Installation mit Benutzerdatenbank und fe_manager extension, sowie den benutzergruppen. (Später sollen weiter Tabellen mit weiteren Benutzergruppenfeldern dazu kommen.)
5) Eigenen Webserver mit Servermanagementsystem (Keyhelp)

Ps. Aktuell habe ich diese erwähnte "ig_ldap_sso_auth" Extension in der Userdatenbank Test Installation installiert. Und weiter bin ich mit ihm zusammen noch nicht gekommen. Weil er als letztes sagte, das es jetzt ne Serversache ist :)

Sollzustand:
- FÜr alle diese Websites(Punkt 1-3) sollen für die Frontenduser nur Eine Registrierung und nur ein Login nötig sein. Die in der Userinstallation(Punkt 4) konfiguriert , erweitert und so werden soll)
Konfiguration zum Beispiel welche Felder bei der Registrierung im Frontend angezeigt werden und welche beim Login und co.)
- Die 2 Datenbankfelder des Punkt "2" müssten in die Userdatenbank gemapped werden. Oder so wie ich es grade mache , das ich die Ext installiere und sie damit einfach da sind.
(Aktuell arbeite ich mit meinem Testserver, damit ich nix zerschieße was ggf. ein Problem sein könnte ^^.
Ich ziehe wenn der Inder oder wir beide oder nur ich, es hinbekomme dann sauber auf den richtigen Server mit den richtigen Seiten um :))

Ich weis nicht ob man bei SSO normalerweise das editieren vom Benutzeraccount in den verschiedenen Installationen macht oder direkt in der Userinstallation. Sowie die weiteren Userfelder, die allerdings in allen Websites die gleichen sein sollen.

Ich hoffe es war verständlich und ich habe nichts vergessen. FInde es selber ziemlich komplex :)
 
Zuletzt bearbeitet:
Nee, wie gesagt, SSO ist nur für die Bezeichnung für einen Dienst/Service/Tätigkeit. Was und wohin der SSO hinleiten und wo er die Userdaten, Kennwortabgleich und Berechtigungen bekommt, dafür mußt Du selbst sorgen. Ich kenne jetzt dieses CRM nicht, aber viele sorgen dafür selbst, in dem sie in der bereitgestellten Datenbank für dieses System (z.B. Confluence) eben auch eine Tabelle für eine Benutzerverwaltung anlegen. Sprich, beim Installieren sorgt dann die Installationsroutine, daß dann alles entsprechend angelegt wird. Sie fragt ja auch nach einem Admin-User. Danach wird dann der Webserver oder Tomcat gestartet, und beim ersten Einloggen kannst Du weiter konfigurieren, wie Du das haben willst. Also die Userverwaltung lokal belassen, oder eben auf ein bereits vorhandenes LDAP umschwenken. Dann werden alle Anwendungen per SSO eben an das externe LDAP weitergeleitet, der Web- oder Tomcatserver ist dann nur die erste Instanz, die das Login entgegen nimmt, die Verifizierung und Berechtigung erfolgt dann eben über den SSO Prozess, das würde besser die Sache beschreiben.
 
Zuletzt bearbeitet:
@PHuV
VIelleicht wäre das einfachste(ich schaue mir aber nochmal das Keycloakan), einfach Login sowie Register als Link der zur Userinstallation führt. Dann einen link/redirect der immer zu der Domain führt wo man herkam , mit einem Token mit dem überprüft wird ob man eingeloggt ist. Sowas. Müsste mich dann mal umschauen ob mein SSO Mensch das hinbekommt. Diese Extension auf jeden Fall war wahrscheinlich eh völlig overpowered fürs erste und wie ich gelernt habe nicht mal ausreichend :)

Ich habe hier auf jeden Fall schon mal einiges mehr verstanden und auch einige Begriffe gehört die damit zu tun haben :)
 
  • Gefällt mir
Reaktionen: PHuV
Zurück
Oben