Анкета для регистрации интернет-ресурса
В соответствии с Указом Президента Республики Беларусь № 60 от 01.02.2010г.
Техподдержка
Приложение support.by

E-mail: ticket@support.by

 

Портал > База знаний > Bitrix > Настройка почтового сервера Exim в «Битркс: Веб-окружение»


Настройка почтового сервера 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.ml

DKIM-подпись добавляем в следующем виде (скобки и внутренние кавычки нужно удалить):

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