
Als professioneller Screenshot für Leute, die noch immer ohne Mastodon zu leben versuchen 😉
ugg.li Schnelle Hilfe für schnelle Admins
Nicht immer schön, aber effektiv. Schnelle Hilfe für schnelle Admins.
Nach und nach wird LDAPS anstelle des unverschlüsselten LDAP auf Windows Domänen Controllern (DCs) eingeführt. Das ist auch sinnvollso. Das einzige was der Admin dazu tun muss, ist ein passendes (Domänen-) Zertifikat zu installieren. Das funktioniert auch bestens mit Wildcard-Zertifikaten, sofern man eine Domäne mit „Routingfähigem“ FQDN verwendet.
Wann man nun ein Zertifikat hinzugefügt hat, wie testet man das denn auf die schnelle? Natürlich hat Microsoft kein Werkzeug dafür an Boad, aber OpenSSL to the rescue.
Man verbinde sich einfach mit dem openSSL-Client mit dem LDAPS-Port
openssl.exe s_client -connect DC.EXMAPLE.COM:636
und warte auf den CONNECTED
output. Wenn es den gibt, war die Verbindung erfolgreich.
Die Ausgabe des TLS-Tests sieht dann (in etwa) so aus:
C:\>openssl.exe s_client -connect DC.EXAMPLE.COM:636
Connecting to <IP>
CONNECTED(000001F8)
depth=1 C=US, O=DigiCert Inc, OU=www.digicert.com, CN=RapidSSL TLS RSA CA G1
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN=*.EXAMPLE.COM
verify return:1
---
Certificate chain
0 s:CN=*.EXAMPLE.COM
i:C=US, O=DigiCert Inc, OU=www.digicert.com, CN=RapidSSL TLS RSA CA G1
a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256
v:NotBefore: Jan 01 00:00:00 2026 GMT; NotAfter: Jun 29 23:59:59 2096 GMT
1 s:C=US, O=DigiCert Inc, OU=www.digicert.com, CN=RapidSSL TLS RSA CA G1
i:C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root G2
a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256
v:NotBefore: Nov 2 12:24:33 2017 GMT; NotAfter: Nov 2 12:24:33 2029 GMT
---
Server certificate
-----BEGIN CERTIFICATE-----
ETZGLDCCBRSgAwIBAgIQAp8gNFzPD8DDuYunngMxzzANBgkqhkiG9w0BAQsFADBg
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
[...]
Obwohl wir oft und sehr gerne Gäste im CCC-Umfeld sind, wissen wir auch nicht was mit Fefe und Fefe’s Blog los ist. Bitte nicht mehr nachfragen.
Wir hoffen, es geht ihm gut und wünsche alles Beste! Wir können es auch kaum erwarten, neues zu erfahren.
Update: Danke an die Kommentierenden für die (erfreulichen) Nachrichten zu Fefe. Damit (also mit den Kommentaren) hatten wir nicht gerechnet ♥️
Gute Genesung @fefe 💪
Die Freidrehenden KI-Übersetzungen bei Microsoft werden immer bedrohlicher 😂
Als Windows-Administrator wird man mit Aufgaben konfrontiert, die recht einfach klingen. Bis man sie sehr oft von Hand ausführen muss.
Ein Beispiel aus der Praxis:
„Erstelle eine neue GPO und verlinke diese auf alle OUs, die ‚Würstchen‘ heißen, unterhalb von OU=Speisekarte“.
Oder anders formuliert: Verknüpfe eine Gruppenrichtlinie auf alle 3673409 OUs mit diesem Namen.
Das ist in der Gruppenrichtlinienverwaltung technisch gar kein Problem; sofern die Anzahl übersichtlich ist (und die OUs nicht über mehrere Ebenen verteil sind). Man klickt sich durch die AD-Verwaltungskonsole, öffnet Eigenschaften, fügt die GPO hinzu … und wiederholt das sehr oft.
Das kann man glücklicherweise ganz gut mit der PowerShell automatisieren.
Dieser Schnippsel durchsucht mit -like
alle OUs unterhalb eines angegebenen DN nach einem bestimmten Begriff und verlinkt automatisch die gewünschte GPO dazu.
$BaseDN = "OU=UNTERSTRUKTUR,DC=EXAMPLE,DC=COM"
$Suchbegriff = "WÜRSTCHEN"
$GPO = Get-Gpo -Name "NEUE_GRUPPENRICHLINIE"
Get-ADOrganizationalUnit -SearchBase $BaseDN -Filter * -SearchScope Subtree |
Where-Object { $_.Name -like "*$Suchbegriff*" } |
ForEach-Object {
New-GPLink -Guid $GPO.id -Target $_.DistinguishedName -LinkEnabled Yes
}
Mit diesen Zeilen wird aus ermüdender Klickarbeit eine schnelle Aktion.