Предположим, что у нас есть два домена remontka.com и test.remontka.com и почтовый сервер, с которого идет отправка писем для этих доменов. Также на сервере есть два IP-адреса:
Нам нужно сделать так, чтобы:
Это делается в несколько этапов.
Наши задачи решаются с помощью настроек:
Рассмотрим процесс по шагам.
Отредактируем основной конфигурационный файл postfix:
vi /etc/postfix/main.cf
Нам нужно добавить или отредактировать опцию sender_dependent_default_transport_maps :
sender_dependent_default_transport_maps = hash:/etc/postfix/sender_transport
* в данном примере мы указываем, что правила для отправки находится в карте /etc/postfix/sender_transport .
Создадим файл с самой картой:
vi /etc/postfix/sender_transport
@remontka.com remontka_smtp:
@test.remontka.com test_smtp:
* в данном примере мы будем отправлять письма от разных доменов, каждый через свою очередь. Сами очереди мы создадим в файле master.cf.
И создадим саму карту:
postmap /etc/postfix/sender_transport
Теперь отредактируем файл master.cf:
vi /etc/postfix/master.cf
В самый низ добавим:
remontka_smtp unix — — n — — smtp
-o smtp_helo_name=mail.remontka.com
-o smtp_bind_address=1.2.3.4
test_smtp unix — — n — — smtp
-o smtp_helo_name=mail.test.remontka.com
-o smtp_bind_address=5.6.7.8
* мы создали две очереди в соответствии с правилами отправки. Для каждой очереди используются следующие правила:
Применяем настройки:
systemctl restart postfix
Очень важно, чтобы при smtp-запросах к нашему серверу (как правило, по порту 25), Postfix умел отдавать разные имена. В нашем примере это будут mail.remontka.com и mail.test.remontka.com .
Открываем файл:
vi /etc/postfix/master.cf
Находим настройку:
smtp inet n — y — — smtpd
…
И делаем из нее несколько:
1.2.3.4:smtp inet n — y — — smtpd
-o myhostname=mail.remontka.com
…
5.6.7.8:smtp inet n — y — — smtpd
-o myhostname=mail.test.remontka.com
…
* в нашем примере будет создано два слушателя — первый на IP 1.2.3.4 , который будет отдавать имя сервера mail.remontka.com , второй — 5.6.7.8 с именем mail.test.remontka.com .
Перезапускаем postfix:
systemctl restart postfix
Мы можем проверить настройку, используя Telnet .
Отдельно покажем, как настроить Postfix и Dovecot.
Открываем файл:
vi /etc/postfix/main.cf
Приводим настройки к следующему виду:
#smtpd_tls_cert_file = …
#smtpd_tls_key_file = …
smtpd_tls_chain_files =
/etc/postfix/cert.key,
/etc/postfix/cert.crt
tls_server_sni_maps = hash:/etc/postfix/vmail_ssl_map
* где:
Создаем файл:
vi /etc/postfix/vmail_ssl_map
mail.remontka.com /etc/postfix/ssl/mail.remontka.com/cert.key /etc/postfix/ssl/mail.remontka.com/cert.crt
mail.test.remontka.com /etc/postfix/ssl/mail.test.remontka.com/cert.key /etc/postfix/ssl/mail.test.remontka.com/cert.crt
* для каждого из hostname мы указали свой путь до пары сертификатов.
Создаем карту из vmail_ssl_map:
postmap -F /etc/postfix/vmail_ssl_map
Перезапускаем postfix:
systemctl restart postfix
Для проверки можно использовать команду openssl:
openssl s_client -starttls smtp -connect mail.remontka.com:25
openssl s_client -starttls smtp -connect mail.test.remontka.com:25
Открываем настройки SSL, как правила:
vi /etc/dovecot/conf.d/10-ssl.conf
Добавляем директивы local_name для каждого из домена:
local_name mail.remontka.com {
ssl_cert = </etc/postfix/ssl/mail.remontka.com/cert.crt
ssl_key = </etc/postfix/ssl/mail.remontka.com/cert.key
}
local_name mail.test.remontka.com {
ssl_cert = </etc/postfix/ssl/mail.test.remontka.com/cert.crt
ssl_key = </etc/postfix/ssl/mail.test.remontka.com/cert.key
}
Перезапускаем dovecot:
systemctl restart dovecot
Для проверки также используем openssl:
openssl s_client -connect mail.remontka.com:993
openssl s_client -connect mail.test.remontka.com:993
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…