Настройка DKIM на 1С-Битрикс виртуальной машине
Начнем с самого начала, что такое собственно сам DKIM. Фактически это еще один способ проверки разрешения данного сервера отправлять почту от текущего почтового ящика, но не средствами SPF, а с использованием более продвинутого SSL ключа.
- Для этого нам понадобится выполнить несколько действий:
-
- Установить opendkim;
- Исправить конфиг opendkim;
- Добавить проверку в postfix;
- Сгенерировать ключи и TXT-запись для домена.
Установка opendkim
Добавим репозиторий в centos (по умолчанию его нет):
- 64 bit:
-
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install -y opendkim
Правки конфига opendkim
- Исправим конфиг /etc/opendkim.conf согласно образцу:
-
/etc/opendkim.conf
-
AutoRestart Yes AutoRestartRate 10/1h LogWhy Yes Syslog Yes SyslogSuccess Yes Mode s Canonicalization relaxed/simple ExternalIgnoreList refile:/etc/opendkim/TrustedHosts InternalHosts refile:/etc/opendkim/TrustedHosts KeyTable refile:/etc/opendkim/KeyTable SigningTable refile:/etc/opendkim/SigningTable SignatureAlgorithm rsa-sha256 Socket inet:8891@localhost PidFile /var/run/opendkim/opendkim.pid UMask 022 UserID opendkim:opendkim TemporaryDirectory /var/tmp
Добавление проверки в postfix
- Добавим DKIM проверку в postfix, раскоментируем или добавим следующие строки. /etc/postfix/main.cf
-
# opendkim setup smtpd_milters = inet:localhost:8891 non_smtpd_milters = inet:localhost:8891 milter_default_action = accept milter_protocol = 2
Генерация ключей и TXT-записи для домена.
- Поскольку нам понадобится для каждого сайта отдельный SSL ключик, то создаем sh скрипт и запускаем его нужное количество раз, меняя только название домена
-
DOMAIN=klondike-studio.ru postmap /etc/postfix/virtual mkdir -p /etc/opendkim/keys/$DOMAIN cd /etc/opendkim/keys/$DOMAIN opendkim-genkey -D /etc/opendkim/keys/$DOMAIN/ -d $DOMAIN -s default chown -R opendkim:opendkim /etc/opendkim/keys/ chmod 600 /etc/opendkim/keys/$DOMAIN/default.txt chmod 640 /etc/opendkim/keys/$DOMAIN/default.private echo -e "default._domainkey.$DOMAIN $DOMAIN:default:/etc/opendkim/keys/$DOMAIN/default.private" >> /etc/opendkim/KeyTable echo -e "*@$DOMAIN default._domainkey.$DOMAIN" >> /etc/opendkim/SigningTable echo -e "$DOMAIN\nmail.$DOMAIN" >> /etc/opendkim/TrustedHosts chown -R opendkim:opendkim /etc/opendkim chmod -R go-wrx /etc/opendkim/keys hash -r service opendkim restart service postfix restart cat /etc/opendkim/keys/$DOMAIN/default.txt opendkim-testkey -vvv -d $DOMAIN -s default -k /etc/opendkim/keys/$DOMAIN/default.private
- Рестартуем service
-
opendkim start chkconfig opendkim on service postfix restart
Вставляем соответствующие записи в DNS TXT и проверяем:
- С консоли
-
# echo "DKIM Test" | mail -s "DKIM Testing" ваша_почта@ваш_домен.ru # tail -100 /var/log/maillog
- На сайте (ваш скрипт отправки почты)
-
wget -O - -q http://$DOMAIN/111.php
- Проверяем DNS-запись
-
host -t TXT default._domainkey.example.com 8.8.8.8
Также рекомендую сразу добавить записи DMARC.
Результат
- В результате у вас должно получиться следующее тело письма:
-
PTR — указывает на хост сервера
DKIM запись помечается как ’pass’
SPF запись помечается как ’pass’
DMARC запись помечается как ’pass’
Оставить комментарий
Комментарии (6)