Я установил IRedMail на сервере AWS, поэтому почтовый стек выглядит примерно так:
Я пытаюсь пересылать электронные письма в Gmail с помощью плагина Managesieve в Roundcube. Переадресованные электронные письма возвращаются с сообщением
554 Transaction failed: Duplicate header 'DKIM-Signature'.
если отправлено из другой учетной записи в этом домене, и
554 Message rejected: Email address is not verified.
(in reply to end of DATA command)
если отправлено из внешнего аккаунта. Добавление учетной записи в качестве учетной записи «От кого» в Gmail не сделало ее достаточно гибкой для принятия пересылаемых сообщений. Как я мог отладить это?
Оба сообщения об ошибках были отправлены Amazon SES. В этот раз я постараюсь ответить на первое сообщение об ошибке.
554 Transaction failed: Duplicate header 'DKIM-Signature'.
Первая ошибка указала на то, что Amazon SES видит два заголовка DKIM-Signature в вашем электронном письме (после его пересылки). Похоже, в вашем почтовом стеке есть программа DKIM, о которой вы забыли упомянуть. Поэтому в вашем первом сообщении об ошибке поток электронной почты выглядит следующим образом
anotheraccount@example.com -> DKIM signing -> youraccount@example.com -> sieve-forwarding-service -> DKIM signing -> amazon SES
В вашем почтовом потоке есть два действия подписания DKIM. Итак, в вашем пересылаемом письме есть два заголовка DKIM-Signature.
Я не знаю, какое программное обеспечение DKIM у вас в стеке. Итак, решение зависит от программного обеспечения DKIM.
Например, в OpenDKIM есть параметр для удаления старого заголовка DKIM-Signature при подписании. Этот параметр УдалитьСтарыеПодпись. Документация говорит, что значение по умолчанию нет.
RemoveOldSignatures (логическое значение)
Removes all existing signatures when operating in signing mode.