Что означает ошибка network-security-warning
Ошибка network-security-warning — это не код в классическом понимании, а системное предупреждение безопасности macOS, которое появляется при попытке установить сетевое соединение, которое система считает подозрительным или нестандартным.
Вы увидите диалоговое окно с сообщением, похожим на: "Безопасность сети" или "Подтверждение безопасности", где указано, что подключение к серверу [имя_сервера] небезопасно из-за проблем с SSL-сертификатом или шифрованием. Окно блокирует дальнейший доступ до тех пор, пока вы не подтвердите действие, нажав "Продолжить" или "Отмена".
Предупреждение может возникать при:
- Подключении к внутренним корпоративным сервисам с самоподписанными сертификатами.
- Работе с локальными серверами разработки (например,
https://localhost). - Использовании нестандартных портов или протоколов.
- Подключении к публичным Wi-Fi сетям с перехватом трафика (captive portals).
Причины возникновения
- Недействительный или самоподписанный SSL-сертификат. Сертификат сайта не подписан доверенным центром сертификации (CA) или срок его действия истек.
- Несоответствие имени хоста. Имя в сертификате (
Common Name/SAN) не совпадает с адресом, к которому вы подключаетесь (например, сертификат выдан дляexample.com, а вы заходите на192.168.1.10). - Некорректные системные дата и время. Если часы на Mac сбиты, система не может правильно проверить срок действия сертификата.
- Агрессивные настройки безопасности в браузере или приложении. Некоторые приложения (особенно разработческие) могут требовать строгого соответствия стандартам TLS.
- Проблемы с корневыми сертификатами. Повреждение или отсутствие в системе корневых сертификатов доверенных центров (например, Let's Encrypt, DigiCert).
- Блокировка со стороны брандмауэра или антивируса. Стороннее ПО может перехватывать и анализировать HTTPS-трафик, подменяя сертификаты, что вызывает конфликт.
Способы решения
Способ 1: Быстрая диагностика и временное обходное решение
Перед глубокой настройкой проверьте базовые вещи:
- Убедитесь, что вы подключаетесь к правильному адресу. Проверьте URL на опечатки.
- Попробуйте открыть тот же самый сайт в другом браузере (Chrome, Firefox). Если проблема только в Safari, возможно, дело в его настройках приватности.
- Временно отключите расширения браузера, которые могут вмешиваться в трафик (VPN, AdBlock, антивирусные расширения).
- Если вы уверены в безопасности ресурса (например, это локальный сервер разработки), в диалоговом окне предупреждения можно нажать "Показать сертификат", а затем "Всегда доверять". Это добавит сертификат в хранилище системы.
⚠️ Важно: Добавляйте в доверенные только сертификаты от источников, которым вы абсолютно доверяете (ваш локальный сервер, корпоративный портал). Не доверяйте сертификатам с публичных сайтов, которые вызывают подозрения.
Способ 2: Исправление системного времени
Это одна из самых частых и простых в исправлении причин.
- Откройте
Системные настройки→Общие→Дата и время. - Разблокируйте настройки, нажав на значок замка и введя пароль администратора.
- Убедитесь, что галочка
Устанавливать дату и время автоматическиактивна, и выбран правильный сервер времени (например,time.apple.com). - Закройте настройки и перезагрузите Mac.
Способ 3: Ручное управление сертификатами в Keychain Access
Для точного контроля над доверенными сертификатами используйте утилиту Keychain Access.
- Найдите сертификат, вызвавший проблему. Обычно он отображается в предупреждении. Нажмите "Показать сертификат" и запомните его имя (например,
MyDevCA). - Откройте приложение
Keychain Access(через Spotlight илиПрограммы → Утилиты). - В левой панели выберите
Система(System) илиВход(Login). Для системных предупреждений часто нужен доступ кСистема. - В строке поиска введите имя сертификата.
- Найдите его в списке, дважды щёлкните для открытия.
- Разверните раздел
Доверие. - В выпадающем меню
При использовании этого сертификатавыберитеВсегда доверять. - Закройте окно. Система запросит пароль администратора для внесения изменений в системную цепочку ключей. Введите пароль.
- Перезапустите браузер или приложение, которое вызывало ошибку.
Способ 4: Сброс сетевых конфигураций
Если проблема затрагивает множество сайтов и сервисов, возможно, повреждены системные файлы сетевых настроек.
- Откройте Finder и перейдите в папку
~/Library/Preferences/SystemConfiguration/(чтобы быстро попасть, в меню Finder выберитеПереход → Переход к папкеи вставьте путь). - Создайте резервную копию этой папки на рабочий стол.
- Удалите (или переместите) следующие файлы из исходной папки:
com.apple.network.identification.plistcom.apple.wifi.message-tracer.plistNetworkInterfaces.plistpreferences.plist(если есть)
- Перезагрузите Mac. При старте система автоматически создаст новые, чистые файлы конфигурации. Вам нужно будет заново подключиться к Wi-Fi сетям и ввести пароли.
Способ 5: Временное отключение проверки сертификатов (только для экспертов)
Этот метод сильно снижает безопасность и должен использоваться только для временной диагностики в контролируемой среде (например, для доступа к изолированному тестовому серверу). Никогда не используйте его для повседневного серфинга.
- Запустите Terminal (
Программы → Утилиты → Terminal). - Выполните команду:
Вам будет предложено ввести пароль администратора.sudo defaults write /Library/Preferences/com.apple.security.network.server EvaluateCertificates -bool NO - Перезапустите Mac или приложение, которое должно игнорировать ошибки сертификатов.
- Чтобы вернуть настройки в нормальное состояние (обязательно!), выполните:
Или установите значение обратно вsudo defaults delete /Library/Preferences/com.apple.security.network.server EvaluateCertificatesYES.
Профилактика
- Поддерживайте актуальность системы. Регулярно устанавливайте обновления macOS (
Системные настройки → Обновление), так как они содержат актуальные корневые сертификаты и исправления безопасности. - Используйте доверенные сертификаты. Для внутренних сервисов и разработки рассмотрите возможность создания собственного центра сертификации (CA) и установки его корневого сертификата в доверенные на всех рабочих машинах.
- Проверяйте дату и время. Включите автоматическую синхронизацию с серверами времени.
- Будьте осторожны с самоподписанными сертификатами. Не добавляйте в доверенные неизвестные или подозрительные сертификаты, полученные из ненадёжных источников.
- Регулярно просматривайте хранилище сертификатов. В
Keychain Accessпериодически проверяйте разделСистемана наличие старых или ненужных сертификатов и удаляйте их.