“iTunes.app”接受传入的网络连接?

cus*_*t0s 19 itunes firewall osx-snow-leopard macos

每次打开 iTunes 时都会收到以下警告:

您是否希望应用程序“iTunes.app”接受传入的网络连接?

单击拒绝可能会限制应用程序的行为。可以在“安全”首选项的“防火墙”面板中更改此设置。

警告框

我总是点击“允许”,但它仍然弹出。

我将 OS X 防火墙设置为允许 iTunes 的传入连接。

对于如何解决这个问题,有任何的建议吗?

Arj*_*jan 17

重新安装 iTunes 可能最简单。

如果防火墙没有记住您的选择,则说明iTunes的数字签名(代码签名)已损坏。默认情况下,OS X 防火墙接受任何由 Apple 签名的软件,甚至无需询问您。所以:它不应该问你。而且一旦询问,它应该能够记住,基于数字签名。损坏的签名(例如由更改 iTunes.app 包的内容引起)将阻止这一切。

(您是否曾以某种方式手动更改应用程序的 iTunes 图标?或者您是否安装了一些插件?)

您可以通过复制第一行并将其粘贴到终端中来验证 iTunes 的签名:

codesign -vvv /Applications/iTunes.app/

/Applications/iTunes.app/:在磁盘上有效
/Applications/iTunes.app/:满足其指定要求

如果 Mac 代码签名被篡改,什么可能会失败?


Arc*_*ano 11

如果你看到

$ codesign -vvv /Applications/iTunes.app/
/Applications/iTunes.app/: a sealed resource is missing or invalid
/Applications/iTunes.app/Contents/Resources/English.lproj/iTunesDJSettings.nib/objects.xib: resource added
Run Code Online (Sandbox Code Playgroud)

只需删除显示“已添加资源”的文件并再次验证协同设计。一旦它验证 iTunes.app 不应再弹出任何消息。

如果你想自己辞职,你可以从http://developer.apple.com/mac/library/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html创建一个签名身份

但是,我不建议将它用于 iTunes,尽管我将它用于其他应用程序。