Просмотрено
Tag: email

Настройка sendmail + opendkim на Ubuntu

Настройка sendmail + opendkim на Ubuntu

настройка sendmail opendkim ubuntu

Для начала необходимо установить сам sendmail.

apt install sendmail

Редактируем hosts

nano /etc/hosts

и добавляем туда строку

127.0.0.1 localhost domain.com

Обратите внимание! Везде где указан domain.com — меняем на свой реальный домен.

Ставим opendkim и opendkim-toolsе

apt-get install opendkim opendkim-tools

Создаем папку где будут храниться ключи

mkdir -p /etc/opendkim/keys/domain.com

Генерируем ключи

opendkim-genkey -D /etc/opendkim/keys/domain.com -d domain.com -s mail

После выполнения команды в папке /etc/opendkim/keys/domain.com появятся два файла mail.txt и mail.private
Для них необходимо назначить права доступа

chown -R opendkim:opendkim /etc/opendkim/keys/domain.com
chmod 640 /etc/opendkim/keys/domain.com/mail.private
chmod 644 /etc/opendkim/keys/domain.com/mail.txt

Редактируем конфигурацию opendkim

nano /etc/opendkim.conf

Удаляем все и вставляем данную конфигурацию.

AutoRestart Yes
AutoRestartRate 10/1h
UMask 002
Syslog yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:8891@127.0.0.1
Domain domain.com
Selector mail

Создаем три файла и добавляем в них необходимую конфигурацию

nano /etc/opendkim/KeyTable
mail._domainkey.domain.com domain.com:mail:/etc/opendkim/keys/domain.com/mail.private
nano /etc/opendkim/SigningTable
*@domain.com mail._domainkey.domain.com
nano /etc/opendkim/TrustedHosts
127.0.0.1
localhost
domain.com

Открываем конфиг sendmail

nano /etc/mail/sendmail.mc

и добавляем в конец

INPUT_MAIL_FILTER(`opendkim', `S=inet:8891@127.0.0.1')

Открываем конфиг opendkim

nano /etc/default/opendkim

и расскоментируем строку SOCKET=»inet:8891@localhost«
Если ее нету, то просто добавляем в конец.

Пересобирем конфиг opendkim и перезапускаем службы

sendmailconfig
systemctl restart sendmail
systemctl restart opendkim

Теперь необходимо добавить TXT запись домена.
Субдомен указываем mail._domainkey, а значение берем из файла /etc/opendkim/keys/domain.com/mail.txt
Пример:

v=DKIM1; h=sha256; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1hrOt283HUPBskuF2f6Dij9BDxxx+Gz09lGUu7dp8lL8S7it3SI2HQRqgM/HlsNoRihNxxx/Edgs8FFoaru4N7b8QXJirXxpe7yJRbnUhYacFVxxxGuFJPpRr6LNSVWhWh8d4Z2e2af2n2VJVbb5ByP3b6MxxxKYw8gj1oVyHVq+kM7jLzOvA8zu9NyPaPhKcF68ZVCnkrON4lgUzQwLwJHo3I5YF7zwAK5jDRZlriI8aXkzxxxSYlyzMFyd6E/5s9TwO40UyhfEl3WooLRaB27ty5MBdg4pJtch4IiM4FhslxRDf1d7juuDktL81YdDosD4RDBgphl6lZoOynOe9wIDAQAB

На этом настройка sendmail + dkim завершена. Проверить работоспособность dkim можно на https://www.mail-tester.com/