Астра линукс настройка dovecot,exim4
13.2.1. Настройка агента доставки сообщений
Настройка агента доставки сообщений СЭП (MDA) Dovecot осуществляется путем
правки конфигурационного файла /etc/dovecot/dovecot.conf и конфигурационных
файлов в каталоге /etc/dovecot/conf.d.
В файле /etc/dovecot/dovecot.conf необходимо задать список интерфейсов, с
которых будут приниматься соединения, и установить протокол IMAP, например:
protocols = imap listen = 192.168.2.55
Для настройки аутентификации с использованием PAM в конфигурационном файле
/etc/dovecot/conf.d/10-auth.conf необходимо установить:
disable_plaintext_auth = no auth_mechanisms = plain
Агент доставки сообщений СЭП (MDA) Dovecot для PAM-аутентификации использует
сценарий PAM, содержащийся в конфигурационном файле /etc/pam.d/dovecot. PAMсценарий для Dovecot включает common-auth и common-account. По умолчанию в ОС
для фиксации числа неверных попыток входа пользователей применяется PAM-модуль
pam_tally. Использование pam_tally в секции auth в файле /etc/pam.d/common-auth
обеспечивает увеличение счетчика неверных попыток входа пользователя при начале
процесса аутентификации. Для сброса счетчика неверных попыток входа пользователя
после успешной аутентификации в Dovecot необходимо в сценарий PAM, содержащийся в
конфигурационном файле /etc/pam.d/dovecot, добавить использование pam_tally в
269
РУСБ.10015-01 95 01-1
секции account.PAM-сценарий для Dovecot будет иметь следующий вид:
@include common-auth @include common-account @include common-session account required pam_tally.so
В случае когда SSL не будет использоваться в конфигурационном файле
/etc/dovecot/conf.d/10-ssl.conf, необходимо установить:
Для настройки встроенного в MDA Dovecot сервера SASL, к которому будет обращаться MTA Exim4 для аутентификации пользователей с использованием PAM, в конфигурационном файле /etc/dovecot/conf.d/10-master.conf в секцию service auth
необходимо добавить:
systemctl restart dovecot
13.2.2. Настройка агента передачи сообщений
Для настройки агента передачи сообщений СЭП (MTA) Exim4 требуется инициировать переконфигурирование пакета exim4-config, для этого выполнить в эмуляторе
терминала команду:
sudo dpkg-reconfigure exim4-config
В появившемся окне настройки для указанных ниже параметров необходимо установить следующие значения:
— общий тип почтовой конфигурации: интернет-сайт; прием и отправка почты напрямую, используя SMTP;
— почтовое имя системы: имя_домена;
— IP-адреса, с которых следует ожидать входящие соединения: IP-адрес_сервера
(например, 192.168.32.1);
— другие места назначения, для которых должна приниматься почта: имя_домена;
— домены, для которых доступна релейная передача почты: оставить пустым;
— компьютеры, для которых доступна релейная передача почты: оставить пустым;
— сокращать количество DNS-запросов до минимума: Нет;
— метод доставки локальной почты: Maildir — формат в домашнем каталоге;
— разделить конфигурацию на
270
РУСБ.10015-01 95 01-1
Если возникла необходимость изменить расположение каталога
/var/spool/exim4, убедиться, что каталог exim4, подкаталоги db input, msglog,
файлы db/retry, db/retry.lockfile имеют метки безопасности 0. EHOLE. Если это
не так, установить соответствующие метки на указанные каталоги и файлы командами:
sudo cd new_dir sudo pdpl-file 0. EHOLE . db input msglog db/retry db/retry.lockfile
Если возникла необходимость изменить расположение каталога хранилища локальной почты /var/mail, убедиться, что на новый каталог установлены права 1777, если это
не так, установить командой:
Для нормальной работы exim4-daemon-heavy необходимо в каталоге /var/mail
удалить файл с именем пользователя, созданного при установке системы.
В каталоге /etc/exim4/conf.d/auth необходимо создать файл с именем
05_dovecot_login и следующим содержимым:
dovecot_plain: driver = dovecot public_name = plain server_socket = /var/run/dovecot/auth-client server_set_id = $auth1
Для запрета отправки писем без аутентификации в конфигурационном
файле /etc/exim4/conf.d/acl/30_exim4-config_check_rcpt в начало секции
acl_check_rcpt добавить строки:
deny message = "Auth required" hosts = *:+relay_from_hosts !authenticated = *
Настройку сквозной авторизации для сервера и клиента, работающих в рамках ЕПП,
см. в 13.4.
Настроить автоматический запуск службы MТA Exim4, выполнив команду:
systemctl restart dovecot
13.3. Настройка клиентский части
Первичное создание для пользователя учетной записи СЭП в MUA Mozilla
Thunderbird должно производиться в нулевом мандатном контексте (значение уровня —
0, категорий — нет). Далее для каждого конкретного мандатного контекста (значение уровня
и набор категорий) создание учетной записи необходимо повторить.
271
РУСБ.10015-01 95 01-1
При создании учетной записи пользователя СЭП в MUA Mozilla Thunderbird необходимо выбрать тип используемого сервера входящей почты IMAP. При настройке учетной
записи установить в параметрах сервера и параметрах сервера исходящей почты:
— защита соединения: Нет;
— использование метода аутентификации: Обычный пароль.
При в Thunderbird пишешь название сервера и он подгружает настройки для входа в аккаунт. Вот не могу понять как добавлять нового пользователя (почты) во все это великолепие.
Настройка почты в Astra Linux 1.5 ALD
Необходимо настроить сервер электронной почты, работающий в рамках домена Astra Linux 1.5 SE. Исходные данные:
Параметр | Значение |
---|---|
Имя домена | local.net |
FQDN сервера | server.local.net |
IP-адрес сервера | 192.168.0.1 |
Маска сети: | 255.255.255.0 |
Настройка сети
Отключаем графический менеджер управления сетевыми подключениями wicd .
Прописываем настройки сети в файле /etc/network/interfaces
auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.1 network 192.168.0.0 broadcast 192.168.0.255 dns-nameservers 192.168.0.1 dns-search local.lan
После этого нужно выполнить перезапуск демона сети:
service networking stop && service networking start
В документации к демону networking написано, что команда restart является устаревшей и работает не так, как ожидается.
Необходимо в файле /etc/hosts прописать соответствие FQDN сервера и его IP-адреса, а также задать hostname
127.0.0.1 localhost 192.168.0.1 server.local.net server 192.168.0.101 arm01.local.net arm01 192.168.0.102 arm02.local.net arm02 192.168.0.103 arm03.local.net arm03
В файле /etc/hostname меняем краткое имя компьютера server на полное server.local.net , а также изменяем текущее значение системной переменной:
echo server.local.net > /etc/hostname hostname server.local.net
Инициализация домена
Действуем согласно официальной инструкции от РусБиТех:
Появится уведомление о том, что команда init уничтожит всю базу данных LDAP и Kerberos, будут остановлены и перезапущены службы, и упадет с неба большая звезда, горящая подобно светильнику, и падет на третью часть рек и на источники вод. Отвечаем утвердительно
Попросят ввести пароли для доступа к базе данных Kerberos и пароль администратора Astra Linux Directory. Лучше записать куда-нибудь, потому что понадобится ещё не раз.
Спустя какое-то время на экране появится сообщение:
Astra Linux Directory сконфигурирована. Сервер ALD активен. Клиент ALD включен. Astra Linux Directory сервер успешно инициализирован.
Установка и настройка почтовых сервисов.
Необходимо установить три пакета:
Пакет | Описание |
---|---|
exim4-daemon-heavy | Передает сообщения и умеет работать с мандатными метками. |
dovecot-imapd | Умеет отдавать почту клиентам. |
dovecot-gssapi | Умеет принимать авторизацию на сервере через Kerberos (ALD). |
Отдельно отмечу, что сразу же после установки нужно будет запустить конфигурирование exim4 .
aptitude install exim4-daemon-heavy dovecot-imapd dovecot-gssapi -y dpkg-reconfigure exim4-config
Процесс настройки exim4 не очень сложный, но нужно правильно ответить на несколько вопросов.
Вопрос | Ответ |
---|---|
Общий тип почтовой конфигурации | интернет-сайт; приём и отправка почты напрямую, используя SMTP |
Почтовое имя системы: | local.net |
IP-адреса, с которых следует ожидать входящие соединения SMTP: | 192.168.0.1 |
Другие места назначения, для которых должна приниматься почта: | local.net |
Домены, для которых доступна релейная передача почты: | Оставляем пустым |
Машины, для которых доступна релейная передача почты: | Оставляем пустым |
Сокращать количество DNS-запросов до минимума (дозвон по требованию)? | Нет |
Метод доставки локальной почты: | Maildir формат в домашнем каталоге |
Разделить конфигурацию на маленькие файлы? | Да |
Теперь нужно удалить из каталога /var/mail файл с именем пользователя, созданного при установке системы (у меня обычно administrator ).
Создадим сервисы ALD для работы с почтой:
ald-admin service-add imap/server.local.lan ald-admin sgroup-svc-add imap/server.local.lan --sgroup=mac ald-admin sgroup-svc-add imap/server.local.lan --sgroup=mail ald-admin service-add smtp/server.local.lan ald-admin sgroup-svc-add smtp/server.local.lan --sgroup=mac ald-admin sgroup-svc-add smtp/server.local.lan --sgroup=mail ald-client update-svc-keytab imap/server.local.lan --ktfile="/var/lib/dovecot/dovecot.keytab" ald-client update-svc-keytab smtp/server.local.lan --ktfile="/var/lib/dovecot/dovecot.keytab"
Указывая имя сервиса, важно помнить, что после слеша указывается то же самое имя сервера, что и в файле /etc/hostname . Если даже в настройках Bind вы потом укажете, что mail.local.net и smtp.local.net являются всего лишь псевдонимами для server.local.net , почта работать не будет, потому что Kerberos очень строго проверяет этот параметр.
После создания файла ключей нужно предоставить доступ к нему для dovecot :
setfacl -m u:dovecot:x /var/lib/dovecot setfacl -m u:dovecot:r /var/lib/dovecot/dovecot.keytab
Dovecot
Выполняем настройку dovecot . Если убрать все комментарии из файлов, то получится примерно следующее (в тех файлах, где меняли):
!include_try /usr/share/dovecot/protocols.d/*.protocol protocols = imap listen = 192.168.0.1 dict <> !include conf.d/*.conf !include_try local.conf
disable_plaintext_auth = yes auth_mechanisms = gssapi auth_gssapi_hostname = server.local.lan auth_krb5_keytab = /var/lib/dovecot/dovecot.keytab !include auth-system.conf.ext
Я не могу в настройку SSL. Отключаем:
Маленькая настройка для корректной работы с почтой — добавляем в файле /etc/dovecot/conf.d/10-master.conf в секцию service auth :
Немного упрощаем себе и пользователям жизнь, автоматически создавая на сервере каталоги под входящие, отправленные и удаленные письма при первой авторизации (параметр auto = subscribe ).
namespace inbox < mailbox Drafts < special_use = \Drafts auto = subscribe >mailbox Junk < special_use = \Junk >mailbox Trash < special_use = \Trash auto = subscribe >mailbox Sent < special_use = \Sent auto = subscribe >>
Расположение каталогов внутри /var/mail/%username% можно изменить, сделав более удобным, если в /etc/dovecot/conf.d/10-mail.conf немного изменить параметр mail_location :
mail_location = maildir:/var/mail/%u:LAYOUT=fs
Exim4
Теперь нужно сделать пару дополнительных настроек Exim4.
dovecot_gssapi: driver = dovecot public_name = GSSAPI server_socket = /var/run/dovecot/auth-client server_set_id = $auth1 # В конце цифра один, а не маленькая эль
Файл /etc/exim4/conf.d/acl/30_exim4-config_check_rcpt очень большой, поэтому не привожу его полностью. В самом начале нужно добавить в секцию acl_check_rcpt 4 строки, чтобы выглядело примерно так:
acl_check_rcpt: deny message = "Auth required" hosts = *:+relay_from_hosts !authenticated = * accept: hosts = : control = dkim_disable_verify # и так далее
Проверка работоспособности
Заходим от имени пользователя ALD. Запускаем Thunderbird и создаем новую учетную запись. В параметрах IMAP- и SMTP-серверов пишем одно и то же — server.local.net . При нажатии кнопки «Проверка параметров» параметры авторизации должны измениться на Kerberos/GSSAPI. Сохраняем, перезапускаем почтовый клиент. После второго запуска должно загрузиться дерево папок с сервера. Пишем письмо сами себе, если пришло — все хорошо. Если нет — очень внимательно проверяем содержимое всех конфигурационных файлов. Я сам потерял три дня из-за того, что в одном месте пропустил всего одну строку.