Настройка DKIM записи через Postfix и OpenDKIM
DKIM, это стандарт, который связывает домен с почтовыми сообщениями.
DKIM необходим для предотвращения отправки почты злоумышленником от чужого имени (с чужим доменом в почтовом адресе). DKIM основан на асимметричной криптографии.
Говоря проще — отправитель (почтовый агент, например, Postfix) подписывает отправляемое сообщение своей подписью (закрытым ключом), получатель расшифровывает подпись с помощью открытого ключа, размещённого в DNS-записях отправителя и убеждается (на основе математических вычислений), что письмо не было изменено в процессе доставки. То есть, убеждается в том, что отправитель именно тот, за кого себя выдаёт (в том, что домен в почтовом сообщении принадлежит отправителю).
Устанавливаем OpenDKIM
yum install opendkim
Создаём публичный и закрытый (приватный) RSA ключ. -s — это селектор, именно с этим именем создастся ключ.
Следующая команда создаёт в каталоге /etc/postfix/dkim/ публичный и приватный ключ для домена alma-com.ru.
opendkim-genkey -D /etc/postfix/dkim/ -d alma-com.ru -s alma-com.ru
Устанавливаем права на приватный ключ и каталог:
#Устанавливаем права на приватный ключ chmod 600 /etc/postfix/dkim/alma-com.ru.private #Меняем владельца каталога chown -R opendkim /etc/postfix/dkim/
Файл /etc/opendkim.conf
приводим к виду:
Syslog yes #Режим подписи и проверка подписей Mode sv #Указываем список ключей KeyTable file:/etc/postfix/dkim/keytable #Соответствие ключей и доменов SigningTable file:/etc/postfix/dkim/signingtable
Создаем файл /etc/postfix/dkim/keytable
и в нём указываем информацию о приватном ключе:
#имя_ключа домен:селектор:/путь/до/ключа mail._domainkey.alma-com.ru alma-com.ru:mail:/etc/postfix/dkim/alma-com.ru.private
Для разных серверов можно установить разные dkim записи при помощи селектора selector1._domainkey.alma-com.ru
, например:
cloudapp1._domainkey 3600 IN TXT "v=DKIM1; k=rsa; t=s; p=NISfMA0GCSqGSI....ICAQAB"
cloudapp2._domainkey 3600 IN TXT "v=DKIM1; k=rsa; t=s; p=NISfMA0GCSqGSI....ICAQAB"
В файле /etc/postfix/dkim/signingtable
указываем домены, которые необходимо подписывать:
#домен имя ключа alma-com.ru mail._domainkey.alma-com.ru #можно указать несколько доменов #samdomen.net www._domainkey.samdomen.net
Создаём файл /etc/default/opendkim, если его нет и указываем сокет, который будет слушать OpenDKIM (другие директивы SOCKET необходимо закомментировать):
SOCKET="inet:8891@localhost"
Добавляем в /etc/postfix/main.cf:
milter_default_action = accept milter_protocol = 2 smtpd_milters = inet:localhost:8891 non_smtpd_milters = inet:localhost:8891
Затем перезапускаем Postfix и OpenDKIM:
service postfix restart service opendkim restart
#Если будут проблемы, можно проверить статус службы, если она не запустится service opendkim status
Осталось настроить DNS. Необходимо создать TXT-записи следующего вида в домене, p=NISf...AQAB
берем из публичного ключа /etc/postfix/dkim/alma-com.ru.txt
:
Хост mail._domainkey Значение v=DKIM1; g=*; k=rsa; p=NISf...AQAB TTL 300
Тестируем письмо. Проверить можно также в логах /var/log/maillog
.
Готово!
Настроим почту на 1С-Битрикс или Битрикс24 быстро и качественно! Большой опыт!
Выполним любые доработки сайта на Битриксе или внедрение портала Битрикс24. Заполните заявку и получите бесплатные рекомендации от специалиста!