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


19

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

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

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

警告框

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

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

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


@Spiff,您是否知道是否有对iTunes 10遇到麻烦的人们替换了应用程序图标?
Arjan 2010年

@Arjan我在iTunes 10中遇到了这个问题,但没有替换应用程序图标。我根本没有调整iTunes.app捆绑软件。我猜这是安装程序错误。我不记得要删除的多余文件的确切名称,但我相信它们是.nib.xib的。
2010年

1
在Mac OS X提示中,有人写道,更改iTunes图标也会给您带来麻烦。(即:在应用程序捆绑包本身中进行更改时;以常规方式更改它可能不会影响签名,但我不确定。)
Arjan 2010年

Answers:


17

重新安装iTunes最简单。

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

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

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

codesign -vvv /应用程序/iTunes.app/

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

(有关更多详细信息,如果Mac代码签名被篡改,什么会失败?


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

只需删除显示“已添加资源”的文件,然后再次针对codesign进行验证。一旦验证,iTunes.app将不再弹出任何消息。

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

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


我使用这种方法解决了xTorrent长期存在的问题。我只是删除了指定的报告文件,然后codesign报告了任何xtorrent停止弹出对话框的成功。 /Applications/Xtorrent.app/: a sealed resource is missing or invalid /Applications/Xtorrent.app/Contents/Resources/.CoreStrings.Encoded: resource added /Applications/Xtorrent.app/Contents/Resources/.CoreStringsA.Encoded: resource added
emmby 2011年


2

只是想报告说,在使用Apple Updater更新iTunes之后,我遇到了类似的问题,并且这里建议的解决方案有效。进入iTunes软件包并删除此终端命令标记为“添加的资源”的所有文件:

$ codesign -vvv /Applications/iTunes.app/

当您重新运行终端命令时,它将指示iTunes.app现在“满足其指定要求”并且烦人的弹出窗口应消失。

请注意,我对其中的任何功能都不了解。好像Apple在上一次软件更新中破坏了一些小问题,并注意到了防火墙。对于任何在这些方面经验很少的高级Google员工,请确保在进行此类操作之前始终备份文件-对于您的工作,这些首选项可能很重要。


欢呼。这正是我需要做的-似乎在资源区域中保留了iTunesHelper.app的较旧副本,而在iTunes的较新版本中,二进制文件位于正确的位置。删除这些文件会使iTunes再次开心。谢谢!
Paul Hargreaves,


1

如果重新安装可以正常工作,那么很好,但是我只是想说一下,如果防火墙“拒绝/允许”设置似乎不成立,那是因为您是在非管理员帐户中进行设置。我认为在这种情况下,它们只会在您登录后才停留。

也许重新安装似乎可以正常工作,因为然后您以管理员帐户启动了iTunes?

只是一个想法。


嗯,好点。但是,对于Apple软件,签名应在安装后立即出现;防火墙本身不需要添加签名。并且可以在不输入管理员密码的情况下更改防火墙设置吗?(很遗憾,我在问题提问者重新安装iTunes 之后发布了示例命令行。如果以后有人遇到此问题,请运行该codesign命令并将结果发布在这里。)
Arjan

我以非管理员用户身份运行,当我单击允许或禁止时,要求我输入管理员用户名/密码来修改防火墙。如果您不提供管理员用户名或密码,则可以有效地阻止程序与外部连接。
X-Istence 09年

1

如果要避免惹恼终端,修改软件包或退出应用程序,一种更简单的方法如下:

  1. 下载iTunes安装程序(http://www.apple.com/itunes/download/)。

  2. 将iTunes应用程序的当前副本从“应用程序”文件夹移至回收站(但不要触摸您的首选项或其他iTunes文件夹)。

  3. 从下载的.dmg文件安装iTunes的新副本。

  4. 启动新的副本,发现一切就绪,不再有烦人的弹出窗口!

在重新安装iTunes之前,请将旧应用移到回收站很重要;如果不是,则不会删除软件包中有问题的文件。确认可行后,继续清空垃圾桶。


如果您不能删除iTunes软件包本身(因为它是OS要求的),则只需“显示软件包内容”并删除“目录”目录。然后运行下载的安装程序。这在El Capitan上对我有用。
通配符

0

我在Snow Leopard的iTunes 9.0中拥有此功能。当我升级到9.0.1时,它消失了。(可能是因为重新安装,因为它对您有用。)


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.