Портал > База знаний > Bitrix > Настройка почтового сервера Exim в «Битркс: Веб-окружение»
В «Битркс: Веб-окружение» используется msmtp для отправки писем. Использование бесплатных почтовых сервисов имеет как свои преимущества так и недостатки. К недостаткам можно отнести лимит количества отправляемых сообщений в час, строгий контроль адреса отправителя. Эти ограничения не позволяют использовать больше одного почтового ящика для домена и организовать рассылку.
Рассмотрим вариант настройки простой конфигурации почтового сервера Exim в связке с сервером Dovecot для доступа к почтовым ящикам по протоколам POP3 и IMAP.
Начнем с настройки имени хоста. В последующем когда мы приступим к настройке DNS-записей, нам нужно будет добавить PTR-запись для нашего хоста. Большинство почтовых серверов проверяют PTR-запись и при ее отсутствии не принимают письма.
# hostnamectl set-hostname mail.support24.ml
Для работы почтового сервера нам необходимо добавить следующие DNS-записи — А, MX, DMARK, DKIM-подпись и PTR.
PTR-запись добавляется вашим провайдером и позволяет получить по IP-адресу имя хоста, она еще называется обратной записью:
# dig -x 185.66.71.33 +short
mail.support24.ml.
К DKIM-подписи мы вернемся после установки и настройки Exim и Dovecot, т. к. потребуется внести изменения в конфигурационный файл Exim.
Для работы Exim и Dovecot нам потребуется SSL-сертификат. Вы можете приобрести и использовать SSL-сертификаты от Sectido или получить бесплатный сертификат от Let’s Encrypt.
В случае если Вы получаете сертификат от Let’s Encrypt руководствуясь статьей из нашей Базы знаний, то предварительно создайте сайт с именем вашего hostname. Также выпустить бесплатный сертификат можно с помощью сервиса Free SSL Space.
Устанавливаем Exim и Dovecot:
# yum install exim dovecot -y
Прежде чем вносить изменения в конфигурационный файл Exim /etc/exim/exim.conf создадим его резервную копию:
# cp /etc/exim/exim.conf{,_backup}
Приведем следующие строки конфигурационного файла /etc/exim/exim.conf к виду:
# vim /etc/exim/exim.conf primary_hostname = mail.support24.ml domainlist local_domains = support24.ml tls_advertise_hosts = * tls_certificate = /etc/pki/tls/certs/exim.pem tls_privatekey = /etc/pki/tls/certs/exim.pem auth_advertise_hosts = *
В нашем примере мы используем hostname mail.support24.ml и домен support24.ml. Exim хранит приватный ключ и файлы сертификата в одном файле /etc/pki/tls/certs/exim.pem. Мы скопировали содержимое своих сертификатов и приватный ключ для домена mail.support24.ml в этот файл.
Секцию локальной доставки /etc/exim/exim.conf приведем к виду:
local_delivery: driver = appendfile directory = $home/Maildir maildir_format maildir_use_size_file delivery_date_add envelope_to_add return_path_add
И настроим аунтентификацию через Dovecot:
dovecot_login: driver = dovecot public_name = LOGIN server_socket = /var/run/dovecot/auth-client server_set_id = $auth1 dovecot_plain: driver = dovecot public_name = PLAIN server_socket = /var/run/dovecot/auth-client server_set_id = $auth1
Добавим Exim в автозагрузку и перезапустим для применения конфигруации:
# systemctl enable exim # systemctl restart exim
Сервер Dovecot хранит свою конфигурацию в разных файлах. Начнем с настройки SSL:
# vim /etc/dovecot/conf.d/10-ssl.conf ssl = yes ssl_cert = </etc/pki/tls/certs/exim.pem ssl_key = </etc/pki/tls/certs/exim.pem
Путь к файлам сертификатов такой же как и в конфигурационном файле Exim.
Выберем аунтентификацию по логину:
# vim /etc/dovecot/conf.d/10-auth.conf disable_plaintext_auth = no auth_mechanisms = plain login
Сообщим Dovecot расположение почтовых ящиков:
# vim /etc/dovecot/conf.d/10-mail.conf mail_location = maildir:~/Maildir
Настроим аунтентификацию:
# vim /etc/dovecot/conf.d/10-master.conf service auth { ... unix_listener auth-client { mode = 0660 user = exim } }
Добавим Dovecot в автозагрузку и перезапустим для применения конфигурации:
# systemctl enable dovecot # systemctl restart dovecot
Создадим локального пользователя и установим пароль:
# useradd -m info
# passwd infoНастриваем DKIM-подпись для домена.
Устанавливаем пакет opendkim:# yum install opendkim
Переименовываем конфигурационный файл /etc/opendkim.conf и создаем новый со следующим содержимым:
# mv /etc/opendkim.conf{,_backup}
# vim /etc/opendkim.conf
AutoRestart Yes
AutoRestartRate 10/1h
LogWhy Yes
Syslog Yes
SyslogSuccess Yes
Mode sv
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Создадим директорию с именем нашего домена, сгенерируем ключ, изменим владельца директории и переименуем ключ:
# mkdir /etc/opendkim/keys/support24.ml
# opendkim-genkey -D /etc/opendkim/keys/support24.ml/ -d support24.ml -s default
# chown -R opendkim: /etc/opendkim/keys/support24.ml
# mv /etc/opendkim/keys/support24.ml/default.private /etc/opendkim/keys/support24.ml/defaultДобавим следующую строку в конфигурационный файл /etc/opendkim/KeyTable:
# vi /etc/opendkim/KeyTable
default._domainkey.support24.ml support24.ml:default:/etc/opendkim/keys/support24.ml/defaultДобавим строку в конфигурационный файл /etc/opendkim/SigningTable:
# vi /etc/opendkim/SigningTable *@support24.ml default._domainkey.support24.ml
В конфигурационный файл /etc/opendkim/TrustedHosts добавим имя хоста и наш домен:
#vi /etc/opendkim/TrustedHosts 127.0.0.1 mail.support24.ml support24.ml
Прочитаем содержимое текстового файла /etc/opendkim/keys/support24.ml/default.txt и добавим DKIM-подпись для домена в менеджере DNS:
# cat /etc/opendkim/keys/support24.ml/default.txt
default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC/
rkQnVO+Nd60bl+XJBhBDIs8nus8m0mlpecB+OCf0vJL
3KJO2EukCwePdUQyrNZUxpMGQmPvayj0yUQO
MJ2H6nzj69YBf9+VIW3q8xHNR48RsBHrQeBIODaNBy4DGyGyzi
yHGXhpaNwObAuqND7HTagdYcEYxpT0OR34lE1eaHwIDAQAB" ) ; ----- DKIM key default for support24.mlDKIM-подпись добавляем в следующем виде (скобки и внутренние кавычки нужно удалить):
default._domainkey TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC/
rkQnVO+Nd60bl+XJBhBDIs8nus8m0mlpecB+OCf0vJL3KJO2EukCwePdUQyrNZUxpMGQmPvayj0yUQOMJ2H6nz
j69YBf9+VIW3q8xHNR48RsBHrQeBIODaNBy4DGyGyziyHGXhpaNwObAuqND7HTagdYcEYxpT0OR34lE1eaHwIDAQAB"После добавления DKIM-подписи Вы можете проверить ее с помощью утилиты dig:
# dig +short default._domainkey.support24.ml TXT
В конфигурационном файле Exim /etc/exim/exim.conf найдем секцию remote_smtp и приведем ее к следующему виду:
remote_smtp:
driver = smtp
dkim_domain = $sender_address_domain
dkim_selector = default
dkim_private_key = ${if exists{/etc/opendkim/keys/$sender_address_domain/default}{/etc/opendkim/keys/$sender_address_domain/default}{0}}
dkim_canon = relaxed
dkim_strict = 0Перезапустим службы:
# systemctl restart exim
# systemctl restart opendkimДля проверки работы почты подключимся к серверу с помощью почтового клиента Thunderbird:
Почтовый клиент автоматически определил настройки сервера:
Добавить в избранное Распечатать статью
Powered by WHMCompleteSolution