Поиск и устранение неисправностей CuckooMX
postfix check ругается на строку с content_filter
Симптом: ошибка указывает на строку в master.cf, где указано -o content_filter=cuckoomx.
Причина: опция content_filter должна относиться к записи сервиса smtp … smtpd (продолжение той же многострочной записи с корректным отступом столбцов в master.cf). Отдельная строка только с -o content_filter=… без привязки к сервису часто приводит к синтаксической ошибке при проверке конфигурации.
Что сделать: откройте /etc/postfix/master.cf, убедитесь, что блок smtp inet … smtpd и опция -o content_filter=cuckoomx согласованы с рабочим примером в справочнике; выполните sudo postfix check.
Ошибки при отправке письма: не хватает модулей Perl
Симптом: в mail.log сообщения о невозможности загрузить модуль Perl (Can’t locate … in @INC).
Что сделать: установите недостающие пакеты модулей для вашего дистрибутива (аналог cpan/apt/dnf), перезапустите Postfix:
sudo systemctl reload postfix
Сверьте список use … в начале cuckoomx.pl из вашей ревизии.
API Cuckoo не принимает запросы
Симптомы: задачи в Cuckoo не появляются; curl к API возвращает 401, 404 или обрыв соединения. В mail.log при сбое постановки файла скрипт пишет строку вида Cuckoo API file submission failed с пояснением (в коде для 401 и 404 добавлены подсказки проверить api-token и api-url).
-
Проверьте
api-url: схемаhttp/https, хост и порт, отсутствие завершающего слэша в базовом URL (в поставке это явно указано в комментарии кcuckoomx.conf). -
Убедитесь, что запущен именно сервис
cuckoo api, а не только веб-интерфейс; см. справочник, раздел о порядке запуска. -
Проверьте
api-tokenна опечатки; частая ошибка — путаница латинской буквы «O» и цифры «0» в токене изcuckoo.conf. Если в Cuckoo токен отключён, оставьтеapi-tokenпустым. -
Убедитесь, что с узла Postfix до API нет блокировки межсетевым экраном; для
https://установите для Perl модуль HTTPS (см. справочник, зависимости Perl).
Письма зависают или долго обрабатываются
-
Проверьте доступность и нагрузку Cuckoo (очередь задач, число ВМ).
-
Проверьте место на диске в
outputdirи скорость диска. -
Увеличьте таймауты SMTP на клиентах только как временную меру; корневая причина обычно в фильтре или API.
Права доступа
Симптом: скрипт не читает конфиг или не может писать во временный каталог.
-
Пользователь в
user=сервисаpipeдолжен иметь чтениеcuckoomx.conf, запись в каталог карантина/вывода и право вызыватьsendmail. -
Избегайте постоянной работы с правами
777на продакшене; лучше выделить пользователя и группу и выдать ACL точечно.
Отладка по журналу
sudo tail -f /var/log/mail.log | grep -i cuckoomx
При необходимости временно усильте подробность логирования в конфигурации CuckooMX (если поддерживается вашей версией скрипта).
Вернуться к обзору: CuckooMX (Postfix и Cuckoo Sandbox).