![]() |
Setup.exe signieren mit Stamm-CA
Vorab:
Ich habe mir dieses Video von generic angesehen: ![]() Darin beschreibt er, wie man sich lokal ein Zertifikat erzeugt und das auf seine Setup.exe anwendet. Er reißt auch kurz an, dass man das mit dem Stammzertifikat der Firmen-Domäne machen könnte. Jetzt wäre meine Frage: Wie geht das? Unter Systemsteuerung -> Benutzerzertifikate verwalten -> Zertifkate - Aktueller Benutzer -> Vertrauenswürdige Stammzertifikate -> Zertifikate habe ich eine Auflistung ganz vieler Zertifikate. Darunter ist auch eines das Ausgestellt für und Ausgestellt von "Firmenname-rootCA" als Eintrag hat (ja, Firmenname ist jetzt hier nur der Platzhalter). Ist dies das im Video angesprochene CA-Ding und wie kann ich damit selbsterzeugte Setup.exe-Dateien signieren, damit die hier in der Windows-Domäne als signiert angezeigt werden? Ich kann das nur als CER- oder P7B-Datei exportieren. PFX ist bei mir disabled. |
AW: Setup.exe signieren mit Stamm-CA
Die CA ist notwendig, damit die Signaturen überprüft werden können.
Das Entwickler-Zertifikat wurde ja von der CA ausgestellt. Daher ist es auch notwendig, dass überall wo die Signatur überprüft wird, auch die CA im Zertifikatsspeicher ist. Wenn du eine Domäne betreibst, nimm die CA von der Domäne und erzeuge dir dort ein Zertifikat. Die CA ist auf allen Rechner bekannt, dann hast du kein Ärger mit dem Verteilen der CA-Zertifikate. Wenn nicht kannst du per GPO das Zertifikat verteilen. Quelle: ![]() Siehe - ANSTELLE VON PUNKT 1) in der Webseite nimm bitte DEIN Zertifikat. NICHTS RUNTERLADEN!
|
AW: Setup.exe signieren mit Stamm-CA
Aha, verstehe. Vielen Dank. Als ersten Schritt dann also per CMD:
Code:
Das hat schon mal gut funktioniert. MyCA.cer und MyCA.pvk wurden erzeugt.
makecert -r -pe -n "CN=Firmenname-rootCA" -ss CA -sr CurrentUser -a sha256 -cy authority -sky signature -sv "D:\cert\MyCA.pvk" "D:\cert\MyCA.cer"
Ich kämpf mich mal weiter durch. |
AW: Setup.exe signieren mit Stamm-CA
Das habe ich alles gemacht. Mit Ausgaben aus der Konsole.
Code:
Die damit behandelte Setup.exe ist auch ca. 6 KB größer, als eine Kopie davon ohne Signatur.
makecert -r -pe -n "CN=Firmenname-rootCA" -ss CA -sr CurrentUser -a sha256 -cy authority -sky signature -sv "D:\cert\MyCA.pvk" "D:\cert\MyCA.cer"
Succeeded makecert -pe -n "CN=Firmenname-rootCA" -a sha256 -cy end -sky signature -ic "D:\cert\MyCA.cer" -iv "D:\cert\MyCA.pvk" -sv "D:\cert\MySPC.pvk" "D:\cert\MySPC.cer" Succeeded ::pvk2pfx ist bei mir nicht in PATH, darum das dahinwechseln per cd cd C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64 pvk2pfx.exe -pvk "D:\cert\MySPC.pvk" -spc "D:\cert\MySPC.cer" -pfx "D:\cert\MySPC.pfx" signtool sign /v /f "D:\cert\MySPC.pfx" /t http://timestamp.comodoca.com "D:\cert\Setup.exe" The following certificate was selected: Issued to: Firmenname-rootCA Issued by: Firmenname-rootCA Expires: Sun Jan 01 00:59:59 2040 SHA1 hash: 9A02F7F5BD565E0A4536A70051434F274B8501D5 Done Adding Additional Store Successfully signed: D:\cert\Setup.exe Number of files successfully Signed: 1 Number of warnings: 0 Number of errors: 0 Ich habe auch ein "Digitale Signaturen"-Tab in den Dateieigenschaften, wo ich den Namen des "Firmenname-rootCA" wiederfinde. Jedoch sagt meine UAC weiterhin gelb und Herausgeber: Unbekannt Hätte ich das Zertifikat wieder Windows bekannt machen müssen, so wie du es in Minute 3:30 ansprichst? Weil das Stammzertifikat ja doch da schon zu finden ist, habe ich diesen Schritt ausgelassen. Das ist so ein umfangreiches und komplexes Thema. Sich da schlau zu machen und einzulesen ist nicht ohne. :| |
AW: Setup.exe signieren mit Stamm-CA
Zitat:
Ansonsten sieht das ganz gut aus. Das UAC ist deshalb Gelb, weil die CA nicht in den vertrauenswürdigen CAs ist. |
AW: Setup.exe signieren mit Stamm-CA
Zitat:
Kann ich denn mit dem was ich habe, also einen firmenweit per Active Directory (Windows-Domäne) bekannten CA, überhaupt unsere internen Setup.exe-Dateien so signieren, dass es blau wird und ohne Herausgeber: Unbekannt? Oder muss ich unseren Admin bitten, ein daraus erstelltes Entwicklerzertifikat per Gruppenrichtlinie zu verteilen? Oder geht das so gar nicht und man kommt um so ein externes Drittanbieter-Zertifikat gegen Geld nicht drum rum? |
AW: Setup.exe signieren mit Stamm-CA
Die RootCA (publickey) MUSS auf allen Rechnern installiert sein, wo das UAC aufpoppt.
Das Zert. für die Signierung muss nirgends hin und kann bei dem Entwickler bleiben. Niemand anderes braucht irgendetwas von dem Zertifikat. Das was benötigt wird, ist in der Signatur an der Exe enthalten. Da steht z.B. drin, wer das Zert für den Entwickler ausgestellt hat. Genau das ist ja die CA und daher kann ein PC die Signatur prüfen, weil die CA bekannt ist (sein sollte). Wenn du Windows AD einsetzt, dann kannst du dort auch eine CA erstellen bzw. Zertifikate erstellen (ohne makecert.exe). Dann hast weniger Ärger/Aufwand. Du kannst auch ohne AD-CA die "makecert.exe" Zertifikate via GPO auf alle Clients verteilen. Setzt aber AD vorraus - lose Client ohne Domänen Mitgliedschaft müssen per Hand mit dem public key der CA versorgt werden. Ja, du bekommst das Blau wie im Video, wenn die CA bekannt ist. |
AW: Setup.exe signieren mit Stamm-CA
Liste der Anhänge anzeigen (Anzahl: 1)
Okay, das klingt ja alles logisch und einleuchtend und ich danke dir auch sehr für deine Mühen.
Ich habe es heute nicht nochmal neu probiert, vielleicht war ja gestern auch der Wurm drin. Ich probiere es gleich nochmal. Anbei nochmal ein Screenshot, der für jeden Domänen-Account (ok, ich habe nur zwei überprüft) gleich ist. Anhang 53269 Das heißt, jeder Domänen-Account kennt das Firmenname-rootCA, aka den Public-Key. Nach deiner Aussage müsste das ja so reichen, wenn ich die Schritte aus dem Video genauso wiederhole. Richtig? Natürlich anstatt mit "CN=Coding BOTT CA" steht dann bei mir im ersten Schritt für makecert "CN=Firmenname-rootCA". |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz