Neues Zertifikat als PFX (mit private key) für Windows Server aus signed CER erstellen

Zertifikate sind eigentlich vom Ablaufverständnis her einfach – aus privatem Teil und öffentlichem Teil kann man ein PFX erzeugen, das sich für dem schnellen Import in Windows-Server eignet. Der Weg über einen bestehenden PK ist deutlich einfacher und schneller als ein neues CSR mit neuem PK und ein neuer Signierungsvorgang.

(Wenn möglich sollte aber natürlich ein neuer Key bevorzugt werden.)

Wie befreie ich den privaten Schlüssel (private Key, PPK) aus einer alten *.PFX Datei?

openssl pkcs12 -in EXAMPLE.pfx -nocerts -out EXAMPLE.key

Nach der Kennworteingabe für die Extraktion und der Kennworteingabe für die verschlüsselte Ablage des Keys liegt die EXAMPLE.key Datei vor.

Wie erstelle ich aus privatem Schlüssel (*.key) und neuem Zertifikat (*.cer) ein neues PFX (PKCS #12 Archivdatei)?

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-CERTIFICATE.cer

Wenn die CA mehrere Intermediate Zertifikate und/oder ihre eigene Root-CA Zertifikate als eigene Dateien mitliefert, kann man diese mit mehreren -in Parametern in das PFX auch gleich mit einpacken (die Kette sollte in der richtigen Reihenfolge, angefangen mit dem Root-CA-Zertifikat angegeben werden):

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-RootCA.cer -in EXAMPLE-CA.crt -in EXAMPLE-CERTIFICATE.crt

Alternativ kann auch eine CA-Kette in einer Datei mit dem Parameter -certfile verwendet werden:

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-CERTIFICATE.crt -certfile CA-CHAIN.cer

Firefox: Vorgeschlagene Formulardaten („Formular Autocomplete“) einzeln löschen

Wie entfernt man einen einzelnen Eintrag aus der auto-Vervollständigen Liste für Formulardaten in Firefox? Manchmal ist es nur EIN EINZELNER DOOFER EINTRAG den man ganz dringend loswerden möchte. Der „Entf“ Trick wie bei Office-Programmen funktioniert leider nicht.

Man kann natürlich schnell alle Formulardaten auf einmal loswerden. Das geht via STRG+SHIFT+ENTF und der Auswahl „Eingegebene Suchbegriffe % Formulardaten.

Lösung

In dem Formular mit dem Cursor den „ungewollten“ Eintrag markieren und SHIFT+ENTF löschen. Ich habe nach diesem Hint grade viel zu lange gesucht 🤦‍♀️

Shift+Entf

Veeam Backup for Microsoft 365: „Cannot change WebPart ExportMode to ‘All’. WebPart will be skipped“ Warnung bei SharePoint Sites

Bei der Sicherung von SharePoint-Sites für eine Organisation, die die moderne App-Authentifizierung nutzt, wird die folgende Warnung im Veeam Backup log angezeigt:

10.10.2010 01:01:01 :: Processing site <URL> finished with warning: Cannot change web part export mode to ‘All’, because custom scripting is disabled for site: <URL>. Web part will be skipped (web part ID: <GUID>, page: <URL>/pendingreq.aspx).

Um Webparts (Funktionsblöcke wie Tabellen, Bilder oder Remote-Inhalte) mit der modernen „App-Only“ Authentifizierung zu sichern, muss die Eigenschaft „Exportmodus“ des Webparts von „„Keine“ auf „Alle“ gesetzt werden.

Manchmal ist die Änderung der Eigenschaft durch den Admin verboten worden, sodass Veeam Backup for Microsoft 365 das nicht selber ändern kann; dann passierte diese Warnung.

Lösung

Man muss die Eigenschafte manuell (als Administrator) an der PowerShell setzen:

# SharePoint Online Modul installieren (falls noch nicht vorhanden)
Install-Module -Name Microsoft.Online.SharePoint.PowerShell

# Mit SPO verbinden
# -- Ohne MFA
$cred = Get-Credential
Connect-SPOService -Url https://<TENANTNAME>-admin.sharepoint.com -Credential $cred

# -- Mit MFA
Connect-SPOService -Url https://<TENANTNAME>-admin.sharepoint.com

# Custom Script in dieser SharePoint Site zulassen
Get-SPOSite -Identity https://<TENANTNAME>.sharepoint.com/sites/<SITENAME> | Set-SPOSite -DenyAddAndCustomizePages 0

# Custom Script in ALLEN Sites auf einmal erlauben
Get-SPOSite | Set-SPOSite -DenyAddAndCustomizePages 0

Ein paar „Cloud-Minuten“ später, meint ein paar Stunden Realzeit, funktioniert das Backup wieder. Natürlich gibt es ein paar Security Considerations wenn man Custom-Scripts zulässt.

Bonus-Tipp:

Um eine übersichtliche Auflistung der fehlgeschlagenen Sites im Veeam-Job zu erhalten, folgenden einzeiler in der „Veeam Backup for Microsoft 365 365 PowerShell“ ausführen:

(Get-VBOJob | ? LastStatus -eq Warning | Get-VBOJobSession | select -First 1).Log | ? Title -like '*custom scripting*' |ft Title

Update für Fehler „401“

Die PowerShell-Verbindung gibt möglicherweise hartnäckig den Fehler „401“ aus:

PS C:\> Connect-SPOService -Url https://<TENANTNAME>-admin.sharepoint.com
Connect-SPOService : Der Remoteserver hat einen Fehler zurückgegeben: (401) Nicht autorisiert.
In Zeile:1 Zeichen:1
+ Connect-SPOService -Url https://<TENANTNAME>-admin.sharepoint.com
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Connect-SPOService], WebException
    + FullyQualifiedErrorId : System.Net.WebException,Microsoft.Online.SharePoint.PowerShell.ConnectSPOService

