Export von öffentlichen Zertifikaten aus VCF-Dateien

Hallo Fans,

bisher war es bei meinem Arbeitgeber so, dass wir in der IT-Abteilung zwar für die Erstellung der S/MIME-Zertifikate zuständig waren, die Benutzer das komplette Handling der E-Mail-Verschlüsselung jedoch selbst in die Hand nahmen.

Der große Kostenträger, mit dem wir zusammenarbeiten, stellt zum Glück alle öffentlichen Zertifikate seiner Benutzer auf einem Webserver zum Download bereit. Sogar als vorkonfigurierte VCF-Visitenkarten-Dateien, die, mit einem Editor geöffnet, so aussehen:

In der Zeile „KEY“ steht also direkt das Zertifikat. Um das zu verifizieren, kopierte ich den String ab „MII“ in eine Textdatei, speicherte diese als .CER ab und hatte das öffentliche Zertifikat des Empfängers beim Kostenträger. Yay \o/.

Da unsere Benutzer zum Glück die Ansage hatten, alle Kontakte, mit denen Sie verschlüsselt E-Mails austauschen müssen, in einem spezifischen Ordner ihres Home-Verzeichnisses zu speichern, lagen alle VCFs (und somit auch irgendwie schon die CERs) an einigermaßen einheitlichen Stellen.

Nun stand jedoch endlich die Einführung eines E-Mail-Verschlüsselungs-Gateway ins Haus, was jedoch mit allen öffentlichen Zertifikaten gefüttert werden musste. Und hier meine Vorgehensweise:

– Als erstes habe ich mir über unser Backup alle VCF-Dateien aller Benutzer per

xcopy QUELLPFAD\*.vcf ZIELPFAD /y

in ein Verzeichnis kopiert, um einen Überblick zu haben, wie viele öffentliche Zertifikate wir überhaupt haben. Mehrere Tausend.

– Anschließend kopierte ich alle VCF-Dateien in eine Einzige mit

copy *.vcf in merge.vcf

und hatte nun eine einzige, große, semikolongetrennte quasi CSV-Datei, indem ich schlicht die Dateiendung änderte:

– Die CSV dann schnell in Excel importiert und es fiel auf, dass in jeder 8. Zeile die E-Mail-Adresse des Zertifikatsinhabers, perfekt für einen Dateinamen, und in jeder 7. Zeile der String des Zertifikats steht.

– Mit der Excel-Formel „INDEX“ konnte ich dann leicht jede 7. und 8. Zeile der gesamten CSV auslesen und in andere Zellen setzen:

=INDEX(B:B;(ZEILE(B1)-1)*10+8)

– Mit der E-Mail-Adresse des Zertifikatsinhabers in Spalte C und dem String des Zertifikates in Spalte D, erstellte ich nun eine saubere semikolongetrennte CSV-Datei:

– Und erstellte zum Schluss mit

Import-Csv DATEIPFAD.csv -Delimiter ';' | ForEach-Object {"$($_.CERT)" | Set-Content -Path "$($_.MAIL).cer"}

für jede Zeile in der CSV-Datei eine .CER-Datei mit dem Namen in der Spalte MAIL und dem Inhalt in der Spalte CERT.

Voilà.

Nexus 5x Bootloader sperrt sich automatisch

Nachdem das Mainboard meines Nexus 5x den berüchtigten Hitzetod (wohl aufgrund von schlechtem Lödzinn) gestorben ist, schickte ich es zur Reparatur ein und wollte anschließend wieder LineageOS aufspielen.
Eigentlich ganz normaler Vorgang: Bootloader entsperren, alternatives Recovery flashen und das war’s eigentlich schon.

Nach dem Austausch aber erschien nach dem Entsperren des Bootloader immer wieder die Meldung SECURE BOOT: ENABLED (NO RPMB) und war anschließend wieder gesperrt. Verrückt. Hatte ich das Prozedere doch schon unzählige Male gemacht.

Nach ein paar Stunden Recherche, stieß ich dann auf diesen Reddit-Thread, in dem alles beschrieben ist.

Vielleicht hilft das ja dem ein oder anderen.

Bremi

