четверг, 8 ноября 2012 г.

Backup MX Postfix - резервный почтовый сервер

Данное решение не является самым правильным, но оно вполне рабочее.

Ситуация такая, у нас в организации есть Exchange сервер, который обслуживает ящики @domain.ru, мы слишком бедная контора да и затраты себя не оправдают, поэтому у нас нет ни какого резервирования канала через AS, наш провайдер очень редко, но отваливается и в этот момент мы теряем кучу писем от наших клиентов, а следовательно теряем доход.

Для решения директор у себя дома поднимает сервер на другом провайдере, в другом районе города, ну чтобы много не тратить электричества, он использует старый нетбук с поломанным экраном, ставит на ноутбук Debian минимальной сборки без всего лишнего.

Для нашего домена прописываем такие строчки в DNS
domain.ru IN MX 10 mx.domain.ru
domain.ru IN MX 30 backupxm.domain.ru
backupmx IN A IP_адрес_директора
mx IN A IP_адрес_офиса

Далее, чтобы почтовик директора воспринимался нормально, директор звонит своему провайдеру и просит прописать обратную запись PTR на свой IP, чтобы при запросе:

nslookup IP_адрес_директора

выдавало backupmx.domain.ru 

Всё остальное - дело техники

1. Пробросить 25 порт на свой нетбук (обычно у всех wifi роутеры стоят дома)
2. apt-get install postfix
3. nano /etc/postfix/main.cf

myhostname = backupmx.domain.ru
mydomain = $myhostname
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname
mynetworks = localhost

#параметры доставки
queue_run_delay=3m
minimal_backoff_time=6m
maximal_backoff_time=9m
maximal_queue_lifetime=30d

#домены, на которые пересылать почту
relay_domains = domain.ru

smtpd_etrn_restrictions = reject
disable_vrfy_command = yes
smtpd_helo_required = yes

smtpd_client_restrictions = 

 permit_mynetworks
 reject_unknown_client
 

smtpd_relay_restrictions = 
 permit_mynetworks 
 check_relay_domains

smtpd_recipient_restrictions=
 permit_sasl_authenticated
 permit_mynetworks
 reject_unauth_destination
 reject_invalid_hostname
 reject_non_fqdn_hostname
 reject_non_fqdn_sender
 reject_non_fqdn_recipient
 reject_unknown_sender_domain
 reject_unknown_recipient_domain

#проверка IP спамеров через публичные базы
 reject_rbl_client sbl.spamhaus.org
 reject_rbl_client cbl.abuseat.org
 reject_rbl_client dul.dnsbl.sorbs.net

 

поменять нужно только строки, помеченные красным цветом, ну и еще если вы захотите отправлять через ваш почтовик мыло с каких то айпи, то можно прописать в mynetwork, еще можно покопаться с параметрами smtpd_relay_restrictions и smtpd_recipient_restrictions



Рекомендуемые к прочтению статьи

3 комментария:

  1. Все понятно, а как Exchange потом забирает с него почту, когда связь появилась?

    ОтветитьУдалить
  2. Те письма, которые попадают на резервный MX - зависают в цепочках на месяц максимум, доставленные на целевой сервер письма удаляются из цепочки, каждые 3 минуты сервер пытается доставить письма на основной MX.

    ОтветитьУдалить
    Ответы
    1. вариант смартхоста? ну и настроить Exchange, чтоб с него все принимал. Вариант.

      Удалить

Пишите комментарии с вопросами и пожеланиями, ну и благодарности получить будет приятно