Налаштування внутрішнього SMTP-сервера
🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію. |
1. Загальна інформація
Внутрішній SMTP-сервер – це платформенний компонент, призначений для відправлення нотифікацій кінцевим користувачам.
Під час інсталяції платформи його буде розгорнуто у проєкті smtp-server
.
Оскільки ззовні доступний лише вебінтерфейс, а всі інші порти ізольовані у кластері, що значно підвищує безпеку, доступне лише відправлення листів. Отримати листа на скриньку у цьому поштовому сервісі неможливо! |
Тут і надалі DNS_WILDCARD - це доменне ім’я кластера.
|
Вебінтерфейс користувача доступний за адресою https://mail.<DNS_WILDCARD>/
.
Вебінтерфейс адміністратора доступний за адресою https://mail.<DNS_WILDCARD>/admin
.
2. Робота з DNS записами
2.1. Генерація DNS записів
Перейдіть у вебінтерфейс адміністратора та авторизуйтесь.
Дані для авторизації можна знайти у секреті mailu-admin-credentials у проєкті smtp-server .
До username необхідно додати @<DNS_WILDCARD>
|
У боковому меню у секції Administration
оберіть Mail domains
. На сторінці, що відкрилася, навпроти вашого домену
у секції Actions
натисніть на іконку Details
.
![Відкриття інформації про поштовий домен](../_images/smtp-server/smtp-server-1.png)
На сторінці, що відкрилася, у верхньому правому кутку натисніть Regenerate keys
. В результаті ви отримаєте список
необхідних DNS записів, що необхідно додати до вашої публічної DNS зони (1 – MX
, 3 – TXT
).
![Згенеровані DNS записи](../_images/smtp-server/smtp-server-2.png)
До згенерованого DNS SPF
запису необхідно додати публічну IP адресу шлюзу через який проходить вихідний трафік
з машин кластера (у випадку розгортання в AWS, це буде Elastic IP платформного NAT Gateway).
Таким чином, якщо, наприклад, IP вашого шлюзу це 12.34.56.78
, то запис буде виглядати так:
"v=spf1 mx a:mail.<DNS_WILDCARD> ip4:12.34.56.78 -all"
Додайте записи до DNS зони.
Route53 в AWS має обмеження на довжину TXT запису. Таким чином, при додаванні DNS DKIM запису ви можете
отримати помилку Bad request. (InvalidChangeBatch 400: CharacterStringTooLong (Value is too long))
|
В такому випадку текстову частину запису з публічним ключем треба розділити умовно навпіл за допомогою трьох символів: подвійні лапки, пробіл, подвійні лапки. Наприклад, TXT частина запису
"v=DKIM1; k=rsa; p=abcdefghijklmnopqrstuvwxyz"
матиме вигляд
"v=DKIM1; k=rsa; p=abcdefghijkl" "mnopqrstuvwxyz"
2.2. Перевірка правильності створених DNS записів
Після того, як записи буде оновлено на DNS серверах провайдера, рекомендується перевірити налаштування за допомогою сервісу mxtoolbox.
Введіть ваш <DNS_WILDCARD>
у поле та натисніть кнопку Check Email Health
. Зачекайте на результати перевірки.
Наявність лише цих трьох помилок свідчить про правильність налаштування:
![Перевірка у сервісі mxtoolbox](../_images/smtp-server/smtp-server-3.png)
3. Отримання дозволу на відправлення email в AWS
У випадку розгортання платформи в AWS, за замовчуванням будь-який трафік з 25 порту (SMTP) заблокований[1].
Необхідно створити запит Request to remove email sending limitations у техпідтримку AWS. Час розглядання запиту – до 48 годин.
Поле запиту | Значення |
---|---|
Email address |
Ваш контактний e-mail, куди буде надіслано результати обробки запиту. |
Use case description |
Детально описана причина для зняття обмежень із зазначенням особливостей відправки листів. Приклад:
All openshift cluster nodes have one common NAT gateway (<NAT gateway resource ID or ARN>) with EIP <your Elastic IP address>. So could you please remove email sending limitation from EIP <your Elastic IP address> assigned to NAT gateway? |
(Optional) Elastic IP address |
IP адреса платформного NAT Gateway |
(Optional) Reverse DNS record |
Залишити порожнім |
4. Перевірка правильності відправлених email за допомогою сервісу apptoolbox
Перейдіть на сайт сервісу apptoolbox та натисніть Next step.
Ви отримаєте згенеровану email-адресу, куди треба відправити лист з платформного SMTP-сервера.
![Отримана поштова адреса для перевірки](../_images/smtp-server/smtp-server-4.png)
Щоб відправити email, перейдіть у вебінтерфейс користувача доступний за адресою https://mail.<DNS_WILDCARD>/
.
Пройдіть авторизацію.
У боковому меню ліворуч натисніть Compose
щоб створити новий лист. У поле To
введіть згенеровану адресу,
поле Subject
та тіло листа може мати будь-який текст.
![Створення тестового email](../_images/smtp-server/smtp-server-5.png)
Відправте email та поверніться на сайт. Через декілька секунд лист буде доставлено та ви отримаєте відповідь від сервісу. У випадку правильного налаштування відповідь має виглядати так:
![Результат перевірки](../_images/smtp-server/smtp-server-6.png)