Eine frohe Adventszeit wünscht Apfeltalk
  • Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Unser Dezember-Wettbewerb steht unter dem Thema Zeitreise - Macht mit und beteiligt Euch mit Euren kreativen Fotos! Zum Wettbewerb --> Klick

Leo: Firewall fragt nach jedem Neustart erneut nach Skype

LeMerlot

Golden Delicious
Registriert
05.02.10
Beiträge
8
Die Lösung

Hallo zusammen,

ich hatte auch das obige Problem mit verschiedenen Programmen (z.B. iTunes und VLC) und den immer wiederkehrenden Meldungen der Firewall über Monate hinweg, hatte zahlreiche Lösungsansätze getestet und es hat mich fast verrückt gemacht.

Wie sich herausstellte, lag das daran, dass ich Resourcen dieser Programme ausgetauscht hatte, um deren Nutzeroberfläche (z.B. bei iTunes via Aqua Inspiriat) zu verändern - was zum bereits erwähnten Problem mit der geänderten Signierung führte.


Nun habe ich eine Lösung gefunden, die unter Snow Leopard zuverlässig funktioniert. Man muss dazu die betroffenen Programme neu signieren, was relativ einfach ist:

1. Öffne Programme > Dienstprogramme > Schlüsselbundverwaltung

2. Dann Menü Schlüsselbundverwaltung > Zertifikatsassistent > Zertifikat erstellen…

3. Dem neuen Zertifikat einen Namen geben (neuen Zertifikatsnamen genau merken!)

4. Identitätstyp: Root, selbst-signiert

5. Zertifikatstyp: Code-Signierung

6. Haken auf Standardwerte überschreiben

Button Fortfahren

7. Seriennummer: 1

8. Gültigkeit (in Tagen): 900

Button Fortfahren

9. Emailadresse etc. beliebig einfügen

Button Fortfahren

10. Für die restlichen Dialoge die voreingestellten Standardwerte verwenden

Nachdem das neue, eigene Zertifikat gesichert ist, Schlüsselbundverwaltung beenden.



11. Öffne Programme > Dienstprogramme > Terminal

Eingabe:

Code:
codesign -s [Name des neuen Zertifikats] -f [PfadzumProgramm]
Beispiel für iTunes:
Code:
codesign -s ZertifikatNeu -f /Applications/iTunes.app
Bestätigungs-Taste drücken


Das war's. Nun werdet Ihr beim nächsten Programmstart von der Firewall genau noch einmal gefragt - und habt danach Ruhe :)


Enjoy!
LeMerlot
 
  • Like
Reaktionen: Mitglied 26876

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
.bashrc-Eintrag

Für alle die das häufiger brauchen, lohnt sich evtl. ein .bashrc-Eintrag in dieser Art:
Zertifikatsname hier "CodeSigning"

# Anwendungen signieren
sign () { /usr/bin/codesign -s CodeSigning -f "${1}"; }

Aufruf danach einfach mit:
sign /Applications/grftlbmpf.app
 
Zuletzt bearbeitet:

deloco

Weißer Winterkalvill
Registriert
14.11.07
Beiträge
3.507
Also ich habe mir angewöhnt die Standard-Firewall aus zu lassen und stattdessen die in OS X enthaltene IPFW zu verwenden. Lässt sich mit NoobProof sehr einfach konfigurieren und man hat eine wunderbar einstellbare Firewall die nicht rumzickt…
 

Apacheese

