Найти тему
Типичный Админ

Установка и настройка Microsoft Exchange 2019 + Proxmox Mail Gateway.

Оглавление

В этой статье хочу рассмотреть установку и простую базовую настройку связки Microsoft Exchange 2019 + Proxmox Mail Gateway, где Microsoft Exchange 2019 выступает почтовым сервером, а Proxmox Mail Gateway выступает почтовым шлюзом для этого сервера и разгружает его фильтрацией спама (и не только).

Подобную связку я уже рассматривал. Было это давно, и тогда это была Zimbra 7 + кастомный почтовый шлюз:

https://typical-admin.ru/obshaya/linux-fedora/server-mail-ftp-jabber-mail-gateway1

Почтовый шлюз я также настраивал и на FreeBSD:

https://typical-admin.ru/obshaya/freebsd/mail-gateway-freebsd

Но это всё было давно. Сейчас же есть готовое решение, и почему бы его не попробовать.

Итак, имеется:

1. Машина с Windows server 2019 и настроенной ролью контроллера домена Active Directory.

2. Машина с голым Windows server 2019, являющаяся членом домена Active Directory.

3. Машина без ОС для последующей установки Proxmox Mail Gateway.

Этап 1. Установка и настройка Microsoft Exchange 2019.

Приступаю к установке Microsoft Exchange 2019 на машину с предустановленной Windows server 2019. Ссылки на дистрибутивы прикладывать не буду, т.к. сейчас на сайте Microsoft нет возможности их скачать. Пришлось искать по старинке. Запускаю установщик и на первом шаге отказываюсь от проверки обновлений, т.к. весь мой стенд тестовый. При установке боевого сервера лучше не отказываться от обновлений.

Жму Далее и дожидаюсь копирования файлов:

-2

Следующие два шага будут «Введение» и принятие лицензии, с ними всё понятно. Параметры оставляю рекомендуемые:

-3

При выборе роли сервера указываю, что это будет роль почтового ящика (она же mailbox) и ставлю галку, чтобы установщик сам автоматически поставил недостающие роли и компоненты для Windows:

-4

Жму «Далее». На следующем шаге выбираю каталог установки Exchange:

-5

Потом указываю имя организации:

-6

Защиту от вредоносных программ пока не отключаю. Если понадобится, отключу её уже после настройки Proxmox Mail Gateway.

-7

После чего запускается проверка готовности:

-8

И в итоге получаю кучу ошибок:

