«ITunes.app» принимать входящие сетевые подключения?

19

Каждый раз, открывая iTunes, я получаю следующее предупреждение:

Хотите ли вы, чтобы приложение «iTunes.app» принимало входящие сетевые подключения?

Нажатие Deny может ограничить поведение приложения. Этот параметр можно изменить на панели «Брандмауэр» в настройках безопасности.

окно предупреждения

Я всегда нажимаю «Разрешить», но он все равно появляется.

Я установил брандмауэр OS X, чтобы разрешить входящие подключения для iTunes.

Любые предложения о том, как это исправить?

cust0s
источник
@Spiff, есть ли шанс, что люди, у которых возникли проблемы с iTunes 10, заменили значок приложения?
Арджан
@Arjan Я столкнулся с этой проблемой в iTunes 10 и не заменил значок приложения. Я совсем не подправил пакет iTunes.app. Я предполагаю, что это была ошибка установщика. Я не помню точных названий лишних файлов, которые мне пришлось удалить, но я верю, что они были .nib.xib".
Spiff
1
В Mac OS X Hints кто-то пишет, что изменение значка iTunes также приводит к неприятностям. (То есть: при изменении его в самом комплекте приложений; изменение его обычным способом может не повлиять на сигнатуру, но я не уверен.)
Arjan

Ответы:

17

Вероятно, проще всего переустановить iTunes.

Если брандмауэр не помнит ваш выбор, то цифровая подпись ( Code Signing ) iTunes не работает. По умолчанию OS X брандмауэр принимает любое программное обеспечение , которое было подписано Apple , без даже спрашивать вас. Итак: это не должно было вас спрашивать. И однажды спросив, он должен уметь запоминать, основываясь на цифровой подписи. Сломанная подпись (например, вызванная изменением содержимого пакета iTunes.app) предотвратит все это.

(Случайно ли вы каким-то образом вручную изменили значок iTunes в приложении? Или вы установили несколько плагинов?)

Вы можете проверить подпись своего iTunes, скопировав первую строку и вставив ее в Терминал:

CodeSign -vvv /Applications/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

просто удалите файлы с надписью «ресурс добавлен» и снова проверьте код. После проверки iTunes.app не должен появляться больше сообщений.

Если вы хотите отказаться от этой вещи самостоятельно, вы можете создать подписывающее удостоверение от http://developer.apple.com/mac/library/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html

Тем не менее, я не рекомендую его для iTunes, хотя я использовал его для других приложений.

Архимед Траяно
источник
Я использовал этот подход, чтобы исправить давнюю проблему с xTorrent. Я просто удалил сообщенные файлы, как указано, и кодовый знак затем сообщил об успехе, когда любой 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
Эмбби
2

Просто хотел сообщить, что столкнулся с подобной проблемой после обновления iTunes с помощью Apple Updater, и предложенное здесь решение сработало. Перейдите в пакет iTunes и удалите все файлы, которые команда терминала помечает как «добавленный ресурс»:

$ codesign -vvv /Applications/iTunes.app/

Когда вы повторно запустите команду терминала, это будет означать, что iTunes.app теперь «удовлетворяет своему назначенному требованию» и надоедливое всплывающее окно должно исчезнуть.

Обратите внимание, что у меня нет глубокого понимания того, почему все это работает. Похоже, Apple сломала что-то незначительное в своем последнем обновлении программного обеспечения, и брандмауэр заметил. Любой опытный гуглер, имеющий небольшой опыт в этих вещах, должен всегда делать резервные копии своих файлов, прежде чем копаться в чем-то подобном - для вашей работы эти предпочтения могут быть важны.

Райан Г.
источник
Ура. Это было именно то, что мне нужно было сделать - кажется, что более старая копия iTunesHelper.app осталась в области ресурсов, а более новые версии iTunes содержат двоичный файл в нужном месте. Удаление этих файлов снова делает iTunes счастливым. Спасибо!
Пол Харгривз
1

Если переустановка работала, тогда все в порядке, но я просто хотел упомянуть, что по моему опыту настройки брандмауэра «Запретить / разрешить», похоже, не сохраняются, потому что вы устанавливаете их в учетной записи без прав администратора. Я думаю, что в этом случае они останутся только до тех пор, пока вы вошли в систему.

Возможно, переустановка сработала, потому что вы запустили iTunes в учетной записи администратора?

Просто мысль.

Стив Фолли
источник
Хм, хорошая мысль. Хотя для программного обеспечения Apple подпись должна быть сразу после установки; межсетевой экран не должен сам добавлять подпись. И можно ли изменить настройки брандмауэра без ввода пароля администратора? (Очень жаль, что я опубликовал пример командной строки после того, как спрашивающий вопрос переустановил iTunes. Если кто-нибудь придет к этому вопросу позже: пожалуйста, запустите codesignкоманду и опубликуйте свои результаты здесь.)
Arjan
Я работаю как пользователь без прав администратора, и когда я нажимаю разрешить или запретить, меня просят ввести имя / пароль моего администратора для внесения изменений в брандмауэр. Если вы не дадите имя пользователя или пароль администратора, вы фактически заблокируете программу от внешних подключений.
X-Istence
1

Более простой подход, если вы хотите избежать путаницы с терминалом, изменения пакетов или отказа от приложений, заключается в следующем:

  1. Загрузите установщик iTunes ( http://www.apple.com/itunes/download/ ).

  2. Переместите текущую копию приложения iTunes из папки «Программы» в корзину (но не трогайте ваши настройки или другие папки iTunes).

  3. Установите свежую копию iTunes из файла .dmg, который вы загрузили.

  4. Запустите свежую копию и убедитесь, что все на своем месте, без всплывающих окон!

Важно переместить старое приложение в корзину перед переустановкой iTunes; в противном случае файлы в пакете не будут удалены. Как только вы подтвердите, что это сработало, идите вперед и очистите корзину.

Дин Г
источник
Если вы не можете удалить сам пакет iTunes (потому что он «требуется ОС»), просто «Показать содержимое пакета» и удалите каталог «Содержимое». Затем запустите загруженный установщик. Это сработало для меня на Эль-Капитане.
Wildcard
0

У меня это было в iTunes 9.0 на Snow Leopard. Он ушел, когда я обновился до 9.0.1. (Возможно, из-за переустановки, так как это сработало для вас.)

Пол Д. Уэйт
источник
0

Иногда это не связано с проверкой кодового знака или подписи, поскольку вы просто используете Home Sharing в iTunes, который запрашивает, хотите ли вы разрешить входящие подключения.

Хайтам Эльхоя
источник