Erdapfel
Registriert
27.10.08
Beiträge
2
Hatte solche Hoffnung, daß die Anweisungen von LeMerlot hinhauen, habe auch alles genauso gemacht (was ja auch nicht schwer ist), und bekomme dann im Terminal nach beschriebener korrekter Eingabe (bei mir: codesign -s FinalCutPro -f /Applications/Final Cut Pro.app nach Enter die frustrierende Botschaft --> /Applications/FinalCutPro.app: cannot find code object on disk. Mann langweilt sowas. Jammerschade.
 

yellowm

Golden Delicious
Registriert
04.04.10
Beiträge
6
Hi Apacheese,

bin ja noch neu und kein große bash-Held, aber wenn die Final Cut Pro.app tatsächlich Leerzeichen enthält (hab's selber nicht), fehlen bei "codesign -s FinalCutPro -f /Applications/Final Cut Pro.app" die escapes.
Müsste so gehen: "codesign -s FinalCutPro -f /Applications/Final\ Cut\ Pro.app"
Probiers mal...
 

waschbär123

Echter Boikenapfel
Registriert
26.04.08
Beiträge
2.353
Habe auch das Problem, dass iTunes z.B. (oder MS Office 2008) bei jedem Start fragt ob es darf oder nicht darf. Finde ich sehr nervig. Die Anleitung oben hilft mir nicht weiter, da ich keine Resourcen ausgetauscht habe und alles Standard läuft... Muss ich den Umweg über die IPFW gehen?
 

LeMerlot

Golden Delicious
Registriert
05.02.10
Beiträge
8
@bosk: Sehr gerne - freut mich :)

@waschbär123: Ich würde es dennoch mal versuchen - so aufwändig ist es ja nicht. Das Problem kam bei mir auch bei anderen Apps vor - und die genannte Lösung hat mir dabei schon viel Nervereien erspart...
 

Mitglied 26876

Gast
Wichtig für das Terminal ist:
Wenn ein Zertifikat Leerzeichen enthält muss es mit "ZERTIFIKAT NAME" aufgerufen werden, und möglichst mit vorangestelltem 'sudo'.

Code:
sudo codesign -s "Zertifikat Neu" -f /Applications/iTunes.app
 

Coroire

Granny Smith
Registriert
25.10.09
Beiträge
15
Einen schönen guten Morgen an alle!

Ich habe dieses äußerst zuverlässige Tool vom LeMerlot ausprobiert, und seitdem habe ich Ruhe mit Adium, Skype, meiner Dropbox und iTunes. Kann es also wirklich weiterempfehlen!
Was mich aber ein klein wenig an der ganzen Sache stutzig macht, ist, dass ich bei Gültigkeit (in Tagen) 900 Tage angeben musste. Heißt das, ich muss das Zertifikat in knapp drei Jahren wieder erneuern? Oder erneuert sich das selbst? Wie ist das zu verstehen?

Vielen Dank im voraus!
LG Coroire
 

naich

Pomme d'or
Registriert
22.11.08
Beiträge
3.082
Ich nehme mal an dann musst du es erneuern...
 

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
Was mich aber ein klein wenig an der ganzen Sache stutzig macht, ist, dass ich bei Gültigkeit (in Tagen) 900 Tage angeben musste. Heißt das, ich muss das Zertifikat in knapp drei Jahren wieder erneuern? Oder erneuert sich das selbst? Wie ist das zu verstehen?

Genauso ist es.
Wenn Du also tatsächlich in 900 Tagen / drei Jahren immer noch die identische Version des Programms auf genau dieser Installation des Betriebssystems hast, würde das Zertifikat ablaufen und Du erneut wieder die Frage erhalten, ob Du den Zugriff erlauben willst oder nicht.
Du kannst das Programm aber dann erneut für weitere 900 Tage signieren...


Allerdings bezweifele ich, dass wir in 2013 noch mit OS X 10.6.4 und der Version x.y.z von Anwendung Blah arbeiten. Nicht, dass es sowas nicht gäbe, aber es ist doch seeeehr selten, in Zeiten, wo Betriebssystemupdates jährlich erscheinen, und Anwendungsupdates praktisch im Quartalsrhythmus...
 

Coroire

Granny Smith
Registriert
25.10.09
Beiträge
15
Genauso ist es.
Wenn Du also tatsächlich in 900 Tagen / drei Jahren immer noch die identische Version des Programms auf genau dieser Installation des Betriebssystems hast, würde das Zertifikat ablaufen und Du erneut wieder die Frage erhalten, ob Du den Zugriff erlauben willst oder nicht.
Du kannst das Programm aber dann erneut für weitere 900 Tage signieren...
Allerdings bezweifele ich, dass wir in 2013 noch mit OS X 10.6.4 und der Version x.y.z von Anwendung Blah arbeiten. Nicht, dass es sowas nicht gäbe, aber es ist doch seeeehr selten, in Zeiten, wo Betriebssystemupdates jährlich erscheinen, und Anwendungsupdates praktisch im Quartalsrhythmus...

Ah gut, wenn wieder diese Meldung kommt, die mich wieder fragt, dann ist ja alles in Butter! :)

Danke für eure Hilfe!
 

zweiundvierzig

Horneburger Pfannkuchenapfel
Registriert
25.01.07
Beiträge
1.420
Hallo zusammen,

ich hatte auch das obige Problem mit verschiedenen Programmen (z.B. iTunes und VLC) und den immer wiederkehrenden Meldungen der Firewall über Monate hinweg, hatte zahlreiche Lösungsansätze getestet und es hat mich fast verrückt gemacht.

Wie sich herausstellte, lag das daran, dass ich Resourcen dieser Programme ausgetauscht hatte, um deren Nutzeroberfläche (z.B. bei iTunes via Aqua Inspiriat) zu verändern - was zum bereits erwähnten Problem mit der geänderten Signierung führte.


