Добавление DKIM записи для iRedMail
На почтовом сервере выполняется команда:
#sudo amavisd-new showkeys
Выдаётся результат вида:
# amavisd showkeys
dkim._domainkey.mydomain.com. 3600 TXT (
"v=DKIM1; p="
"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYArsr2BKbdhv9efugByf7LhaK"
"txFUt0ec5+1dWmcDv0WH0qZLFK711sibNN5LutvnaiuH+w3Kr8Ylbw8gq2j0UBok"
"FcMycUvOBd7nsYn/TUrOua3Nns+qKSJBy88IWSh2zHaGbjRYujyWSTjlPELJ0H+5"
"EV711qseo/omquskkwIDAQAB")
Чтобы сделать DKIM запись, понадобится только строчка вида:
v=DKIM1; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYArsr2BKbdhv9efugBy...
У меня эта запись в панели управления выглядела вот так:
Строчка без кавычек, но обязательно с «;».
После этого можно протестировать, была ли успешно добавлена запись.
@unix-garage:/$ sudo amavisd-new testkeys
Если добавление записи было выполнено успешно, то результат команды даст:
TESTING#1 mail.unix-garage.tk: dkim._domainkey.mail.unix-garage.tk => pass
Если что-то пошло не так, то будет сообщение:
TESTING#1 mail.unix-garage.tk: dkim._domainkey.mail.unix-garage.tk => invalid (public key: not available)
Стоит помнить, что для обновления добавленной запись DKIM может потребоваться какое-то ощутимое время (зависит от DNS сервера).
Если DKIM записей несколько, то сделать отдельную запись на каждый домен можно так:
amavisd-new genrsa /var/lib/dkim/new_domain.com.pem 1024 chown amavis:amavis /var/lib/dkim/new_domain.com.pem chmod 0400 /var/lib/dkim/new_domain.com.pem
Информация от всех записях хранится в файле nano /etc/amavis/conf.d/50-user. При переносе записей с одного сервера на другой, необходимо отредактировать этот файл в блоке «# Add dkim_key here.» и внести туда нужные строки вида:
#dkim_key("host.com", "dkim", "/var/lib/dkim/host.com.pem");
Проверить наличие DKIM записи можно тут — https://www.mail-tester.com/spf-dkim-check. Полезно в случае, если получается ошибка:
fail (bad RSA signature)
Это может быть неверное вписанный код (лишний пробел, например).
Использовалась официальная инструкция от iRedMail — http://www.iredmail.org/docs/setup.dns.html