Диагностика отказов Squid в SELinux
Различайте правила доступа Squid, права файловой системы, метки портов и отказы политики безопасности хоста, прежде чем менять принудительное применение.
Отказ в доступе HTTP, создаваемый Squid, и сообщение “Permission denied” операционной системы возникают на разных границах. Определите, открывал ли Squid файл, привязывал сокет, подключался наружу или отклонял запрос клиента.
Сопоставьте событие аудита
В системах SELinux сопоставьте ошибку службы с её записью аудита. Исходный домен, тип цели, класс объекта и запрещённое разрешение показывают, какую операцию заблокировала политика. Правильное владение в Unix не доказывает, что метка безопасности подходит.
Пользовательский порт прослушивания может требовать соответствующей метки порта. Перемещённый каталог журналов или кэша может требовать маркировки файлов. При сбое пути журнала Squid также проверьте обход каталогов и права записи, прежде чем относить его к метке. Разрешение для необычной исходящей службы — снова другая операция; примеры Squid SELinux от Red Hat различают эти случаи.
Используйте политику установленного дистрибутива и рекомендации по администрированию. Пути пакетов, метки и ограничение могут различаться между образами. В системах с AppArmor изучайте его профиль вместо применения команд SELinux.
Исправьте политику или расположение, на которые указывают доказательства, сохраняя принудительное применение на хосте. Собственная аутентификация клиентов и правила доступа Squid продолжают действовать после устранения проблемы с политикой хоста.