Ошибка:
Необходимо установить .NET Framework 4.8 (https://support.microsoft.com/kb/4503548).
Дополнительные сведения: https://docs.microsoft.com/Exchange/plan-and-deploy/system-requirements?view=exchserver-2019

Ошибка:
Схема Active Directory устарела, и эта учетная запись пользователя не входит в группу "Администраторы схемы" или "Администраторы предприятия".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.SchemaUpdateRequired.aspx

Ошибка:
Необходимо выполнить глобальные обновления Active Directory, но данная учетная запись пользователя не входит в группу "Администраторы предприятия".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.GlobalUpdateRequired.aspx

Ошибка:
Необходимо обновить локальный домен. Для продолжения необходимо быть членом групп "Администраторы домена", "Управление организацией" или группы "Администраторы предприятия".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.LocalDomainPrep.aspx

Ошибка:
Для продолжения необходимо быть членом группы ролей "Управление организацией" или группы "Администраторы предприятия".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.GlobalServerInstall.aspx

Ошибка:
Чтобы установить или обновить первую роль сервера почтовых ящиков в топологии, необходимо войти в систему с помощью учетной записи члена группы ролей "Управление организацией".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.DelegatedBridgeheadFirstInstall.aspx

Ошибка:
Чтобы установить первую роль сервера клиентского доступа в топологии, необходимо войти в систему с помощью учетной записи члена группы ролей "Управление организацией".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.DelegatedCafeFirstInstall.aspx

Ошибка:
Чтобы установить первую роль сервера клиентского доступа в топологии, необходимо войти в систему с помощью учетной записи члена группы ролей "Управление организацией".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.DelegatedFrontendTransportFirstInstall.aspx

Ошибка:
Чтобы установить или обновить первую роль сервера почтовых ящиков в топологии, необходимо войти в систему с помощью учетной записи члена группы ролей "Управление организацией".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.DelegatedMailboxFirstInstall.aspx

Ошибка:
Чтобы установить или обновить первую роль сервера клиентского доступа в топологии, необходимо войти в систему с помощью учетной записи члена группы ролей "Управление организацией".
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.DelegatedClientAccessFirstInstall.aspx

Ошибка:
На этом компьютере необходимо установить 64-разрядный пакет Microsoft Unified Communications Managed API 4.0 Core Runtime. Установите это ПО со страницы http://go.microsoft.com/fwlink/?LinkId=260990.
Дополнительные сведения: https://docs.microsoft.com/Exchange/plan-and-deploy/deployment-ref/readiness-checks?view=exchserver-2019

Ошибка:
Распространяемый пакет Visual C++ 2013 является необходимым компонентом. Установите требуемые двоичные файлы и повторно запустите установку. Чтобы скачать их, воспользуйтесь универсальным кодом ресурса (URI) https://www.microsoft.com/download/details.aspx?id=40784.
Дополнительные сведения: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.VC2013RedistDependencyRequirement.aspx

Из всего этого следует, что установщик может отнюдь не все дополнительные роли и компоненты установить сам. Нужно ему помочь:

1. Установить Распространяемый пакет Visual C++ 2013

2. Установить 64-разрядный пакет Microsoft Unified Communications Managed API 4.0 Core Runtime

3. Установить .NET Framework 4.8

4. Мой виндовый пользователь является администратором домена. Но его также надо включить в группу «Администраторы предприятия» и «Администратор схемы»:

-9

Ссылки для скачивая отсутствующих компонентов приложены прям в тексте с ошибками. Скачиваю и устанавливаю всё, что просит установщик.

Затем снова запускаю установщик Microsoft Exchange 2019. На этот раз получаю лишь пару предупреждений и жму кнопку «Установить»:

-10

Установка занимает довольно длительное время.

-11

После завершения установки жму «Готово» и перезагружаю сервер.

-12

Теперь перехожу к базовой настройке Microsoft Exchange 2019. Сначала настрою его так, чтобы он работал сам по себе, без почтового шлюза Proxmox. Протестирую, нормально ли уходят письма на внешние сервера (mail.ru, yandex.ru), а уже потом буду приделывать Proxmox Mail Gateway.

Захожу в Exchange Administrative Center:

-13

Логин и пароль — от доменного администратора. Логин ввожу в формате domain\user.

Добавлю доверенный домен. В разделе “Поток обработки почты” выбираю подраздел “Обслуживаемые домены” и нажимаю на кнопку “+”:

-14

В поле “Имя” и “Обслуживаемый домен” указываю домен, который необходимо добавить в доверенные, затем выбираю “Заслуживающий доверия домен. Электронная почта доставляется только допустимым получателям в этой организации Exchange. Вся почта, направленная неизвестным получателям, отклоняется.”. Нажимаю на кнопку “Сохранить”.

-15

Домен появился в списке обслуживаемых:

-16

Жму двойной клик мыши на созданном домене и в появившемся окне ставлю галку «Сделать доменом по умолчанию», затем кнопку «Сохранить»:

-17

Теперь необходимо создать политику по формированию почтовых адресов. В разделе “Поток обработки почты” выбираю подраздел “Политики адресов электронной почты” и нажимаю на кнопку “+”:

-18

Далее необходимо указать имя для новой политики и выбрать на кого она будет применяться, а также определить, как будут формироваться почтовые адреса в организации. У меня почтовые адреса будут формироваться на основе “Alias”. Указываю имя для политики по формированию почтовых адресов и нажимаю кнопку “+”:

-19

Указываю основной домен и выбираю “alias@contoso.com”. Нажимаю на кнопку “Сохранить”:

-20

После того как определено, как будут у меня формироваться почтовые адреса, нажимаю на кнопку “Сохранить”:

-21

Обращаю внимание на предупреждение:

-22

После того как политика будет добавлена, она появится в подразделе “Политики адресов электронной почты” со статусом “Не применена”. Для применения политики нажимаю надпись “Применить”:

-23

Теперь необходимо создать коннектор отправки для возможности отправлять почту за пределы организации. В разделе “Поток обработки почты” выбираю подраздел “Соединители отправки” и нажимаю на кнопку “+”:

-24

Указываю имя для нового коннектора отправки и в разделе “Тип” выбираю “Интернет”. Нажимаю на кнопку “Далее”:

-25

Пока что, отправка почты будет осуществляться согласно записям MX. Выбираю “Запись MX, связанная с доменом получателя” и нажимаю на кнопку “Далее”. Потом эта настройка будет изменена на отправку через Proxmox Mail Gateway.

-26

Далее необходимо указать, для каких доменов будет работать новый коннектор. Нажимаю на кнопку “+”:

-27

В поле “Полное доменное имя (FQDN)” указываю “*”. Таким образом, новый коннектор отправки будет обрабатывать все домены. Нажимаю на кнопку “Сохранить”:

-28

После указания для каких доменов будет работать новый коннектор, нажимаю на кнопку “Далее”:

-29

Затем нужно указать, на каком сервере Exchange будет создан коннектор отправки. Нажимаю на кнопку “+”:

-30

Выбираю сервер Exchange, на котором будет создан коннектор отправки. У меня он единственный. Нажимаю на кнопку “OK”:

-31

Все готово для создания коннектора отправки. Нажимаю на кнопку “Готово”:

-32

Далее в разделе “Поток обработки почты”, выбираю подраздел “Соединители отправки” и нажимаю на созданный коннектор отправки два раза левой кнопкой мыши:

-33

В разделе “общие” в меню “Максимальный размер отправляемых сообщений (МБ)” можно настроить максимально допустимый размер почтовых вложений для отправки:

-34

Далее в разделе “определение области” в поле “FQDN: Укажите полное доменное имя, которое этот соединитель будет предоставлять в ответ на запрос HELO или EHLO.” указываю имя, по которому почтовый сервер доступен из сети Интернет:

-35

Нажимаю на кнопку “Сохранить”.

В разделе “Поток обработки почты” выбираю подраздел “Соединители отправки”. Затем нажимаю на кнопку “” и выбираю “Параметры транспорта организации”:

-36

В разделе “число попыток (Limits)” можно настроить максимально допустимый размер почтовых вложений для отправки и приема. Указываю необходимые значения и нажимаю на кнопку “Сохранить”:

-37

Что же касается DNS-записей, то публичные записи для домена typical-admin.ru у меня выглядят вот так:

-38

Записи, не относящиеся к теме, я замазал. Да, сайт typical-admin.ru и Exchange сервер имеют один и тот же IP-адрес. На роутере проброс портов 80 и 443 ведёт на сервер с моим сайтом. Сайт typical-admin.ru работает на Nginx, который можно использовать как Reverse Proxy для вэб-интерфейса Exchange сервера. Не буду на этом сейчас заострять внимание.

Чтобы пользователи локальной сети, переходя по адресу mail.typical-admin.ru, попадали сразу на Exchange сервер напрямую на его локальный IP-адрес, надо на локальном DNS-сервере создать свою зону typical-admin.ru. Выглядеть это будет так:

-39

Указываю, что зона будет основной, но к Active Directory относиться не будет (галку снял):

-40

Жму «Далее» и на следующем шаге указываю название зоны:

-41

Жму «Далее» и на следующих шагах тоже «Далее»:

-42
-43

И потом внутри самой DNS-зоны делаю вот такие записи: А-запись:

-44

И MX-запись:

-45

Получается, что клиенты, заходящие из интернета на свою почту по адресу https://mail.typical-admin.ru, будут попадать на внешний IP-адрес (маршрутизатора, а дальше, через проброс порта, попадут на nginx, который, в свою очередь, передаст запрос на IIS Exchange сервера), а клиенты из локальной сети, заходящие на свою почту по адресу https://mail.typical-admin.ru, будут попадать на локальный IP-адрес Exchange сервера.

Теперь адрес mail.typical-admin.ru надо прописать в виртуальных каталогах в качестве внешнего. В разделе “Серверы” выбираю подраздел “Виртуальные каталоги” и выбираю виртуальную папку “owa (Default Web Site)”, а затем нажимаю на неё два раза левой кнопкой мыши:

-46

В разделе “общие” в поле “Внешний URL-адрес” указываю имя, по которому почтовый сервер доступен из сети Интернет, а также добавляю “/owa”:

-47

Жму «Сохранить».

Теперь пропишу адрес, по которому почтовый сервер доступен из сети Интернет, в конфигурацию сервера Exchange. В разделе “Серверы” выбираю подраздел “Виртуальные каталоги” и выбираю виртуальную папку “ecp (Default Web Site)”, а затем нажимаю на неё два раза левой кнопкой мыши:

-48

В разделе “общие” в поле “Внешний URL-адрес” указываю имя, по которому почтовый сервер доступен из сети Интернет, а также добавляю “/ecp”. Нажимаю на кнопку “Сохранить”.

-49

Аналогично прописываю и в остальных каталогах:

EWS (Default Web Site) → https://mail.typical-admin.ru/EWS/Exchange.asmx

mapi (Default Web Site) → https://mail.typical-admin.ru/mapi

Microsoft-Server-ActiveSync (Default Web Site) → https://mail.typical-admin.ru/Microsoft-Server-ActiveSync

OAB (Default Web Site) → https://mail.typical-admin.ru/OAB

PowerShell (Default Web Site) → http://mail.typical-admin.ru/powershell

Далее настрою сервис “Мобильный Outlook”. Данный сервис служит для подключения к серверу Exchange через Интернет при помощи “Outlook”. В разделе “Серверы” выбираю подраздел “Серверы”, выбираю сервер Exchange и нажимаю на него два раза левой кнопкой мыши:

-50

Далее в поле “Укажите имя внешнего узла (например, contoso.com) для подключения пользователей к вашей организации.” указываю имя, по которому почтовый сервер доступен из сети Интернет. Затем в меню “Укажите метод проверки подлинности для использования внешними клиентами при подключении к вашей организации” выбираю “NTLM” и снимаю галочку “Разрешить разгрузку SSL”. Нажимаю на кнопку “Сохранить”.

-51

Теперь пробую создать нового пользователя с почтовым ящиком. В разделе “Получатели” выбираю подраздел “Почтовые ящики”. Там нажимаю на кнопку “+” и выбираю “Почтовый ящик пользователя”.

-52

Теперь указываю псевдоним и имя для нового пользователя. Затем нужно выбрать Подразделение, в котором планируется создать нового пользователя. Нажимаю на кнопку “Обзор”:

-53

Выбираю подразделение, в которое необходимо поместить нового пользователя, и нажимаю на кнопку “OK”:

-54

В поле “Имя для входа” указываю логин для нового пользователя. Далее указываю пароль и нажимаю на кнопку “Сохранить”:

-55

После того как пользователь с почтовым ящиком будет создан, он появится в разделе “Почтовые ящики”:

-56

Нужно попробовать зайти под этим пользователем в свой почтовый ящик и попробовать отправить письма куда-нибудь.

-57

На Mail.ru и Яндекс письма пришли:

-58
-59

Теперь пробую ответить с Яндекса и Мэйла. Письма пришли:

-60

Хорошо, значит почта работает, письма ходят. Пришло время установить и прикрутить Proxmox Mail Gateway.

Этап 2. Установка и настройка Proxmox Mail Gateway.

ISO-образ скачиваю с официального сайта:

https://www.proxmox.com/en/downloads/category/iso-images-pmg

Интерфейс установщика точно такой же, как у гипервизора Proxmox:

-61

Выбор SSD или HDD диска, на который ставится система:

-62

Затем выбор часового пояса:

-63

Указание пароля суперпользователя:

-64

И настройка сетевых реквизитов системы:

-65

Всё, жму «Install»:

-66

После установки появится привычная линуксовая консоль. Установочный образ Proxmox Mail Gateway представляет из себя обычный Linux Debian с уже всеми предустановленными пакетами Proxmox. А значит к этой машине можно подключиться по SSH и делать всё, что можно в обычном Linux Debian.

У Proxmox есть репозитории для владельцев платной подписки и есть репозитории бесплатные. По умолчанию в системе активен репозиторий платной подписки. Его я отключу и пропишу репозиторий бесплатный. Для этого редактирую файл /etc/apt/sources.list.d/pmg-enterprise.list. Комментирую имеющуюся там строчку:

# deb https://enterprise.proxmox.com/debian/pmg bullseye pmg-enterprise

И добавляю строчку:

deb http://download.proxmox.com/debian/pmg bullseye pmg-no-subscription

Тут стоит обратить внимание на параметр bullseye – это версия ОС Debian. Более ранние дистрибутивы Proxmox работают на более ранних версиях Debian. А значит вместо bullseye (Debian 11) может быть, например, buster (Debian 10), stretch (Debian 9) и т.д.

Итак, после правки репозитория, делаю команды:

apt update
apt upgrade

для установки последних обновлений.

Во время обновления системных пакетов появилось окно с вопросом:

-67

Собственно, Freshclam — это пакет, отвечающий за обновление сигнатур антивирусника Clamav. Обновлятор говорит, что есть новая версия конфигурационного файла (freshclam.conf) для пакета Freshclam. Но уже имеющийся установленный файл freshclam.conf имеет некие изменения, отличающиеся от умолчательных значений. И вопрос в том, что делать с этим файлом freshclam.conf. Я оставлю уже имеющийся файл freshclam.conf (пункт 2), т.к. изменения в нём делали разработчики Proxmox, и лучше их не терять.

То же самое и с файлом clamav.conf — это файл конфигурации уже самого антивирусника Clamav. Оставляю существующий конфиг:

-68

Заодно ставлю Midnight Commander после обновления системных пакетов:

apt install mc

Затем перезагружаю сервер и захожу в вэб-интерфейс Proxmox Mail Gateway:

-69

Сделаю основные настройки сервера. И тут надо сразу оговориться о том, что схема прохождения почты через почтовый шлюз может быть разной. Можно сделать, чтобы через почтовый шлюз проходила только входящая почта, а исходящая будет отправляться напрямую с Microsoft Exchange 2019. Но можно сделать, чтобы через почтовый шлюз проходила и входящая и исходящая почта. Из плюсов второго варианта я для себя вижу следующие моменты: 1. можно заворачивать исходящие письма куда хочется, например делать копии начальнику. Причём делать это избирательно, по всяким гибким параметрам, втайке от пользователей. 2. Proxmox Mail Gateway поддерживает DKIM из коробки, а Microsoft Exchange 2019 — нет. 3. Дополнительная защита от дурака. Мало ли чего там у себя пользователи надобавляют в исключения — на почтовом шлюзе это всё равно можно будет резать.

Поэтому я рассмотрю базовую настройку по второй схеме. Перехожу в меню «Конфигурация» «Почтовый прокси» «Ретрансляция» и двойным кликом жму на «Транслятор по умолчанию»:

-70

И вписываю здесь адрес своего Microsoft Exchange 2019 (можно прописать как IP, так и FQDN):

-71

Затем перехожу во вкладку «Домены ретрансляции» и жму «Создать»:

-72

Тут я прописываю свой обслуживаемый домен:

-73

Если бы у меня было несколько доменов, то здесь их все нужно было бы прописать. Вся остальная почта будет резаться как нежелательная.

Далее вкладка «Порты»:

-74

Здесь я ничего не меняю. По-умолчанию, 25-ый порт (External) служит для приема писем снаружи (из Интернета). Порт 26-ой (Internal) является релэем для получения писем от Microsoft Exchange сервера и отправки их затем наружу.

Вкладка «Параметры»:

-75

Здесь я увеличу размер письма до 50мб, включу проверку HELO, отключу greylisting, ибо тема сомнительная и на моей практике доставляла лишь неудобства, а также изменю баннер SMTPD, чтобы, так сказать, врага чуток запутать:

-76

Следующая вкладка «Транспортные агенты»:

-77

Здесь я ничего трогать не буду. Однако, здесь тоже можно было бы прописать адрес Microsoft Exchange сервера, если бы он не был прописан как транслятор (relay) по умолчанию. Данная вкладка предусмотрена на тот случай, если в сети находится несколько Exchange серверов (ну или других почтовых серверов, например Zimbra), которые работают через этот почтовый шлюз.

Вкладка «Сети». Здесь жму кнопку «Создать»:

-78

В разделе «Сети» необходимо указать доверенные сети — сети, с которых будет разрешен прием для пересылки на другие домены. Делается это для того, чтобы письма пересылались наружу только с доверенных SMTP-серверов. Прописываю IP своего Microsoft Exchange (префикс сети указывать обязательно):

-79

Вкладка «TLS». Тут можно включить TLS при отправке и получении сообщений. Это означает, что при включенном TLS, Proxmox будет пытаться отправлять письма наружу с использованием расширения ESMTP - STARTTLS, а так же сможет такие письма принять:

-80

Остальные вкладки трогать пока не буду. По настройке DKIM лучше отдельную заметку написать. Ну а предназначение вкладки «Белого списка» и так понятно.

Все остальные настройки пока тоже оставляю по умолчанию, это всё можно подкрутить позже. Ровно как и правила фильтрации — их тоже оставляю по умолчанию:

-81

Не забываю прописать почтовый шлюз Proxmox в DNS-зоне Active Directory:

-82

Теперь провожу перенастройку сервера Microsoft Exchange 2019 для работы с почтовым шлюзом. Перехожу в меню «Поток обработки почты» → «Соединители отправки» и двойным кликом мыши жму на соединителе, который создал ранее:

-83

Там перехожу во вкладку «доставка» и переключаю крыж на «Перенаправлять почту через промежуточные узлы» и жму на «+»:

-84

Прописываю IP или FQDN своего Proxmox:

-85

И жму «Сохранить»:

-86

Теперь надо перейти в консоль Exchange Management Shell (запуск от администратора):

-87

Там нужно ввести команду для изменения порта соединителя на 26-ой:

Set-SendConnector -Identity "TA connect" -Port 26

где TA connect — название моего соединителя. Затем проверяю, изменился ли порт командой:

Get-SendConnector "ConnectorName" | fl Port

Должно вывести:

Port : 26

Что ж, пробую отправить письма. Отправляю себе на Mail.ru. Письмо дошло, но хочу убедиться, что оно прошло через Proxmox. Открываю заголовки и смотрю что там:

Delivered-To: mymail@list.ru
Return-path: <ivanov@typical-admin.ru>
Authentication-Results: mxs.mail.ru; spf=pass (mx304.i.mail.ru: domain of typical-admin.ru designates 88.86.193.243 as permitted sender) smtp.mailfrom=ivanov@typical-admin.ru smtp.helo=proxmail.local.typical-admin.ru
Received-SPF: pass (mx304.i.mail.ru: domain of typical-admin.ru designates 88.86.193.243 as permitted sender) client-ip=88.86.193.243; envelope-from=ivanov@typical-admin.ru; helo=proxmail.local.typical-admin.ru;
Received: from [88.86.193.243] (port=44256 helo=proxmail.local.typical-admin.ru)
by mx304.i.mail.ru with esmtp (envelope-from <ivanov@typical-admin.ru>)
id 1nrWgy-0005xR-JK
for mymail@list.ru; Thu, 19 May 2022 06:19:12 +0300
Received: from proxmail.local.typical-admin.ru (localhost.localdomain [127.0.0.1])
by proxmail.local.typical-admin.ru (Proxmox) with ESMTP id 28A5B541041
for <mymail@list.ru>; Thu, 19 May 2022 08:19:11 +0500 (+05)
Received: from mail.typical-admin.ru (unknown [192.168.0.210])
by proxmail.local.typical-admin.ru (Proxmox) with ESMTPS id 1958354103E
for <mymail@list.ru>; Thu, 19 May 2022 08:19:11 +0500 (+05)
Received: from exch-serv.local.typical-admin.ru (192.168.0.210) by
exch-serv.local.typical-admin.ru (192.168.0.210) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.595.3;
Thu, 19 May 2022 08:19:05 +0500
Received: from exch-serv.local.typical-admin.ru ([::1]) by
exch-serv.local.typical-admin.ru ([::1]) with mapi id 15.02.0595.003; Thu, 19
May 2022 08:19:04 +0500
From: ivanov <ivanov@typical-admin.ru>
To: "mymail@list.ru" <mymail@list.ru>
Subject: test2
Thread-Topic: test2
Thread-Index: AQHYay8vui6V+Vmfh0Sxk+sG8+RLEg==
Date: Thu, 19 May 2022 03:19:03 +0000
Message-ID: <1970f1040fba4ba08e8816aafbc36e8d@typical-admin.ru>
Accept-Language: ru-RU, en-US
Content-Language: ru-RU
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [192.168.0.200]
Content-Type: multipart/alternative;
boundary="_000_1970f1040fba4ba08e8816aafbc36e8dtypicaladminru_"
MIME-Version: 1.0

С первого взгляда, всё хорошо, письмо дошло, и по заголовкам видно, что оно вышло с Exchange сервера, прошло через Proxmox и прибыло по нужному адресу. Но мне не нравится, что smtp.helo=proxmail.local.typical-admin.ru. Также на этот грех указывает и проверка на сайте https://www.mail-tester.com/

-88

Это надо исправить. Для начала, на локальном DNS-сервере в зоне typical-admin.ru добавлю запись о Proxmox:

-89

Затем на внешнем DNS-сервере делаю аналогичную запись:

-90

Затем подключаюсь по SSH на машину с Proxmox и нахожу файл /etc/hosts. В нём исправляю строчку:

192.168.0.111 proxmail.local.typical-admin.ru proxmail

на:

192.168.0.111 proxmail.typical-admin.ru proxmail

Потом нахожу файл /etc/resolv.conf. В нём исправляю строчку:

search local.typical-admin.ru

на:

search typical-admin.ru

И перезагружаю сервер Proxmox. Почему именно такие изменения сделал? Под капотом Proxmox находится всем известный MTA Postfix, параметрами которого Proxmox и управляет. У Постфикса значение helo формируется из параметра myhostname. А Proxmox в этот параметр подставляет значения hostname + search domain, которые берёт из настроек операционной системы.

Пробую снова mail-tester. Уже лучше:

-91

Что ж, попробую отправить письма с Яндекса и Mail.ru на свой Exchange. Письма дошли, смотрю заголовки одного из них:

Received: from exch-serv.local.typical-admin.ru (192.168.0.210) by
exch-serv.local.typical-admin.ru (192.168.0.210) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.595.3
via Mailbox Transport; Thu, 19 May 2022 09:41:25 +0500
Received: from exch-serv.local.typical-admin.ru (192.168.0.210) by
exch-serv.local.typical-admin.ru (192.168.0.210) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.595.3;
Thu, 19 May 2022 09:41:24 +0500
Received: from proxmail.typical-admin.ru (192.168.0.111) by
exch-serv.local.typical-admin.ru (192.168.0.210) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.595.3
via Frontend Transport; Thu, 19 May 2022 09:41:24 +0500
Received: from proxmail.typical-admin.ru (localhost.localdomain [127.0.0.1])
by proxmail.typical-admin.ru (Proxmox) with ESMTP id 29B60541041
for <ivanov@typical-admin.ru>; Thu, 19 May 2022 09:41:24 +0500 (+05)
Received-SPF: pass (list.ru ... _spf.mail.ru: 45.84.128.194 is authorized to use 'mymail@list.ru' in 'mfrom' identity (mechanism 'ip4:45.84.128.0/23' matched)) receiver=proxmail.typical-admin.ru; identity=mailfrom; envelope-from="mymail@list.ru"; helo=f407.i.mail.ru; client-ip=45.84.128.194
Received: from f407.i.mail.ru (f407.i.mail.ru [45.84.128.194])
by proxmail.typical-admin.ru (Proxmox) with ESMTPS id EDA0454103E
for <ivanov@typical-admin.ru>; Thu, 19 May 2022 09:41:22 +0500 (+05)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=list.ru; s=mail4;
h=References:In-Reply-To:Content-Type:Message-ID:Reply-To:Date:MIME-Version:Subject:To:From:From:Subject:Content-Type:Content-Transfer-Encoding:To:Cc; bh=senfhMq/ydirJH9Echb5UOeUjte5+BLUcbvn3ld0CsU=;
t=1652935282;x=1653540682;

b=pc0xDuUkGhq0isD2tSnQIHBfOApAjahS4RI5Q6G4qhNPSe8AGiVumLsDCB/6ATg1A7zit3hAZW/RWEUnDr6WcG5zsndA/SHVdh7vpMI6TUSREer+HEuWGTXXRB34WYH2aku1C7mGM0Gy2MW2hP86ex1OK102elE4iJxMeiKgP0FyB2ugyGrBZZfx2ffewEo6OaTKuNqHBmONWmyTYf2rdr/tYGJMySdByy/SSigcn/sMHKWWQ8x9NGSBZ3erF49W0abDdfGEgFoyBCPHwobAKvbmCE0lwkxNmIKYBDhINiLHigkE+8gBAzzqubjEBnYf2XIJOldBLJnLBoFh6NPp/Q==;
Received: by f407.i.mail.ru with local (envelope-from <mymail@list.ru>)
id 1nrXy4-0005cN-6b
for ivanov@typical-admin.ru; Thu, 19 May 2022 07:40:56 +0300
Received: by e.mail.ru with HTTP;
Thu, 19 May 2022 07:40:56 +0300
From: =?UTF-8?B?0J3QuNC60L7Qu9Cw0Lk=?= <mymail@list.ru>
To: =?UTF-8?B?aXZhbm92?= <ivanov@typical-admin.ru>
Subject: =?UTF-8?B?UmU6IHRlc3Qy?=
MIME-Version: 1.0
X-Mailer: Mail.Ru Mailer 1.0
X-SenderField-ReMsg: 16529303531286941981
X-SenderField-Remind: 0
Date: Thu, 19 May 2022 07:40:56 +0300
Reply-To: =?UTF-8?B?0J3QuNC60L7Qu9Cw0Lk=?= <mymail@list.ru>
X-Priority: 3 (Normal)
Message-ID: <1652935256.627398306@f407.i.mail.ru>
Content-Type: multipart/alternative;
boundary="--ALT--b4DdCfE67A499E7c9d6B43E0468eB44c1652935256"
In-Reply-To: <1970f1040fba4ba08e8816aafbc36e8d@typical-admin.ru>
References: <1970f1040fba4ba08e8816aafbc36e8d@typical-admin.ru>
Authentication-Results: f407.i.mail.ru; auth=pass smtp.auth=mymail@list.ru smtp.mailfrom=mymail@list.ru

И да, по заголовкам видно, что письмо прошло через Proxmox и потом пришло на Exchange сервер. Задача выполнена.

Донаты принимаются на кошельки:

Yoomoney:
4100118091867315

Карта Т-Банк (бывший Тиньков):
2200 7017 2612 2077

Карта Альфа-Банк:
2200 1539 1357 2013

-92

#Exchange #Exchange 2019 #Microsoft Exchange 2019 #proxmox Mail Gateway #установка #настройка