Nun habe ich eine Lösung gefunden, die unter Snow Leopard zuverlässig funktioniert. Man muss dazu die betroffenen Programme neu signieren, was relativ einfach ist:

1. Öffne Programme > Dienstprogramme > Schlüsselbundverwaltung

2. Dann Menü Schlüsselbundverwaltung > Zertifikatsassistent > Zertifikat erstellen…

3. Dem neuen Zertifikat einen Namen geben (neuen Zertifikatsnamen genau merken!)

4. Identitätstyp: Root, selbst-signiert

5. Zertifikatstyp: Code-Signierung

6. Haken auf Standardwerte überschreiben

Button Fortfahren

7. Seriennummer: 1

8. Gültigkeit (in Tagen): 900

Button Fortfahren

9. Emailadresse etc. beliebig einfügen

Button Fortfahren

10. Für die restlichen Dialoge die voreingestellten Standardwerte verwenden

Nachdem das neue, eigene Zertifikat gesichert ist, Schlüsselbundverwaltung beenden.



11. Öffne Programme > Dienstprogramme > Terminal

Eingabe:

Code:
codesign -s [Name des neuen Zertifikats] -f [PfadzumProgramm]
Beispiel für iTunes:
Code:
codesign -s ZertifikatNeu -f /Applications/iTunes.app
Bestätigungs-Taste drücken


Das war's. Nun werdet Ihr beim nächsten Programmstart von der Firewall genau noch einmal gefragt - und habt danach Ruhe :)


Enjoy!
LeMerlot

ich hab das selbige Problem mit iTunes und jDownloader und habe genau diese Anleitung befolgt...
jedoch bekomme ich im Terminal immer die Meldung "no identity found". Warum???

Das Zertifikat (iTunes und jDown) besteht und ich find es auch in der Schlüsselbundverwaltung.
 

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
Nur am Rande:
Es klingt so, als würdest Du für jede Applikation ein neues Zertifikat anlegen. Das ist nicht nötig, sondern eher umständlich.
Tipp: Leg *ein* Zertifikat an, z.Bsp. mit dem Namen "CodeSigning". Dann signiere *jede* Applikation (nachdem Du daran rumgebastelt hast) mit diesem Zertifikat.
Der Befehl würde dann lauten: codesign -s CodeSigning -f <Pfad_zu_App,_egal_welcher>

Zu Deinem Problem:
Ich bastele ebenfalls an praktisch jeder App rum, zum einen um die vielen Sprachen zu entfernen, die ich nicht brauche, zum anderen um UniversalBinaries auf die aktuelle Architektur abzuspecken und andere "unnötige" Dateien wie Handbücher etc. zu entfernen.
Danach kurz die App signiert, und sie fragt nur noch einmal, beim folgenden Start (denn dann ist die Signatur ja noch neu, und OS X merkt sich diese erstmalig).

Allerdings legen viele Apps ihre Binaries nicht nur im /Applications/-Verzeichnis, sondern auch in anderen Verzeichnissen wie /Library oder /System/Library ab. Auch die müssen signiert werden.
Bei iTunes gibt es zum Bleistift noch den iTunes Helper.app, bei Parallels Desktop, EyeTV, Growl etc. weitere Binaries, die oft in /Library/Application Support/ liegen. Auch in Deinem Homeverzeichnis unter $HOME/Library/Application Support, $HOME/Library/Internet PlugIns usw. findet man sowas.
 

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
Ein klitzekleines Progrämmelchen, um herauszufinden ob die Signatur passt (oder eben nicht) ist CodeSignChecker.app.
Kostenfrei zu finden unter fernlightning.com.

Nach dem Start einfach irgendwelche Apps per Drag and Drop auf das Fenster ziehen, egal woher.
Falls etwas mit der Signatur nicht stimmt, wird auf einem zweiten Reiter auch angezeigt, welche Datei fehlt/verändert ist.

Sieht dann so aus:
codesignchecker.png
 

zweiundvierzig

Horneburger Pfannkuchenapfel
Registriert
25.01.07
Beiträge
1.420
ok. allerdings kommt immer der Fehler, dass eine solchige Identität nicht existieren würde ?!

Ich hab nu mal das kleine Tool angeworfen... und was sagt mir das jetzt? in den ResourceDiffs wird angzeigt, dass das Icon geändert wurde. hab ich auch... jedoch hab ich am jDownloader nichts verändert.
 

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
... Fehler, dass eine solchige Identität nicht existieren würde ?!

