Kann cURL einen Schlüsselbund für Client-Zertifikate verwenden?

976
Coderer

Ich verwende cURL zum Abrufen von einem HTTPS-Speicherort, für den ein Client-Zertifikat erforderlich ist. Ich habe mein .curlrcSetup eingerichtet, um cURL mitzuteilen, wo es ist, aber ich möchte meinen unverschlüsselten privaten Schlüssel nicht einfach herumliegen lassen. Bei jeder Verwendung von cURL werden Sie daher aufgefordert, das Zertifikatkennwort einzugeben.

Viele andere Dienstprogramme hängen an einem plattformspezifischen Schlüsselbund (dem nativen in OSX, Gnome-Schlüsselbund unter Linux usw.). Gibt es einen solchen Haken für cURL? Gibt es eine andere Möglichkeit, dass cURL meinen privaten Schlüssel pro Shell / pro Sitzung erhält, anstatt jedes Mal eine Aufforderung zu erhalten?

4
Unter Linux können Sie die Schlüssel in einem * verschlüsselten Dateisystem * wie eCryptFS aufbewahren. grawity vor 12 Jahren 0

1 Antwort auf die Frage

2
grawity

Auf private Schlüssel, die in GNOME Keyring gespeichert sind ( nicht Schlüsselkennwörter, sondern die Schlüssel selbst), kann über eine standardmäßige PKCS # 11-Schnittstelle zugegriffen werden, vorzugsweise über das p11-kit (pkcs11-Modul libp11-kit.so). Dies kann aus verschiedenen Programmen verwendet werden.

Leider unterstützt curl leider keine PKCS11-Module, obwohl die OpenSSL-Bibliothek selbst sie verwenden kann. Das könnte etwas mit Distributionen zu tun haben, die stattdessen GnuTLS oder NSS verwenden.

Nun, kacke. Gibt es ein anderes Kommandozeilen-Abruf-Dienstprogramm, das sich gut mit Schlüsselringen abspielen lässt? Ich bin nicht mit cURL verheiratet, ich muss nur eine Datei in einem Skript von HTTPS abholen, von einer Site, die Clientauthentifizierung erfordert. Coderer vor 12 Jahren 0