Перейти к содержимому
Обложка сообщества Разное

Почтовый Relay на Postfix для пересылки писем через почтовый сервер провайдера.

В одной организации использовалась корпоративная электронная почта от Microsoft под названием office 365. Это Exchange Online — облачный сервис электронной почты для организаций.

Все работали в одной локальной сети, т.е. почтовые клиенты были в одной локальной сети.

Поставили такую задачу.

Нужно поднять Relay (почтовый пересыпщик), для того, чтобы все письма из локальной сети попадали на локальный Relay, а этот Relay будет пересылать почту через основной почтовый сервер, находящийся где-то в облаке - office 365.

  • Письма от клиентов будут идти на Relay по протоколу SMTP.
  • Relay будет работать для клиентов только из локальной сети.
  • От Relay к почтовому серверу по протоколу SMTP.
  • На Relay почтовых ящиков нет, они на почтовом сервере.
  • Забираются письма с сервера клиентами по протоколу POP3.
  • Почтовый сервер в облаке требует SMTP аутентификацию.
  • На почтовом сервере 50 ящиков, которые принадлежат этой компании.

Решение.

Устанавливать postfix будем на ubuntu 14.04. И так, у нас есть установленная система, обновленная. Приступаем устанавливать:


$ sudo apt-get install mailutils

Во время установки появится всплывающее окно. Выберите в качестве сервера Internet Site, а в качестве FQDN укажите hostname сервера.

Далее нужно отредактировать главный конфигурационный файл postfix - /etc/postfix/main.cf


$ sudo nano /etc/postfix/main.cf

Указываем в качестве значения параметра relayhost - адрес smtp сервера:


relayhost = [smtp.office365.com]:587

Указываем сеть, из которой разрешено принимать соединения на нашем relay - это наша локальная сеть:


mynetworks = 192.168.1.0/24

И ниже дописываем секцию:

# Relaying Postfix SMTP via GMAIL
smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

На этом редактирование заканчиваем, сохраняем конфигурационный файл и закрываем его.

Далее нужно занести учетные данные для аутентификации на почтовом сервере. Редактируем /etc/postfix/sender_relay, добовляя учетные данные, для пересылки на наш сервер:


$ sudo nano /etc/postfix/sender_relay

Вносим:

[email protected]    [smtp.office365.com]:587
[email protected] [smtp.office365.com]:587
[email protected] [smtp.office365.com]:587
[email protected] [smtp.office365.com]:587

Далее правим /etc/postfix/sasl_passwd, тут нужно указать учетные данные с паролями:


$ sudo nano /etc/postfix/sasl_passwd

Вносим в таком формате - учетные данные приходящие (они записаны в /etc/postfix/sender_relay), далее учетные данные на сервере, двоеточие и пароль от почтового ящика:

[email protected]    [email protected]:password
[email protected] [email protected]:password
[email protected] [email protected]:password
[email protected] [email protected]:password

Сохраняем конфигурационный файл, закрываем.

Меняем права доступа к файлу, где у нас хранятся пароли:

$ sudo chmod 400 /etc/postfix/sasl_passwd

Делаем hash из файлов /etc/postfix/sender_relay и /etc/postfix/sasl_passwd. У нас получатся файлы sasl_passwd.db и sender_relay.db. Именно этими файлами и будет пользоваться postfix.


$ sudo postmap /etc/postfix/sender_relay

$ sudo postmap /etc/postfix/sasl_passwd

Добавляем в postfix сертификат этой командой. Главное проверьте, что у вас есть файл /etc/ssl/certs/Thawte_Premium_Server_CA.pem, или выберете другой:


$ cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem

Перезагружаем pstfix:


$ sudo service postfix restart

Действия на клиенте.

В почтовом клиенте до создания локального Relay, были такие настройки:

  • smtp: smtp.office365.com:587
  • pop: outlook.office365.com:995
  • логин и пароль для smtp: [email protected] / password
  • логин и пароль для pop: такие же.

После создания нашего relay, изменился только адрес smtp:

  • smtp: ip_relay:25
  • pop: outlook.office365.com:995
  • логин и пароль для smtp: [email protected] / password
  • логин и пароль для pop: такие

Какие изменения это дало?

Тут мы преследовали одну задачу, а именно ускорить отправку писем. Почтовый relay решил эту задачу, почта из клиента уходит моментально, так как relay и клиент находится в одной локальной сети.

0
1
4147

Еще по теме

Почтовый Relay на Postfix для пересылки писем через почтовый сервер провайдера. - Yvision.kz