Разработчик Джон Кассил представил dontallow — небольшую утилиту для macOS, которая автоматически закрывает системный запрос на поиск устройств в локальной сети и нажимает «Не разрешать». Она предназначена для ситуаций, когда система не запоминает выбор пользователя и показывает одно и то же окно при каждом запуске приложения. По словам автора, в простое утилита не расходует CPU, продолжает работать после перезагрузки, состоит из одного файла Swift и не требует сторонних зависимостей. Проблема особенно заметна у браузеров на Chromium. Chrome, Brave, Edge, Island и Arc могут копировать собственный пакет приложения во временный каталог со случайным именем, а macOS связывает решение о доступе с этим путём. При следующем запуске программа выглядит для системы как новая, а в настройках конфиденциальности накапливаются устаревшие дубликаты. Похожая ситуация возникает у приложений с каталогами для каждой версии. Кроме того, macOS иногда приписывает запрос не тому приложению. dontallow устанавливается через Homebrew или сборку из исходников и регистрирует пользовательского агента launchd. Для нажатия кнопки ему нужно разрешение «Универсальный доступ». Утилита наблюдает за появлением окон системного процесса UserNotificationCenter, проверяет текст диалога и активирует именно кнопку отказа. Если программное действие недоступно, используется имитация щелчка. Системные файлы и защитные механизмы не изменяются, а разрешение утилита не выдаёт. Через команды можно проверить состояние, приостановить отклонения, посмотреть список исключений и удалить агента. Режим dry-run только записывает предполагаемые действия. Для приложения, которому действительно нужна сеть, предусмотрены allowlist, временная пауза и изменение решения в настройках macOS. По умолчанию перед автоматическим отказом выдерживается пауза 0,25 секунды; её можно увеличить. В корпоративном окружении разрешение «Универсальный доступ» можно выдать через PPPC-профиль, хотя сам доступ к локальной сети заранее запретить через MDM нельзя. После обновления самосборной утилиты разрешение иногда приходится выдавать заново, поскольку меняется подпись бинарника. Пока распознаётся только английская локализация macOS; сам запрос появился в macOS 15 Sequoia. Проект распространяется под лицензией MIT.
dontallow автоматически отклоняет сетевые запросы macOS
29.10.2026 19:27 · hackernews