Pakete auf abgelaufene Zertifikate in Mac OS X prüfen
Inhaltsverzeichnis:
Viele Mac-Benutzer laden Paketdateien von Combo-Updates oder anderer Software herunter, um sie auf mehreren Computern zu installieren, und vermeiden so die Aktualisierung über den Mac App Store. Dies ist besonders häufig bei Mac-Systemadministratoren der Fall, bei denen es sinnvoller ist, ein einzelnes Paket-Update oder Installationsprogramm einmal herunterzuladen und über ein Netzwerk zu verteilen oder vielleicht manuell über ein USB-Laufwerk zu installieren.An diesem Ansatz ist überhaupt nichts auszusetzen, und tatsächlich ist er für die Verw altung mehrerer Macs viel effizienter, aber ein potenzieller Schluckauf tritt auf, wenn ein Paketinstallationsprogramm oder eine Update-Datei ein abgelaufenes Zertifikat hat, das die vollständige Installation des Pakets verhindert, a Situation, die offensichtlich wird, wenn Sie die Fehlermeldung „(Anwendungsinstallationsprogramm) wurde mit einem abgelaufenen Zertifikat signiert“ erh alten.
Um diese Situation zu vermeiden, können Sie Paketsignaturen selbst überprüfen, um zu sehen, ob sie gültig sind, ob sie abgelaufen sind oder ob sie gar keine Signatur haben.
Überprüfen des Paketsignaturstatus in Mac OS X mit pkgutil
Das hervorragende Befehlszeilenprogramm pkgutil kann den Status jeder Paketsignatur und jedes Zertifikats leicht ermitteln. Es ist einfach zu bedienen, starten Sie also die Terminal-App über /Applications/Utilities/ und probieren Sie es selbst aus.
Die grundlegende Syntax zum Überprüfen des Status einer Paketsignatur lautet wie folgt:
pkgutil --check-signature /Path/to/Example.pkg
Drücken Sie die Eingabetaste und Sie werden herausfinden, ob die Signatur gültig ist, ob die Signatur abgelaufen ist oder ob überhaupt keine Signatur vorhanden ist.
Nehmen wir zum Beispiel an, wir haben ein Mac OS X Combo Update-Software-Installationspaket, ein häufiges Szenario für Systemadministratoren, die mehrere Macs aktualisieren. Sie könnten den Status dieser Paketsignatur wie folgt überprüfen:
"pkgutil --check-signature ~/Downloads/OSXUpdateCombo10.10.2.pkg Paket OSXUpdateCombo10.10.2.pkg: Status: Signiert von einem mittlerweile abgelaufenen Zertifikat "
In diesem Fall ist die Signatur für das Aktualisierungspaket abgelaufen, was bedeutet, dass es einen Fehler ausgibt, wenn versucht wird, es zu verwenden.
Nicht alle Paketinstallationsprogramme haben jedoch Signaturen, und während jede Softwareaktualisierungsdatei von Apple dies tut, haben Pakete von Drittanbietern dies oft nicht.Zum Beispiel hat diese Beispieldatei des Paketinstallationsprogramms keine Signatur und sollte entsprechend behandelt werden (d. h. wenn Sie der Quelle nicht vertrauen, überdenken Sie vielleicht ihre Verwendung).
"pkgutil --check-signature ~/Downloads/MysterySketchyInstaller-21.pkg Paket MysterySketchyInstaller-21.pkg: Status: keine Signatur "
Wenn eine Paketdatei zweifelhaft ist, können Sie die Code-Signatur überprüfen und das Paket extrahieren, ohne es mit pkgutil zu installieren, um es einer weiteren Überprüfung zu unterziehen, oder, wenn Sie lieber die GUI verwenden, eine App wie Pacifist bietet ähnliche Paketverw altungstools in einer benutzerfreundlicheren Oberfläche, auch wenn es immer noch auf der fortgeschrittenen Seite der Dinge ist.
Wie bei allen guten Befehlszeilen-Tools können Sie sogar pkgutil-Platzh alter eingeben, um mehrere Pakete gleichzeitig zu überprüfen. In diesem Beispiel überprüfen wir die Signatur jeder .pkg-Datei, die in ~/ enth alten ist. Downloads:
pkgutil --check-signature ~/Downloads/.pkg Paket irssi-0.8.17-0.pkg: Status: keine Signatur "
"Paket wget-4.8.22-0.pkg: Status: keine Signatur"
"Package ComboUpdateOSXElCapitan.pkg: Status: Signiert von einem inzwischen abgelaufenen Zertifikat"
"Package InstallOSXSequoiaBeta.pkg: Status: gültig"
"Paket HRFDeveloperTools.pkg: Status: gültig"
Mit Platzh altern lässt sich der Zertifikatsstatus vieler verschiedener Paketdateien schnell überprüfen. Stellen Sie nur sicher, dass Sie .pkg angeben, damit der Prozess abgeschlossen wird, ohne bei einer Datei anzuh alten, die kein erkanntes Paket ist.