Archiv für Kategorie Active Directory / LDAP
Rautiges 2009-09-01
Verfasst von Schakko unter Active Directory / LDAP, Apache, Arbeit, Musik, Rechnerstrukturen und Betriebssysteme am 1. September 2009
Durch das Konzert und Projekte in der Firma bin ich immer noch im Stress, deshalb hier mal wieder etwas Rautiges.
- Am Freitag den 4. September hat unsere Band – die Rhythmutants – unseren ersten Auftritt. Mittlerweile läuft auch alles so, wie es soll. Ich bin stark gespannt, wie das Konzert dann ablaufen wird. Die Woche ist noch geprägt von jeder Menge Bandproben.
Den letzten Samstag hat die Band + Support-Crew bis spät in die Nacht geprobt und Party gemacht. War sehr lustig – aber auch anstrengend. - Für mod_auth_ldap habe in der vergangenen Woche einen Patch geschrieben, mit dessen Hilfe es möglich ist, für einen (virtuellen) Server einmalig die LDAP-Verbindungseinstellungen zu setzen, die dann für den kompletten (virtuellen) Server gelten. Mich hat es mehr als angepestet, dass ich für jede Ressource die Zugangsdaten (AuthLDAPBindDN, AuthLDAPBindPassword und AuthLDAPURL) immer wieder setzen musste. Nun existieren die Parameter AuthLDAPGlobalURL, AuthLDAPGlobalBindDN und AuthLDAPBindPassword.
- Unser Haus-internes Kicker-Team, bestehend aus Christoph, Marc, Florian, Mandy, Hendrik und mir, hat am vergangenen Donnerstag den ersten Platz beim 1. IT-Region 38 Kicker-Cups belegt. Es war ein äußerst spannender und unterhaltsamer Abend, den unser ECW-Badabäääm-Team erfolgreich abschließen konnte. Fotos vom Turnier gibt es bei der IT Region 38, Christoph hat weiterhin noch ein kurzes Interview gegeben.
Nach dem Turnier haben Marc und ich am Klieversberg noch bis in die frühen Morgenstunden unseren grandiosen Sieg gefeiert. - Beim Studium habe ich heute den Abschlusstest für Rechnerstrukturen und Betriebssysteme abgelegt – und überraschend nicht bestanden. 2 der Tests wurden meiner Meinung nach vom System falsch ausgewertet, obwohl sie offensichtlich richtig waren, denn es mussten nur die Lösungen aus dem Buch abgeschrieben werden. Ich habe Bianca über diesen Missstand informiert und hoffe auf eine baldige Antwort – mein Tutor ist leider noch bis zum 6. September im Urlaub, so dass mir der richtige Ansprechpartner momentan nicht zur Seite steht. Ist alles sehr ärgerlich.
- Die Migration unserer virtuellen Maschinen auf den Xen-Server haben wir erfolgreich hinter uns gebracht, auch wenn es einige Probleme gab. Nun läuft aber wieder alles. Damit steht – sobald es Zeittechnisch machbar ist – der Einführung eines Build-Servers nichts mehr im Wege. Erste Tests mit CruiseControl und unserem Deployment-Tool habe in der letzten Woche bereits gemacht.
Sobald die komplette Infrastruktur steht, werde ich dazu einen ausführlichen Artikel schreiben. - Heute ist das erste Treffen zur bevorstehenden Ruderregatta am 12. und 13. September am Allersee. Ich bin sicher, dass die Ruderregatta wie jedes Jahr eine Mordsgaudi wird
How-To: Module des Apache Webservers unter Windows mit Visual Studio kompilieren und debuggen
Verfasst von Schakko unter Active Directory / LDAP, Apache, Entwicklung, Windows am 18. August 2009
Aus aktuellem Anlass musste ich mal wieder ein Apache-Modul gerade biegen. Diesmal war es mod_auth_ldap. mod_auth_ldap sollte als Modul zur Authentifizierung und Autorisierung von LDAP-Benutzern (Active Directory, eDirectory, OpenLDAP etc.) vielen Leuten ein Begriff sein.
Diese Anleitung zeigt in wenigen Schritten, wie man aus den Sourcen des Apache Webserver 2.0.63 ein Modul patcht, kompiliert und debuggt. Voraussetzung für die Kompilierung ist ein Visual Studio Express bzw. Visual C++. Ich verwende auf meinem Rechner ein (relativ altes) Visual Studio 2005 Professional.
Auf meinem Arbeitsrechner schaut es so aus, dass ich unter c:\ckl\dev\srv\web\apache\2.0.63 ($DIR_BIN) die installierte und kompilierte Version des Apache Webservers habe und unter c:\ckl\dev\projects\app\apache\2.0.63 ($DIR_SRC) die zugehörigen Sourcen liegen.
Zuerst müssen von apache.org die aktuellen Sourcen für Windows heruntergeladen und auf der Festplatte ($DIR_SRC) entpackt werden. Wenn man zusätzlich noch durch die Sourcen des Apache Webservers debuggen will, werden weiterhin die Symbols benötigt. Diese müssen in das Hauptverzeichnis des kompilierten Apache Webservers ($DIR_BIN) entpackt werden.
Die Datei $DIR_SRC\Apache.dsw enthält alle Teilprojekte des Webservers und muss mit Visual Studio geöffnet werden. Falls beim Öffnen die Frage nach einer Konvertierung der Daten kommt, kann/muss dies mit Ja beantwortet werden.
Ausgehend davon, dass wir nur mod_auth_ldap patchen wollen, muss nun im Solutions Explorer das Teilprojekt mod_auth_ldap ausgewählt und die jeweiligen Änderungen in die mod_auth_ldap.c eingetragen werden. Mit einem Rechtsklick auf mod_auth_ldap > Build wird nun das Modul erstellt. Die .so-Datei lässt sich jetzt unter $DIR_SRC\modules\experimental\[Debug|Release]\mod_auth_ldap.so ($MOD_AL) finden. Weiterhin ist die $DIR_SRC\modules\experimental\Debug\mod_auth_ldap.pdb ($DEBUG_AL) wichtig.
Der Apache muss nun als Dienst beendet werden (net stop apache2), danach muss $MOD_AL und $DEBUG_AL nach $DIR_BIN\modules kopiert (vorher Sicherung des Originals erstellen!) und Apache auf der Kommandozeile ($DIR_BIN\bin\apache.exe) gestartet werden. Dies ist nötig, damit Visual Studio sich an den Apache-Prozess hängen kann. Wird der Apache als Dienst ausgeführt, ist dies nicht ohne Weiteres möglich.
Sobald der Webserver läuft, kann im Visual Studio unter Debug > Attach to Process die Apache-Prozesse ausgewählt werden. Beim Hit eines Breakpoints in der mod_auth_ldap.c stoppt der Apache die Ausführung.
Hier die Hinweise im Überblick:
- $DIR_SRC\Apache.dsw als Projekt öffnen und nicht $DIR_SRC\modules\experimental\mod_auth_ldap.dsw, da man bei letzterem zu viele Einstellungen ändern muss.
- Apache.exe als normalen Prozess und nicht als Dienst starten, da sich sonst der Debugger nicht nutzen lässt.
- Neben der .so-Datei muss auch die zugehörige .pdb-Datei in $DIR_BIN\modules kopiert werden.
Rautiges 2009-07-14
Verfasst von Schakko unter Active Directory / LDAP, Linux, Open Source, Virtualisierung am 14. Juli 2009
Momentan vertreibe ich mir die Zeit mit der Konfiguration des Zotac ION Boards, deshalb hier eine kurze Übersicht über die letzte Woche
- Empfehlenswerte Websites sind www.faql.de (behandelt Themen zur deutschen Sprache, unter anderem wird erklärt, dass es das Wort “Stati” als Plural von “Status” nicht existiert) und www.encyclopediadramatica.com (über Alltags-Internetsprache).
- Florian kämpft momentan mit der Konfiguration von MPD und Icecast2. Wir (und andere) haben das Problem, dass mit WinAMP und VLC der OGG-Stream nach Ende eines Tracks oder Wechsel während des Abspielens eines Tracks der komplette Stream abbricht. Sehr ominöses Problem, Foren-Threads deuten darauf hin, dass mit dem Wechsel der OGG-Header zu tun hat.
- Ich habe die Woche einen Patch für vboxtool eingereicht, so dass die richtigen Maschinen gestartet werden, falls der Benutzer, der vboxtool aufruft, nicht identisch ist, mit dem ggw. Benutzer. Mehr Infos dazu gibt es im Firmen-Entwickler-Blog.
- Im Trac von VirtualBox habe ich außerdem einen Bug-Eintrag hinterlassen, da bei mir hin und wieder die SSH-Netzwerkverbindung abbricht.
- Auf ganzer Linie kämpfe ich mit dem Zotac ION-Board:
- Die Auflösung auf meinem Fernseher wird falsch dargestellt. Es gibt unsichtbare Bereiche oberhalb und unterhalb des sichtbaren Bereichs. Das Panning funktioniert nicht, ebenso diverse X-Konfigurationseinstellungen. Meine Vermutung ist, dass das DVI-Signal vom HDMI-Eingang des Fernsehers falsch interpretiert wird.
- Bei Windows Server 2003, das in einer VirtualBox-VM ist, lassen sich keine Rollen mehr hinzufügen. Gestern wollte ich WINS und DHCP nachinstallieren – dies schlug aber aus unerfindlichen Gründen fehl. Ich habe mir die Install-Logs unter c:\windows\debug\ angeschaut, konnte aber nicht wirklich die Fehlerursache zu identifizieren. Es läuft wohl darauf hinaus, dass ich Windows Server 2003 neu installieren muss.
- Winbind und Samba laufen noch nicht rund. Die Authentifizierung von Winbind am Active Directory über Kerberos funktioniert hingegen schon.
- Audio-Ausgabe über HDMI, Video-Beschleunigung etc. konnte ich noch nicht testen, da o.g. Punkte erst einmal zu fixen sind.
MLG: Präsenzklausur bestanden / Spielzeug bestellt / Kernel-Patch
Verfasst von Schakko unter Active Directory / LDAP, Linux, Mathematisch-logische Grundlagen der Informatik, Webdesign & Web-Ergonomie, ckl-net am 24. Juni 2009
Ich wurde bereits heute darüber informiert, dass ich das Modul Mathematisch-logische Grundlagen mit einer Note von 1.0 bestanden habe. In der Präsenzklausur habe ich 83% erreicht – ich vermute, dass der Punktabzug durch die Vollständige Induktion und der ersten Aufgabe zustande kommt – durch meine Bonuspunkte konnte ich die fehlenden Prozent zur 1.0 aber ausgleichen. Somit ist also das dritte Modul bestanden. Für mich folgt als nächstes Modul Web-Design und -Ergonomie, dass ich hoffentlich zum nächsten außerordentlichen Klausurtermin am 14.08.2009 beenden kann.
Mein heutiger Tag war relativ hektisch: Heute Vormittag war ich in Osnabrück und habe mir das Kolloquium von Sarah angeschaut, danach ging es in die Firma, dann zum Training und schließlich zur Bandprobe.
Als “Belohnung” für die bestandene Klausur – von der ich während des Kolloquiums per Email (es lebe Active Sync) erfuhr – habe ich mir heute Abend neue Hardware für das ckl-net bestellt, da mein “altes” Embedded Board mittlerweile nicht mehr meinen Zwecken genügt. Somit habe ich dann ein Zotac ION ITX B anstatt des von mir erst angedachten MSI IM 945GSE bestellt, zuzüglich fanless Netzteil von Fortron und Bluetooth Tastatur. Ich freue mich wieder auf’s Frickeln
Die letzten beiden Abende verbrachte ich damit, auf meine Wii Homebrew Software zum Laufen zu bringen. War an sich auch schnell gemacht. Allerdings hatte ich das Problem, dass der SD-Kartenleser meines alten Notebooks (Tagra Vision 811) unter Ubuntu zwar erkannt wurde, ich aber keine Daten darauf schreiben konnte. Mit einem externen Kartenleser funktionierte das Schreiben sowohl unter Windows als auch unter Linux. Für mich stand also fest, dass meine SD-Karte völlig funktionsfähig war.
Theoretisch hätte ich das Problem dabei bewenden und mir meine Homebrew über den externen Kartenleser auf die Karte kopieren lassen können. Aber wie das so ist: Man möchte ja das Problem auch beheben, um ein Erfolgserlebnis zu haben.
Deshalb habe ich mir die letzten Sourcen des Linux Kernels geschnappt und die im SCSI-Treiber – das SCSI-Subsystems ist für das Lesen von SD-Medien zuständig – verankerten Überprüfungen, ob ein Medium schreibgeschützt ist, deaktiviert.
Nach der Kompilierung des Kernels funktionierte auch das Schreiben auf die SD-Karte.
Und zu guter letzt noch eine Werbung in eigener Sache: Christoph hat heute das Active Directory Plugin für Wordpress veröffentlicht. Klasse Sache und funktioniert sogar
Erstellen eines Active Directory-Benutzers mit Nur-Leserechten
Verfasst von Schakko unter Active Directory / LDAP, Sicherheit, Windows am 8. Mai 2009
Vor einigen Tagen berichtete ich über das Active Directory-Authentifizierungsproblem bei SMTP-Benutzern auf unserer Astaro-Firewall. Nachdem der Support von Astaro sich die Logs auf der Firewall näher angeschaut hatte, bekamen wir folgenden Tip: Der von uns vorgesehene Benutzer besaß im Active Directory zu wenig Rechte.
Normalerweise wird in Applikationen, z.B. bei mod_ldap für Apache, eine Suchanfrage für einen Benutzer gestartet, in dem überprüft wird, ob eine Gruppe oder eine OU den Benutzer enthält. Außerdem geschieht oft das Binding über den zu autorisierenden Benutzer.
Die Software der Astaro-Firewall geht einen etwas anderen Weg: Der Benutzer wird am Active Directory authentifiziert, danach wird geschaut, ob der Benutzer im Attribut memberOf Mitglied der Gruppe ist.
Unser obiger Benutzer – der Einfachheit halber LDAP-Account genannt – war als normaler Domänen-Benutzer im Active Directory eingetragen und konnte somit Anfragen auf OUs oder Gruppen stellen, aber eben nicht das memberOf-Attribut von speziellen Benutzern auslesen.
Mit Hilfe der Aussage des Supports wiesen wir dem LDAP-Account zum Test im Active Directory die Gruppe “Domänen-Administratoren” zu und siehe da: Die Authentifizierung beim SMTP-Relaying funktioniert.
Nun wollten wir aus Sicherheitsgründen aber natürlich nicht, dass der Benutzer weiterhin mit der Rolle des Domänen-Administrators in der Domäne agierte. Der LDAP-Account sollte nur lesend auf die Attribute von Benutzern zugreifen können.
Damit dieses Vorhaben gelingt, muss die MMC ADSI Edit aufgerufen werden. Falls diese nicht installiert ist, muss sie von der Windows Server 2000/2003-CD aus dem Verzeichnis Support Tools nachinstalliert werden.
Nun wählt man die OU aus, in der dem LDAP-Account Leserechte gewährt werden sollen.

