Я получил много удовольствия от OpenDKIM - он активно работает на моем компьютере Debian, и вот мой код:
root@web1:~# tail -f /var/log/syslog | grep -i dkim
Sep 7 16:35:38 web1 sm-mta[1504]: 087FZbYw001504: Milter insert (1): header: DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;\n\td=web1.mydomain.com; s=web1; t=1599492938;\n\tbh=+j1V4TFBmUGM3frMlslpv/49yjR0n44tuVimZHHRn0Q=;\n\th=Date:To:From:Reply-To:Subject:From;\n\tb=Z1gNvmXGQZXdx3iXGDpAWsdROt8iBctCrf248LQWtpNq5D3803fEWgUWCo9Bi81Bx\n\t qpE3hKokZTfD3jHlmyuhV9kZMulxEVv+jcjBXaK5r2L4957mUYW4Ao+UgBycqM6jt9\n\t CuOE+YStbaWal5mNNtf0NplJCHbHYk25NTV1y2zs=
Однако когда Я тестирую подпись, используя https://www.appmaildev.com/en/dkim Я получаю DKIM-Result: permerror (no key)
Из результата хвоста, я полагаю Opendkim не передается необходимого, от, ответа и т.д., но это только мое предположение. Почему письмо не должно быть подписано?
Это мой /etc/opendkim.conf, но я не понимаю, где я увижу какие-либо дополнительные детали, такие как «LogWhy», который должен сгенерировать.
Syslog yes
UMask 007
Socket inet:8891@localhost
PidFile /var/run/opendkim/opendkim.pid
OversignHeaders From
TrustAnchorFile /usr/share/dns/root.key
UserID opendkim
Domain web1.mydomain.com
KeyFile /etc/opendkim/web1.private
Selector web1
LogWhy yes
Итак, чтобы было ясно - мой вопрос: Почему электронное письмо не подписывается с помощью DKIM?
Запись TXT
для соответствующего домена ( dig TXT web1._domainkey.mydomain.com
):
web1. _domainkey.mydomain.com. В 1799 TXT "v = DKIM1; к = RSA; р = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNa5dPxaE / o8nwuYd8H + qN2zfxC + 5H4Y6iHCYFd0mhMLyy3fMOUoR5rEccu + cDDtv1OP9r3ko17c5K + nKenxghYbZKoRQfZu + OO6qKz + Q5PODSpWlfugXJDBDcwxcNM + k8A4zXwohBFFddpZINZ7nAnpqNqYLxrEjutwpIfjbZIwIDAQAB"
отчеты MXtoolbox для web1 и mydomain.com записи могут быть сконфигурированы правильно [. 12242] Строка добавлена в sendmail.mc
INPUT_MAIL_FILTER (
opendkim ', S = inet: 8891 @ localhost')
Проблема заключалась в том, что я работал на поддомене, но тестировал весь домен при запуске dig
.
Полная команда должна была быть такой:
dig TXT web1._domainkey.web1.mydomain.com @8.8.8.8
Что показало бы отсутствие ключа и потребовало обсуждения с мой IPS, чтобы проверить, что пошло не так.