Veröffentlicht in Powershell

Self-signed Certificate mit Powershell erstellen

Mit folgendem Befehl wird in der PowerShell ein Certificate erstellt.

New-SelfSignedCertificate -Type Custom -certstorelocation cert:\localmachine\my -dnsname test.domain.com -NotAfter (Get-Date).AddYears(15)

Hiermit wird dann die Variable $pw gesetzt um sie im folgenden Powershellbefehl zu nutzen.

$pw = ConvertTo-SecureString -String "changeit" -Force -AsPlainText

Nun wird mit dem folgenden Befehl das Certificate als PFX exportiert, was dann in z.B. vertrauenswürdige Stammzertifizierungsstellen zu installieren und ggf. während des installierens die Option setzen dass privater key exportierbar sein soll.

Export-PfxCertificate -cert cert:\localMachine\my\HIER FINGERPRINT DES ERSTELLTEN ZERTIFIKATS -FilePath C:\Service\Cert.pfx -Password $pw

Muss man öfter Zertifikate auf diese Art und Weise erstellen, kann man hier auch das folgende Powershellscript nutzen.
Unter (Get-Date).AddYears(5) wird 5 Jahres Certificate erstellt, es kann hier die Zahl belieb an die gewünschte Laufzeit angepasst werden

$Certname = Read-Host "Enter Certificate Name"
$Cert = New-SelfSignedCertificate -Type Custom -certstorelocation cert:\localmachine\my -dnsname $Certname -NotAfter (Get-Date).AddYears(5)
$pw = ConvertTo-SecureString -String "Pazzword" -Force -AsPlainText
$thumbprint = $Cert.Thumbprint