Die Gültigkeit von Zertifikaten kann entweder per OCSP (Online Certificate Status Protocol) oder klassisch per Sperrliste (CRL) geprüft werden. Die Basis Sperrliste einer Microsoft Windows Zertifizierungsstelle hat in der Standardeinstellung eine Gültigkeit von 7 Tagen. In manchen Fällen ist dies zu lang, denn es kann dazu kommen, dass ein Zertifikat auch nach dem Sperren noch bis zu 7 Tage lang als gültig angesehen wird.
Konkret ist dieses Problem bei einer VPN Lösung aufgetreten, welche Zertifikate für die Authentifizierung von Computern nutzt. Diese VPN Lösung unterstützt nur die Basis Sperrliste und keine Delta Sperrlisten. Würde die VPN Lösung Delta Sperrlisten oder OCSP unterstützen, wäre eine Anpassung der Gültigkeit der Basis Sperrliste unnötig.
Ändern der Gültigkeit der Sperrliste
Für die Administration von Windows Zertifizierungsstellen eignet sich das PowerShell Modul PSPKI besonders gut. Das Modul enthält zahlreiche CMDLets für die Administration einer CA und das Verwalten / Ausstellen von Zertifikaten. Ich installiere PSPKI daher meistens direkt auf der Zertifizierungsstelle. PSPKI kann hier runtergeladen werden:
Zur Installation genügt den Ordner PSPKI aus dem GitHub Repository in das Verzeichnis „C:\Windows\System32\WindowsPowerShell\v1.0\Modules“ zu kopieren:
In der PowerShell lässt sich jetzt das Modul mit dem folgenden Befehl importieren:
import-module pspki
Mit dem folgenden Befehl kann die aktuelle Gültigkeit der Sperrlisten geprüft werden:
Get-CertificationAuthority -ComputerName COMPUTERNAME | Get-CRLValidityPeriod
Um die Gültigkeit der Basis Sperrliste auf einen Tag und die Gültigkeit der Delta Sperrliste auf 6 Stunden zu verringern, kann der folgende Befehl genutzt werden:
Get-CertificationAuthority -ComputerName COMPUTERNAME | Set-CRLValidityPeriod -BaseCRL "1 Days" -DeltaCRL "6 Hours"
Damit die Änderung angewendet wird, muss die Zertifizierungsstelle einmal neu gestartet werden:
Get-CertificationAuthority -ComputerName COMPUTERNAME | Restart-CertificationAuthority
Sobald die Sperrlisten veröffentlicht sind, ist die Basissperrliste nur noch einen Tag und die Delta Sperrliste nur noch 6 Stunden gültig.
Hinweis: Diese Einstellung kann in großen Umgebungen mit vielen Einträgen in der Sperrliste allerdings auch zu Problemen führen. Systeme laden die Sperrlisten jetzt deutlich häufiger runter, was bei großen Sperrlisten und vielen Systemen zu hoher Last führen kann. Sollten allerdings nur wenige Zertifikate gesperrt werden, etwa bei Verlust oder Diebstahl eines Rechners, dann dürfte die Verringerung der Gültigkeit der Sperrlisten nur wenig Auswirkungen haben.