Hallo,
Ich möchte mich via WGET bei einer Internetseite anmelden doch die verlangt scheinbar noch ein Zertifikat. Dieses Zertifikat wird vermutlich vom Server selbst erstellt!? Wie kann ich mit wget das Zertifikat Speichern und für die weitere Session benutzen?
Du musst zwei Zertifikate unterscheiden:
1) Serverzertifikat
2) Clientzertifikat
Das Serverzertifikat authentifiziert den Server, d.h. Du als Client kannst Dir sicher sein, dass Du mit dem richtigen Server sprichst. wget überprüft bei TLS/SSL automatisch das Serverzertifikat gegen eine vordefinierte CA-Liste (die sich vermutlich mit den CAs, die Browser kennen, deckt). Du kannst nun folgendes machen, wenn das Serverzertifikat nicht von wget erkannt wird:
a) Die Serverzertifikatsüberprüfung durch wget verhindern
(--no-check-certificate) - dann prüft wget nicht mehr, ob das Server-
zertifikat gültig ist.
b) wget mitteilen, welches das Zertifikat der CA ist, die das
Serverzertifikat ausgestellt hat (d.h. den Public Key des Servers
signiert hat) - damit wget das korrekt prüfen kann. Dafür gibt's die
Option --ca-certificate=DATEI.
Das Clientzertifikat ist dagegen ein Zertifikat, das DU als CLIENT mitschickst, damit der Server DICH authentifizieren kannst (das schickst Du statt User & Passwort mit). Dazu brauchst Du zuerst ein Schlüsselpaar (Private- und Public Key) und den Public Key kannst Du Dir dann von einer CA signieren lassen, die der Server akzeptiert, damit hast Du dann Zertifkat und Private Key. Die übergibst Du wget per --private-key=DATEI und --certificate=DATEI.
Woher Du an ein vom Server akzeptiertes Zertifikat kommst, können wir Dir hier nicht sagen, weil wir nicht wissen, was für Umstände bei Dir vorhanden sind. Wenn der Server ein Client-Zertifikat haben will, dann solltest Du mit dem Serverbetreiber reden, damit er Dir erklären kannst, wie Du eins bekommst, was vom Server auch akzeptiert wird.
Viele Grüße,
Christian