Samstagfrüh fuhren die Freundin und ich Richtung Bremen, um zwei Freunde zu besuchen, die es vor einiger Zeit in das Saarland Norddeutschlands zog.

Bremen ist irgendwie seltsam. Das Wetter war grau, in Kneipen durfte geraucht werden, Fußgänger und Fahrradfahrer wurden nicht von Autos bedrängt, der ÖPNV war pünktlich und nicht komplett verwahrlost und es gab für eine Stadt mit 550.000 Einwohnern irgendwie viel zu wenige Autos auf den Straßen. UND ES LAG EINE FUCKING RAKETE EINFACH SO IM HAFEN RUM!

Weiterlesen

Fuckin‘ Bruges

It’s a fairytale town, isn’t it? How’s a fairytale town not somebody’s fucking thing? How can all those canals and bridges and cobbled streets and those churches, all that beautiful fucking fairytale stuff, how can that not be somebody’s fucking thing, eh?

Um 14:00 Uhr am Freitagnachmittag angekommen, im Hotel De Pauw eingecheckt, ausgepackt und dann den ca. 10-minütigen Fußweg zum Zentrum angetreten.

Weiterlesen

Mein aktuelles Setup

Hallo Fans,

vor einiger Zeit entschied ich mich, mir endlich mal wieder einen Gaming-PC zuzulegen, da Zocken mit dem Thinkpad X220 bzw. der integrierten Intel HD 3000 nicht mehr wirklich Spaß machte. Spiele wie Left4Dead oder Fallout 3 konnte ich nur in niedrigsten Auflösungen und Details spielen, was schon sehr frustrierte. Da ich schon länger mit dem Gedanken spielte, mir ein mini-ITX Gaming-PC zu kaufen, schaute ich auf’s Konto und bestellte folgendes:

Gehäuse: Fractal Design Core 500
Netzteil: Be Quiet! Straight Power 10 mit 600 Watt
Mainboard: Asus Z170I Pro Gaming
CPU: Intel Core i5 6600K
RAM: Corsair Vengeance 32 GB DDR4-2400 Kit in schwarz (CMK32GX4M2A2400C14)
Grafikkarte: Asus 1060 GTX STRIX GAMING mit 6 GB VRAM
CPU-Kühler: Noctua NH U12S
Gehäuse-Lüfter: Noctua NF-A14 PWM

Der Einbau ging recht fix und ohne größere Probleme, trotz des doch sehr geringen Platzes, vonstatten. Lediglich die sehr große Grafikkarte wurde von den Kabeln des Netzteils ca. 5 mm nach vorne gedrückt, was mir überhaupt nicht gefiel.

Auf dem Foto kann man vielleicht grob erahnen, was ich meine:

Also ein wenig recherchiert und probiert und dabei festgestellt, dass man die Halterung des Netzteils ausbauen kann und man somit das Netzteil ca. 1,5 cm weiter zur Gehäuseseite verschieben kann.
Problem dabei ist dann, dass das Netzteil lose im Gehäuse liegt, was ich jedoch mit vier Klettband-Streifen ziemlich gut lösen konnte:

Die Kabel des Netzteils berühren jetzt zwar noch die Grafikkarte, üben dabei aber keinen Druck auf diese aus:

Für eine ordentliche Verkabelung im Gehäuse führt man am besten alle Kabel in den Raum zwischen Frontblende und Gehäuse und zurrt diese mit viel Kabelbinder irgendwie am Gehäuse fest. Da muss es auch nicht wirklich ordentlich aussehen:

Installiert wurde Windows 10 Pro in der 64bit Variante auf einer 120 GB Samsung Evo 840 SSD. Spiele und sonstige Programme liegen aktuell noch auf einer zweiten 120 GB Evo 840, welche jedoch bald durch ein größeres Modell ersetzt werden muss.

Das System ist dabei im Desktop-Betrieb mit vielen Chrome-Tabs und sonstiger Software unhörbar leise. CPU und Gehäuse-Lüfter drehen bei ca. 500 bis 800 Umdrehungen pro Minute lautlos vor sich hin.