Mit "Identität" meint codesign den Namen des Zertifikats. Also den Parameter hinter -f. In meinem Beispiel also "CodeSigning".
In Deinem Fall den Namen, den Du dem Zertifikat gegeben hast. Wie lautet dieser denn?


Ich hab nu mal das kleine Tool angeworfen... und was sagt mir das jetzt?
Ich weiss nicht, ob es Dir etwas sagt. Mir schon. Anderen auch. Deshalb habe ich den Hinweis darauf als eigenen Post gesetzt. Es ist keine Antwort auf Dein Problem. Ich schreibe hier nicht nur für Dich.


... und was sagt mir das jetzt? in den ResourceDiffs wird angzeigt, dass das Icon geändert wurde. hab ich auch... jedoch hab ich am jDownloader nichts verändert.
Hast Du jetzt was verändert, oder nicht?? Wenn Du das Icon veränderst, dann veränderst Du doch was, oder?
Nicht jede Datei ist in der Signatur als "wichtig" hinterlegt. Es gibt Apps, die kommen mit zig Sprachen, die man alle löschen darf, ohne dass die Signatur dabei hopps geht. Und es gibt Apps, da lösche ich eine Readme-Datei, und schon schreit die Signatur, sie wäre nicht mehr intakt... Das liegt am Programmierer, nicht an OS X.
Und es gibt Apps, die kommen ganz ohne Signatur. Warum auch nicht. Ist ja kein Muss, sondern nur ein Schutz, um sicherzustellen, dass die App noch "integer" ist.
Skype kommt mit Signatur, schreibt diese aber bei jedem Start neu. Die Programmierer sind so paranoid, dass sie jedes mal prüfen, ob sich auch nur ein Bit geändert hat, und den Betrieb sonst einstellen. Mich nervt das gewaltig, weil ich ein eine 45 MB-App mit mir rumschleifen muss, die sich auf unter 10 MB abspecken liesse, wenn man Sprachen löschen dürfte. Darf man aber leider eben nicht.

Vielleicht habe ich Deine Frage nicht verstanden.
 

zweiundvierzig

Horneburger Pfannkuchenapfel
Registriert
25.01.07
Beiträge
1.420
Mit "Identität" meint codesign den Namen des Zertifikats. Also den Parameter hinter -f. In meinem Beispiel also "CodeSigning".
In Deinem Fall den Namen, den Du dem Zertifikat gegeben hast. Wie lautet dieser denn?

"Sign" - der Einfachheit halber =) Schreibfehler sind auch nich drinne. Hab es auch schon versucht mit AdminRechten und als angemeldeter Admin zu machen. dabei fängt er auch kurz an die Signatur zu schreiben, kann sie wohl aber nicht ablegen ?!

Hast Du jetzt was verändert, oder nicht?? Wenn Du das Icon veränderst, dann veränderst Du doch was, oder?...

Doch, verändert wurde ja was (und das Prog sagt das ja auch). Aber somit müsste ich doch mit der neuen Signatur das wieder ins Lot bringen, oder?
Die Frage is nur, warum das so nich will...

Die Veränderung (Icon) war nach dem Update auf iTunes 10, als ja viele das Icon geändert haben, aber nicht so viele diese plötzlichen Probleme hatten.
 

maelcum

Jonathan
Registriert
03.10.08
Beiträge
82
"Sign" - der Einfachheit halber =) Schreibfehler sind auch nich drinne. Hab es auch schon versucht mit AdminRechten und als angemeldeter Admin zu machen. dabei fängt er auch kurz an die Signatur zu schreiben, kann sie wohl aber nicht ablegen ?!
Hm. Was sagt der Befehl denn wenn Du ihn mit -dv zu mehr Schnattern zwingst?
Bei mir sieht dass dann etwa so aus:
codesign -dv -s CodeSigning -f /Applications/iTunes.app/
/Applications/iTunes.app/: replacing existing signature
/Applications/iTunes.app/: signed bundle with Mach-O universal (i386) [com.apple.iTunes]

Doch, verändert wurde ja was (und das Prog sagt das ja auch). Aber somit müsste ich doch mit der neuen Signatur das wieder ins Lot bringen, oder?
Richtig. Sollte es... ;)

Die Veränderung (Icon) war nach dem Update auf iTunes 10, als ja viele das Icon geändert haben, aber nicht so viele diese plötzlichen Probleme hatten.
Ich habe gerade spasseshalber mal das Icon bei iTunes verändert, und bei mir bleibt die Signatur gleich. Also ist das Icon nicht Teil davon, d.h. es müsste bei Dir noch etwas anderes verändert worden sein als das Icon.
Hast Du mal probiert, iTunes nochmals zu "installieren"? Ist ja nur ein schnelles Drag'n'Drop.