Auswahl der OU
Danach muss im Tab Sicherheit mit einem Klick auf Hinzufügen der LDAP-Account dieser OU hinzugefügt werden.

Sicherheitseinstellungen für diese OU

Auswahl des Benutzers
Der LDAP-Account erscheint nun in der Liste der Gruppen- oder Benutzernamen.

Benutzer, nachdem dieser der OU zugewiesen wurde
Mit einem Klick auf Erweitert, Auswahl des LDAP-Accounts und nochmaligen Klick auf Bearbeiten wird dem Benutzer das Recht Berechtigungen lesen entzogen. Weiterhin war das Recht Inhalt auflisten für unsere Anforderungen nicht nötig.

Erweiterte Sicherheitseinstellungen

Spezielle Berechtigungen setzen
Nach diesen Änderungen konnte nun der Benutzer LDAP-Account auf das memberOf-Attribut zugreifen.
ADUaCET released
Verfasst von Schakko unter Active Directory / LDAP, C#, Publikationen am 19. März 2009
A few minutes ago I released ADUaCET (Active Directory User and Computer Employee Tab) on sourceforge.net.
With ADUaCET the Microsoft Active Directory User and Computer MMC will be extended so that you are able store the image and employee number of users in Active Directory.
Storing user photos in Active Directory
Verfasst von Schakko unter Active Directory / LDAP, C# am 17. März 2009
One year ago I talked with the attorney of my confidence about a small tool which should extend the Active Directory Users and Computers MMC for storing and viewing images of users. This task passed out of my mind because of money-making work
Today I extended my TwitterKicker JavaScript/jQuery application and considered about viewing the images of the players. As a pragmatic programmer I was not satisfied by the idea of storing the images manually and assign every image to a user by hand. It would be nice to ask a small webservice by the user image – the user is identified by his or her account name.
So i fired up my Visual Studio – It is a shame that no one ever developed a working image-to-Active-Directory-tool – and got the point: After some time I implemented a standalone proof-of-concept with C#. Tomorrow I will try to integrate the code into MMC snap-in extension. After that I will publish the source and binaries on sourceforge.net.
Got frickelfactor +1.
Gruppenrichtlinien
Verfasst von Schakko unter Active Directory / LDAP, Windows am 20. Juni 2008
Ich möchte hier mal ganz kurz auf zwei Seiten hinweisen, die ganz brauchbare Informationen zum Thema Active Directory und Exchange haben.
Zum einen behandelt http://www.gruppenrichtlinien.de/ -wie die URL schon sagt- das Thema Gruppenrichtlinien & Active Directory. Zum anderen muss einfach http://www.msxfaq.de/ erwähnt werden. Die Seite ist bei Exchange-Problemen die erste Anlaufstelle.
Fixe Idee: Wie man die Firefox-Einstellungen per Gruppenrichtlinie verteilt
Verfasst von Schakko unter Active Directory / LDAP, Entwicklung am 3. Juni 2008
Christoph und ich hatten uns heute Mittag über die Erstellung von MSI-Paketen unterhalten – ich hatte vor einigen Tagen unsere Fonts per MSI und Active Directory deployt.
Nun kamen wir wieder einmal auf das Thema “Deployment von Firefox” und Setzen der Einstellungen.
Mein erster Gedanke war, ein eigenes XPCOM-Modul zu schreiben. XPCOM ist wie DCOM auch ein Komponentenmodell und wird von der Mozilla-Truppe voran getrieben. Die XPCOM-Module werden in C++ entwickelt und sind so plattformunabhängig.
Das fiktive XPCOM-Modul würde nun die Daten aus der Registry laden und dementsprechend alle Einstellungen des Firefoxes setzen.
So weit, so gut. Es geht aber auch einfacher: Nach einer kurzen Recherche habe ich heraus gefunden, dass Firefox ab der Version 1.5 das XPCOM-Interface nsIWindowRegKey bereitstellt. Unter http://developer.mozilla.org/en/docs/Accessing_the_Windows_Registry_Using_XPCOM findet sich dazu ein ausführlicher Artikel.
Über das Interface nsIPrefService lassen sich Einstellungen des Firefoxes lesen und schreiben, siehe dazu auch http://developer.mozilla.org/en/docs/nsIPrefService.
Das weitere Vorgehen ist eigentlich trivial. Anstatt eines in C++ geschriebenes XPCOM-Modul wird einfach eine Firefox-Extension in JavaScript geschrieben.
Diese lädt beim Start alle Einstellungen aus z.B. HKCU\Software\Mozilla\Firefox, überprüft die Typen (DWORD, Boolean, String) und setzt über nsIPrefService die Einstellungen.
Damit die Einstellungen über das AD verteilt werden können, ist etwas Handarbeit nötig: eine neue .adm-Datei hält die definierten Einstellungen vor. Mit dieser Vorlage lassen sich alle Einstellungen ganz einfach per Active Directory verteilen.
Mal sehen, ob einer aus unserer Truppe dafür irgendwann mal Zeit hat.
Automatisches Installieren von Fonts über das Active Directory
Verfasst von Schakko unter Active Directory / LDAP, Arbeit, Dies und das, Wohnung am 9. Mai 2008
Da wir bei uns für Designzwecke recht viele Schriftarten einsetzen, müssen diese immer manuell nachinstalliert werden. Um uns Arbeit und Zeit zu sparen habe ich deswegen ein kleines MSI-Paket nach der Anleitung gebaut, die unter http://www.gruppenrichtlinien.de/index.html?/msi/Beispiel_Fonts_MSI.htm zu finden ist.
Dieses wird automatisch durch die Gruppenrichtlinien des Active Directories deployt.
WinInstall LE 2003 gibt es übrigens unter ftp://ftp.simtel.net/pub/simtelnet/win95/install/wininstallle.exe zum Download. Nach dem Aufkauf durch Veritas gibt es das Tool leider nicht mehr kostenlos auf der Homepage zum Download.
Sag was!