Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Codesigning-Zertifikat unter Vertrauenswürdige Herausgeber, PowerShell vertraut trotzdem nicht

Frage Microsoft Windows Server

Mitglied: tyradux

tyradux (Level 1) - Jetzt verbinden

08.08.2013, aktualisiert 10:11 Uhr, 3625 Aufrufe, 3 Kommentare

Hallo Zusammen,

mal wieder ein kleines Problemchen.

Ich bin gerade dabei, PowerShell-Scripte zu schreiben. Funktioniert soweit gut. Diese möchte ich nun gerne signieren und die ExecutionPolicy sämtlicher Systeme auf "AllSigned" stellen. Passt soweit.

Nun ist es so, dass ich ein Zertifikat erstellt und per GPO verteilt habe. Die Clients haben dieses bekommen, es wird auch unter den vertrauenswürdigen Herausgebern angezeigt. Jetzt signiere ich das PowerShell-Script mittels Idera PowerShell Professional Plus. Wenn ich das Script nun aber ausführen möchte, wird angezeigt, dass dem Zertifikat nicht vertraut wird.

Das Ganze habe ich erst in einer VMware-Umgebung getestet, bevor ich es auf dem Produktivsystem genau gleich ausgerollt habe. Unter VMware hat's funktioniert, im Produktivsystem nicht.

Ich weiß zur Zeit auch gar nicht, wo ich beginnen soll, zu suchen.

Wir verwenden Windows Server 2008 R2 und Windows 7 Clients.

Any Tipps?

Update:
Ich habe eben herausgefunden, dass der Unterschied darin lag, dass ich in der Testumgebung direkt das Windows-Eigene Code Signing-Zertifikat verteilt habe. In der Produktivumgebung habe ich dieses Zertifikat dupliziert und dieses dann verteilt. Wenn ich in der Testumgebung das Zertifikat ebenso dupliziere, exportiere und per GPO verteile, traut PowerShell diesem ebenso nicht.
Das Interessante dabe ist, dass ich mit der selben Methode ein Zertifikat für die Paketerstellung für WSUS verteilt habe, da funktioniert alles Reibungslos. PowerShell scheint die Zertifikate irgendwie anders zu behandeln. Oder muss ich hier noch etwas genaues beachten?

mfg
Simon
Mitglied: colinardo
08.08.2013 um 13:33 Uhr
Hallo Simon,
ist dein Zertifikat selbst erstellt oder von einer offiziellen Stelle(Verisign, etc) ?
Wenn es selbst erstellt ist, ist das Root-Zertifikat der Zertifizierungsstelle auch auf den Clients vorhanden ?
Ansonsten probier mal diese Variante zum signieren:
http://www.hanselman.com/blog/SigningPowerShellScripts.aspx

Grüße Uwe
Bitte warten ..
Mitglied: tyradux
08.08.2013 um 16:04 Uhr
Hallo Uwe,

das Zertifikat ist selbst erstellt und ja, das Root-Zertifikat unserer CA ist ebenso auf den Clients. Ich habe es sicherheitshalber sogar auch noch per GPO verteilt.

Die Makecert-Variante möchte ich eigentlich nicht verwenden, da ich meine CA als Zertifizierungsstelle haben möchte. Es muss doch auch so irgendwie funktionieren. Irgendwie denke ich, habe ich da einfach noch etwas beim duplizieren und verteilen des Zertifikats übersehen.
Bitte warten ..
Mitglied: baer02
15.08.2013 um 16:45 Uhr
Hallo Simon,

ich beschäftige mich aktuell mit dem Thema. Ich habe ein Root-Zertifikat (Root.pvk - privat und Root.cer - öffentlich) erstellt und von dem ein neues Zertifikat "abgeleitet", welches dann im Zertifikatsspeicher gelandet ist. Davon habe ich dann wiederum eine öffentliche Zertifikatsdatei (michael.cer) exportiert.

Ziel ist ein Root-Zertifikat zu haben und davon Mitarbeiter-Zertifikate abzuleiten, die dann zum Signieren von Code benutzt werden.

Um einen Test durchzuführen, habe ich auf einem zweiten Rechner Root.cer in den Zertifikatsspeicher "Vertrauenswürdige Stammzertifizierungsstellen" importiert. Auf diesem Rechner 2 habe ich vorher mit erhöhten Rechten "Set-ExecutionPolicy AllSigned" ausgeführt.

Wenn ich nun ein Skript mit meinem Zertiifkat (michael.cer) auf Rechner 1 signiere und dann testweise auf Rechner 2 ausführen möchte, mache ich das im Explorer mit einem rechten Mausklick und die Auswahl "Mit Powershell ausführen".

Dann erscheint die Frage: "Möchten Sie Software dieses nicht vertrauenswürdigen Herausgebers ausführen?" mit unterschiedlichen Antwortoptionen. Wenn ich die Option A (Immer ausführen) auswähle, wird dadurch die Signatur (michael.cer) dem Zertifikatsspeicher (Aktueller Benutzer) hinzugefügt. Wenn ich das Zertifikat dort lösche erscheint beim nächsten Mal wieder die Abfrage.

Es funktioniert auch, wenn ich den Zertifikatsspeicher (Lokaler Computer) wähle, offenbar gibt es einen Unterschied zwischen signiert und vertrauenswürdig.

Es funktioniet übrigens auch nicht, wenn ich Root.cer zu den Vertrauenswürdigen Herausgebern hinzufüge, obwohl die Ausführung des Skriptes nur mit Root.cer in der Vertrauenswürdigen Stammzertifizierungsstelle grundsätzlich gelingt, man wird lediglich gefragt, ob man dem Herausgeber CN=Michael vertraut.

Ich habe ein wenig ausführlicher geschrieben, was ich gemacht habe, weil das möglicherweise noch andere lesen...

Viele Grüße Michael
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell Script mit Zertifikat signieren (5)

Frage von zamsi7 zum Thema Batch & Shell ...

Windows Server
gelöst Powershell und Remote in der Registry rumwuseln (6)

Frage von H41mSh1C0R zum Thema Windows Server ...

Exchange Server
Migration SBS2011 zu Exchange 2013 iOS Problem (Zertifikat) (4)

Frage von cptkrabbe zum Thema Exchange Server ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft Office
Saubere HTML aus Word-Dokument (16)

Frage von peterpa zum Thema Microsoft Office ...

Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (15)

Frage von marshall75000 zum Thema Router & Routing ...

Hosting & Housing
gelöst Webserver bei WIX, aber DNS Server wo anders (9)

Frage von laster zum Thema Hosting & Housing ...