Synology Mail Server 550 5.7.0 bad DKIM signature data
Сотрудники пожаловались, что от некоторых клиентов не приходит почта. Она не приходит даже в том случае, если в список разрешенных добавить домен отправителя или даже ip адрес почтового сервера отправителя. Выяснилось, что все эти клиенты используют используют Microsoft Outlook Всем этим клиентам письма возвращались с пометкой 550 5.7.0 bad DKIM signature data. Диагностика по логам выявила ошибку проверки подписи DKIM.
Проблема с Microsoft Outlook достаточно известная, но не будешь же убеждать каждого такого клиента пересаживаться на другой почтовый софт. Таким образом, решать задачу предстоит на стороне сервера. Приступим:
- Необходимо подключиться к Synology по SSH с правами администратора.
- Открываем файл @appstore/MailServer/etc/template/opendkim.template
- Ищем в нем параметр On-BadSignature. Он находится обычно в 383 строке или где-то рядом
- Заменяем On-BadSignature reject на On-BadSignature accept
- Перезапускаем почтовый сервер
Что мы сделали? Фактически мы разрешили принимать сообщения с неправильной подписью DKIM. Да, разрешение всего это действа несколько противоречит самой идее DKIM, но нам необходимо принимать письма, продолжая при этом подписывать свои. Если выключить проверку подлинности по DKIM в настройках безопасности, то наш сервер перестанет подписывать наши письма, что приведет к ухудшению доставляемости уже наших писем.
В результате произведенных манипуляций все письма от Microsoft Outlook проходят успешно.
А вот что говорит про параметр On-BadSignature документация по Opendkim
On-BadSignature (строка)
Выбор действия, которое будет выполнено в случае, если подпись не прошла проверку. Возможные значения (с сокращенными формами в скобках):
- accept (a) — принять сообщение;
- discard (d) — отклонить сообщение;
- quarantine (q) — поместить сообщение в карантин;
- reject (r) — отклонить сообщение;
- tempfail (t) — временно отклонить сообщение. Обратите внимание, что флаг «t» (тестирование) в ключе DKIM обходит это ограничение. Неверная подпись, ссылающаяся на флаг тестирования, всё равно будет доставлена, хотя в добавленном поле «Результаты аутентификации» будет указан как неудачный результат, так и режим тестирования, чтобы получатели сообщения могли принять соответствующие меры.