Selbst bei Spielen wie Left4Dead, Fallout 3 oder StarCraft II in höchsten Einstellungen springen dank Zero-Fan-Modus der Grafikkarte die Lüfter nicht an. Bei aufwendigeren Spielen oder der Mondlandung-Grafikdemo von NVidia sind die Lüfter der Grafikkarte jedoch hörbar, da das Gehäuse direkt rechts neben dem Mousepad auf dem Schreibtisch steht.

Bei Prime95 und gleichzeitigem FurMark liegt die Temperatur der Grafikkarte bei ca. 65°C, die CPU bei 50°C.

Datenträgerbereinigung ohne Desktopdarstellungs-Feature unter Server 2008 R2

Da auf Nicht-Terminalservern das Feature der Destopdarstellung eigentlich nichts zu suchen hat, die Server aber trotzdem (hoffentlich) Updates bekommen, ist hin un wieder eine Bereinigung durch die Datenträgerbereinigung nötig.

Um die Datenträgerbereinigung ohne Desktopdarstellungs-Feature unter Server 2008 R2 nutzen zu können, müssen nur zwei Dateien an einen anderen Ort kopiert werden.

C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe
muss nach
c:\windows\system32\

und

C:\Windows\winsxs\x86_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_de-de_b4bbf0180b1c4f68\cleanmgr.exe.mui

muss nach
c:\windows\system32\de-de\

Nun kann man ganz normal die cleanmgr.exe über „Ausführen“ öffnen. Yay.

Server 2008 R2 Terminalserver Standarddrucker und die mysteriöse Event-ID 1530

Hallo Fans,

Ich hatte vor Wochen bei einem Kunden das Problem, dass sich die verbundenen Standard-Drucker von verschiedenen (aber natürlich nicht allen) Benutzern mit Terminalserver-Profil nach Ab- und Wiederanmeldung auf den lokalen Standard-Drucker des Servers änderten.

Ca. 20% der betroffenen Benutzer meldeten zusätzlich, dass zuvor installierte Drucker nicht reproduzierbar nach Ab- und Wiederanmeldung verschwunden waren.

Im Anwendungs-Eventlog wurde parallel dazu bei der Abmeldung eines betroffenen Users die Warnung mit ID 1530 protokolliert:

Es wurde festgestellt, dass Ihre Registrierungsdatei noch von anderen Anwendungen oder Diensten verwendet wird. Die Datei wird nun entladen. Die Anwendungen oder Dienste, die Ihre Registrierungsdatei anhalten, funktionieren anschließend u. U. nicht mehr ordnungsgemäß.

DETAIL –
1 user registry handles leaked from \Registry\User\S-FAKE-USER-SID:
Process 564 (\Device\HarddiskVolume2\Windows\System32\svchost.exe) has opened key \REGISTRY\USER\S-FAKE-USER-SID\Printers\DevModePerUser

Irgendwas verhinderte also das korrekte Zurückschreiben von HKEY_CURRENT_USER in HKEY_USERS, sodass bei der nächsten Anmeldung des Benutzer falsche Werte aus HKEY_USERS geladen wurden.
Die Einstellungen unterhalb von HKCU\Software\Printers\ und HKCU\Software\Microsoft\Windows NT\CurrentVersion\, in denen die User-Druckereinstellungen gespeichert sind, sahen jedoch in einem Vorher-Nachher-Vergleich vollkommen identisch aus.

Jedoch fiel auf, dass zum Teil seit mehreren Jahren außer Betrieb genommene Drucker laut Registry immer noch verbunden sein sollten.

Die manuelle Bereinigung durch Löschung aller Einträge unterhalb der folgenden Schlüssel (falls vorhanden) brachte schließlich den Erfolg:

– HKCU\Printers\Connections
– HKCU\Printers\DevModes2
– HKCU\Printers\DevModePerUser
– HKCU\Printers\Settings

– HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Devices
– HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PrinterPorts
– HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
– HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\Devices

Anschließend musste eine noch eine Abmeldung des Users vom Terminalserver erfolgen.
Nach erneuter Anmeldung war nun kein freigegebener Drucker mehr installiert, da alle korrekt aus der Registry gelöscht worden waren.
Zuletzt konnten die freigegebeben Drucker erneut installiert und dieses Mal auch nach Ab- und Wiederanmeldung des Benutzers genutzt werden. Hurra.