Apache Authentifizierung am LDAP-Server

Slides:



Advertisements
Ähnliche Präsentationen
PHP Extension und Application Repository
Advertisements

Datenbankzugriff auf den iPlanet Directory Server mit PHP & LDAP Von Michael Günster.
Einer der Dienste im Internet
Präsentation des Abschlussprojektes Rudolf Berger
OpenLDAP.
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
Bernd Oberknapp, UB Freiburg
Authentifizierung, Autorisierung und Rechteverwaltung Einsatz und Funktion des Rechteservers 2. Shibboleth-Workshop Freiburg, 23. März 2006 Gerald Schupfner,
Einbindung des Service Providers: Einfache Web-Applikation, Überwachungssystem NAGIOS 2. Shibboleth-Workshop, Freiburg, Franck Borel, UB Freiburg.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Lightweight Directory Access Protocol
Erweiterung B2B Usermanagement / LDAP-Anbindung
Sicherheit und Personalisierung Internet Portal der Universität München.
DOM (Document Object Model)
ATHOS Benutzertreffen 12. November Auswerteserver Glashütten, 12. November 2008 HighQSoft GmbH, Andreas Hofmann
XINDICE The Apache XML Project Name: Jacqueline Langhorst
Webserver, © Till Hänisch 2002 Apache The open way.
Content-Management-System
LDAP und RADIUS RADIUS-Server
1 Nketchoya Ngomegni Germain HTTP- Authentication und ihre Konfiguration mit Apache.
Das Build-Tool ANT ETIS SS05. ETIS SS05 - Nadine FröhlichANT 2 Gliederung Motivation Build - Datei –Allgemeiner Aufbau –Project –Target –Task –Properties.
Introducing the .NET Framework
Linux-HA-Cluster – Heartbeat mit DRBD
WhatsUp Gold
Directory Services - LDAP, JNDI
Einführung MySQL mit PHP
Mailserver-Installation mit LDAP-Schnittstelle für die Firma XYZ GmbH
Directory Services für Heterogene IT Landschaften
LDAP Migration (Stand und Ausblick) Torsten Gosch CIS.
Workshop: Active Directory
LDAP Lightweight Directory Access Protocol Bernhard R. Fiser, /12/03, Version 1.0.
InfoPoint vom 9. November Was ist Joomla? Theorie Installation Extensions Administration Demo.
Xenario IES Information Enterprise Server. Xenario Information Enterprise Server (IES) Die neue Architektur des Sitepark Information Enterprise Servers.
1 Teil 2 Einblicke in Exchange 2003 (Basis Beta 2)
von Sebastian Streitberger
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Benutzerverwaltung mit LDAP
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
LDAP- Verzeichnis und Protokoll
Client-Server Systeme
INSTANT MESSAGING LI Xiaohui LIU Miao ZHOU Guanpei Universität Salzburg WAP Präsentation WS 2005/06.
WISPR (Wireless ISP roaming)
Einführung in das Wissenschaftliche Arbeiten Andreas Hechenblaickner Programmiersprache Eiffel
Aktuelle Produktstände – TRIBASE
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Bereitstellen von PHP-Webanwendungen auf Windows Azure
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
SQLite und XML in PHP 5.
Michael Hartl, Laurent Steurer
AUGE e.V. - Der Verein der Computeranwender Eine eigene Foto-Homepage auf auge.de Peter G. Poloczek M5543.
Dedizierte Systeme Typo3 Installation Dedizierte Systeme – Typo3 Installation – Christoph Stollwerk IT Zertifikat der Philosophischen Fakultät WS 2008/2009.
Quellen: Internet INTRANET Ausarbeitung von Sven Strasser und Sascha Aufderheide im Modul Netzwerktechnik, Klasse INBS Mai 2003.
Linux Webserver mit erweiterten Sicherheitsmerkmalen
1 SUSE LINUX School Server, Peter Varkoly, Entwickler,, Challenging the world to change.
Novell im Schuleinsatz
Content-Managment-System
Von Alexander Röhr Booten.
Enhydra Shark Workflow-Management Frank Aurich Markus Reisch.
Realisierung und Einführungskonzept einer standortübergreifenden Vereinheitlichung der Benutzerverwaltung mit LDAP Diplomarbeit bei Continental Temic in.
Linux Primary Domain Controller mit
->Prinzip ->Systeme ->Peer – to – Peer
CODA - Installation Installation der Binärdateien –Venus: Client-Programm –Vice: Server-Programm –Für Windows existiert eine Alpha-Version (Coda Client.
Oracle Portal think fast. think simple. think smart. Dieter Lorenz, Christian Witt.
Novell Server mit NetWare 6.5 und Windows 2003 Server Bernd Holzmann
Universität zu Köln IT – Zertifikat der Philosophischen Fakultät / Kurs: Allgemeine Technologien I mit Susanne Kurz M. A. Open Source Anw. vs. proprietäre.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: LDAP Dr. Wolfgang Wörndl
Patrick Richterich Lattwein GmbH Web Services Softwareentwicklung mit SOAP.
Identity Management.  Zentrale Begriffe und Probleme  Modellbildung  Methoden zur Authentisierung über HTTP  Technische Aspekte  Compliance  Hindernisse,
LINUX II Unit 7 LAMP Server. LAMP ● Linux – Apache - MySQL – PHP ● Leistungsfähiges und kostenloses System zur Genrierung von dynamischen Webseiten und.
OAuth 2.0 Ralf Hoffmann 03 / 2017
 Präsentation transkript:

Apache Authentifizierung am LDAP-Server Lars Gelbke Inf03

Übersicht 1. Einführung 2. Apache 3. LDAP 4. Authentifizierung Allgemein und Aufbau 3. LDAP Einführung Verzeichnis / Datenbank Verzeichnisstruktur Mechanismen 4. Authentifizierung allgemeiner Ablauf Apache Konfiguration LDAP Konfiguration Beispiel 5. Resümee 6. Quellen Lars Gelbke Inf03

Einführung Warum? Wieso? Weshalb? LDAP was ist das ? LDAP Allheilmittel ? Apache Flexibel wie immer ? Apache standardkonform ? Lars Gelbke Inf03

Apache Allgemein Produkt der Apache Software Foundation OpenSource Projekt meist verbreiteter Web-Server entstanden aus dem NCSA http-Server serverseitige Unterstützung von Scriptsprachen Lars Gelbke Inf03

Apache Aufbau modularer Aufbau hohe Plattformunabhängigkeit durch APR (Apache Portable Runtime) seit Version 2.0 Vielzahl an verschiedenen Authentifizierungsmodulen verschiedene Securitykonzepte Lars Gelbke Inf03

LDAP Einführung Lightweight Directory Access Protocol Entwicklung an der Universität von Michigan und erstmal 1993 in einem RFC vorgeschlagen Weiterentwicklung/Vereinfachung des DAP (Directory Access Protocol) auch als X.500 Standard bekannt LDAP setzt im Gegensatz zu DAP nicht auf OSI-Stack sondern auf TCP/IP-Stack auf Lars Gelbke Inf03

LDAP Verzeichnis / Datenbank Verzeichnisse sind auf Lesezugriff optimiert und bieten nur eingeschränkte Schreibfunktionen verbesserte Suchfunktionen von vornherein standortunabhängig konzipiert kann viele gleichzeitige Zugriffe meistern Bsp.: Passwortdatei Lars Gelbke Inf03

LDAP LDAP-Verzeichnisstruktur hierarchische Baumstruktur root-Objekt Verwendung von Standardisierten Schemen Lars Gelbke Inf03

LDAP Schemen ähnelt einer Klasse welche für ein daraus entstandenes Objekt Attribute bereitstellt dient der Client-Standardisierung abgeleitete Klassen möglich Lars Gelbke Inf03

LDAP Beispiel ## FIRST Level hierarchy - people ## uses mixed upper and lower case for objectclass ou=people, dc=example,dc=com ou: peopledescription: All people in organisation objectclass: organizationalunit ## SECOND Level hierarchy ## ADD a single entry under FIRST (people) level # this is an ENTRY sequence and is preceded by # the ou: Human Resources is the department name dn: cn=Robert Smith,ou=people,dc=example,dc=com objectclass: inetOrgPerson cn: Robert Smith cn: Robert J Smith sn: smith uid: rjsmith userpassword: rJsmitH carlicense: HISCAR 123 homephone: 555-111-2222 mail: r.smith@example.com description: swell guy ou: Human Resources Beispiel # this is a comment dc=example,dc=com dc: example description: My wonderful company objectClass: dcObject objectClass: organization o: Example, Inc. Lars Gelbke Inf03

LDAP Mechanismen 2 Phasen Authentication Phase / bind phase Anmeldung des Clients am Verzeichnis Anonym Simple Protected (Simpel über SSL) Strong Authorization Phase / compare phase Abfrage der übergebenen Parameter Lars Gelbke Inf03

LDAP Stärken Schwächen ermöglicht zentralisierte Datenhaltung kein fixer Primärschlüssel vereinfachte Security Policen nur schwere Implementierung in SQL-Systemen offener Standard und somit kostenfreie Integration möglich wenig aussage kräftige Literatur optimiert auf Lesezugriff nicht alle Systeme unterstützen LDAP verteiltes Verzeichnissystem möglich generalisierte Schemen(Klassen) Lars Gelbke Inf03

Authentifizierung Allgemein Lars Gelbke Inf03

Authentifizierung System Betriebssystem: Suse 9.2 Apache: Teil des XAMPP for Linux Paketes 1.4.13 Apache-Version: 2.0.53 LDAP: OpenLDAP Version: 2.3.27 Datenbank: BerkeleyDB Version: 4.5.20 Lars Gelbke Inf03

Authentifizierung Apache modularer Aufbau Hauptkonfiguration in httpd.conf Zugriffsrechte können in httpd.conf oder in .htaccess konfiguriert werden .htaccess muss in dem zu schützenden Verzeichnis liegen Vielzahl an Parametern die durch die Module bereitgestellt werden LoadModule auth_module modules/mod_auth.so Lars Gelbke Inf03

Authentifizierung Apache-Module mod_auth mod_access Grundfunktionalitäten zur Dateibasierten Authentifizierung mod_access Grundfunktionalitäten zur Adressbasierten mod_ldap stellt Cache und SSL Funktionen zur Verfügung mod_auth_ldap wichtigstes Modul zur LDAP- Authentifizierung mod_core bietet Grundlegende Funktionalitäten welche von allen Modulen genutzten werden können Lars Gelbke Inf03

Authentifizierung mod_auth_ldap AuthLDAPAuthoritative AuthLDAPBindDN AuthLDAPPassword AuthLDAPCharsetConfig AuthLDAPCompareDNOnServer AuthLDAPDereferenceAliases AuthLDAPEnabled AuthLDAPFrontPageHack AuthLDAPGroupAttribute AuthLDAPGroupAttributelsDN AuthLDAPRemoteUserlsDN AuthLDAPURL Lars Gelbke Inf03

Authentifizierung Require-Direktive in mod_core valid-user user group User im LDAP vorhanden user nur speziell definierte User group nur Gruppenmitglieder dn auf distinguished name basierende Authentifizierung ldap-attribut es muss ein bestimmtes LDAP-Attribut erfüllt sein Lars Gelbke Inf03

Authentifizierung Beispiel 01 LoadModule ldap_module modules/mod_ldap.so 02 LoadModule auth_ldap_module modules/mod_auth_ldap.so 03 04 <Directory /> 05 Options None 06 AllowOverride all 07 Order deny,allow 08 Deny from all 09 AuthName "eDirectory Identifikation" 10 AuthType Basic 11 AuthLDAPURL ldap://192.168.123.6/ou=people,dc=n0s,dc=de 12 require valid-user 13 </Directory> Lars Gelbke Inf03

Authentifizierung LDAP-Grundkonfiguration Grundkonfiguration in der slapd.conf stets versuchen Client an Server anzupassen und nicht Server an Client slapd.conf lese/schreib geschützt Verschiede Hilfs-Tools ldapadd ldapsearch … Lars Gelbke Inf03

Authentifizierung LDAP-Konfiguration include /usr/local/etc/openldap/schema/core.schema include /usr/local/etc/openldap/schema/inetorgperson.schema database bdb suffix "dc=n0s,dc=de“ # ACL1 access to attr=userpassword by self write by anonymous auth by group.exact="cn=itpeople,ou=groups,dc=n0s,dc=de" write by * none rootdn "cn=admin,dc=n0s,dc=de“ rootpw nene_so_einfach_nicht Lars Gelbke Inf03

Authentifizierung ldapadd ldapadd -f example.ldif -x -D "cn=admin,dc=n0s,dc=de" -w so_einfach_net Lars Gelbke Inf03

Authentifizierung Beispiel Lars Gelbke Inf03

Authentifizierung .htaccess AuthName "spezUser-dir Login“ AuthType Basic AuthLDAPURL ldap://192.168.123.6/dc=n0s,dc=de?cn require user "Robert Smith“ AuthName "Admin-dir Login" AuthLDAPURL ldap://192.168.123.6/dc=n0s,dc=de?uid require group cn=admin,ou=groups,dc=n0s,dc=de AuthName "spezAttr-Dir Login" AuthLDAPURL ldap://192.168.123.6/dc=n0s,dc=de?uid?sub require ldap-attribute ou="Sales" Lars Gelbke Inf03

Authentifizierung Lars Gelbke Inf03

Resümee Apache sehr einfach konfigurierbar aber dennoch stark anpassungsfähig LDAP benötigt viel Einarbeitungszeit, was jedoch an der Komplexität der Thematik und nicht an der Software liegt generell stellt es eine elegante und ausgereifte Lösung der Nutzeranmeldung dar Lars Gelbke Inf03

Quellen http://www.mitlinx.de/ldap/index.html Sehr gute Einführung in das Thema LDAP jedoch leider nicht vollständig http://www.zytrax.com/books/ldap/ Seite über LDAP und sehr gute einführende Beispiele http://www.apache.org/ (Apache Dokumentaion) wie bei den meisten OpenSource Projekten sehr ausführlich gehalten http://www.openldap.org/ (LDAP Dokumentation) bietet gute Hilfe bei der Grundinstallation http://de.wikipedia.org/wiki/Hauptseite gute Allgemeininformationen Lars Gelbke Inf03