Ich bin mir nicht wirklich sicher, was die wesentlichen Unterschiede zwischen den einzelnen Zertifikaten sind, aber kann OpenSSH unter Windows Server 2019 Client-Zertifikate verwenden, die über PowerShell erstellt wurden (*.pfx,.cer) im Gegensatz zur Verwendung von öffentlichen/privaten Schlüsselpaaren (.pub, *.) per ssh-keygen generiert?
Antwort1
Ja und nein, aber meistens nein.
Der OpenSSH-Client versteht weder das X.509-Zertifikatformat noch das PKCS#12 (.pfx)-Private-Key-Format und kann auch nicht auf in Windows CAPI gespeicherte Daten zugreifen. Er kann denSchlüsselselbst, aber sie müssen zuerst in das entsprechende Format extrahiert werden.
Ebenso können Sie mit dem OpenSSH-Server keine X.509-Zertifikate in authorized_keys einfügen (dafür müssten Sie die gleiche öffentliche Schlüsselextraktion durchführen) und er hat auch absolut keine Ahnung, wie er diese gegenüber Stammzertifizierungsstellen verifizieren soll.
Es gibt einen Fork von Drittanbietern, „PKIX-SSH“ von Roumen Petrov, der die direkte Verwendung von X.509-Zertifikaten unterstützt (aber ich glaube nicht, dass er das Laden von .pfx- oder CAPI-Privatschlüsseln unterstützt; höchstwahrscheinlich müssen Sie sie noch in das PEM- oder PKCS#8-Format konvertieren).
Unter Windows bevorzugen Sie jedoch wahrscheinlich PuTTY-CAC (einen weit verbreiteten Fork von PuTTY), das in Windows CAPI gespeicherte Zertifikate unterstützt.
Ich taterwartenMicrosoft wollte seinen OpenSSH-Port anpassen, um Zertifikate und Schlüssel in CAPI verwenden zu können, hat sich aber stattdessen für den herkömmlichen SSH-Agent entschieden ...