Das liegt dann daran, das der Administrator der das gerade ausführt nicht Mitglied der Rolle „SharePoint Administrator“ ist. Die Rolle muss im Microsoft 365 Admin Center nur schnell dazugeklickt werden, nach der nächsten Anmeldung geht das sofort wieder.

Lancom reverse DNS via DNS-Weiterleitungen einrichten

Eine DNS-Weiterleitung für bestimmte Zonen ist in Lancom-Geräten schnell eingerichtet und wird naturgemäß für lokale (interne) AD-Zonen genutzt. Leider übersieht man als schneller Admin gerne, das eine Weiterleitung für *.EXAMPLE.COM nicht die reverse Zone für die Hosts beinhaltet.

Dann dauern reverse Auflösungen sehr lange, funktionieren nicht und sorgen für längere Wartezeiten.

Lösung

Damit die Rückwärts-Adressauflösung ebenfalls funktioniert, muss man die reversen Adresszonen ebenfalls hinzufügen. Natürlich alle einzeln, denn eine Wildcard endet an einem Punkt.

Das geht unter IPv4 > DNS > Weiterleitungen > … bearbeiten

Beispiele für private 192.168. Netze:

*.2.168.192.in-addr.arpa     # Für die Zone 192.168.2.*
*.42.168.192.in-addr.arpa     # Für die Zone 192.168.42.*

Windows Update Fehler 8007000e (Windows Server)

Lösung

0x8007000e (E_OUTOFMEMORY) meint wörtlich „Es steht nicht genügend Speicherplatz zur Verfügung, um diesen Vorgang abzuschließen“ (Not enough memory resources are available to complete this operation).

Mit „Speicher“ ist hier nicht zwingend die Festplatte gemeint, das kann auch RAM, GDI-Speicher oder eine zu kleine Pagefile sein. Oft passiert das auf Servern wo der RAM vollgelaufen ist.

  1. Systemlaufwerk prüfen. Auf %SystemDrive% sollten etwa 12GiB Platz frei sein.
  2. Arbeitsspeicher prüfen. Für ein Windows-Update sollten ~4GiB Platz frei sein.
  3. Dritt-Tools (Virenscanner, Firewall, Dateisystemfilter (DropBox, HiDrive, …) entfernen/deaktivieren

Sobald die Maschine genug RAM und Platz hat läuft das Upate wieder durch. In seltenen Fällen mussten wir auch mal Windows Update zurücksetzen (Dienste beenden, SoftwareDistribution löschen) und neu starten.