Задача: Проработать подключение Microsoft Office 2016 Outlook
к почтовому серверу на базе iRedMail
домена @ekzorchik.ru
Сегодня я покажу, как обычная задача по настройке почты через почтовый клиент Microsoft Office 2016 (SW_DVD5_Office_Professional_Plus_2016_64Bit_Russian_MLF_X20-42453.iso)
на Windows 10 Pro (SW_DVD9_Win_Pro_10_1903.1_64BIT_Russian_Pro_Ent_EDU_N_MLF_X22-14082.iso)
на почтовый домен @ekzorchik.ru
(на базе связки Ubuntu 22.04 Server + Wireguard Server on VPS <-> Ubuntu 22.04 Server + Wireguard Client on VLAN
за домашним Mikrotik RB2011UiAS-2HnD v6.47.4
) привела к неожиданным последствиям. Просто до этого я как-то не сталкивался с этим: Через Web
-интерфейс к почтовому ящику получают доступ, письма принимаются/отправляются, на Android
почтовый ящик подключается и также принимается/отправляется почта. Т.е. как бы и проблем нет.
Моя схема ("Переводим Yandex-почта для домена @ekzorchik.ru на iRedMail"
) работы почтового сервера, я ушел от публичных почтовых серверов в пользу своего.
Для напоминания, настройки подключения к почтовому серверу @ekzorchik.ru
mail.ekzorchik.ru
993/tcp
SSL/TLS (принимать все сертификаты)
mail.ekzorchik.ru
465/tcp
SSL/TLS (принимать все сертификаты)
Но есть, но.
Шаг №1:
Запускаю почтовый клиент Microsoft Office 2016 Pro
на Windows 10 Pro
и настраиваю подключение для ящика support@ekzorchik.ru
Добро пожаловать в Microsoft Outlook 2016:
и нажимаю "Далее"
Настроить Outlook для подключения к учетной записи электронной почты? Да
и нажимаю "Далее"
выбираю "Ручная настройка или дополнительные типы серверов"
и нажимаю "Далее"
Выбор службы: выбираю "Протокол POP или IMAP"
и нажимаю "Далее"
указываем данные на подключение по IMAP
Введите имя: support
Адрес электронной почты: support@ekzorchik.ru
Тип учетной записи: IMAP
Сервер входящей почты: mail.ekzorchik.ru
Сервер исходящей почты (SMTP): mail.ekzorchik.ru
Пользователь: support@ekzorchik.ru
Пароль: password
Запомнить пароль: отмечаю галочкой
после нажимаем "Другие настройки…"
, попадаем на вкладку "Общие"
Учетная запись почты: support@ekzorchik.ru
переходим на вкладку "Сервер исходящей почты"
SMTP-серверу требуется проверка подлинности: отмечаем
Аналогично серверу для входящей почты: отмечаем
Переходим на вкладку "Дополнительно"
(Номера портов сервера)
IMAP-сервер: 993
Использовать следующий тип шифрованного подключения: SSL
SMTP-сервер: 465
Использовать следующий тип шифрованного подключения: SSL
Нажимаем "ОК"
находясь во вкладке "Дополнительно"
перекидывает на окно "Добавить учетную запись"
, нажимаем "Далее"
, получаем предупреждение безопасности Интернета
Предупреждение безопасности Интернета
Сервер, с которым установлено соединение, использует сертификат безопасности, который не может быть проверен.
Главное конечное имя неверно
Продолжить использовать этот сервер?
если нажать "Показать сертификат"
, то увижу сообщение о внутреннем сертификате почтового сервера
игнорируем данный сертификат и нажимаем ОК
Снова на окне предупреждения
нажимаем "Да"
Отлично почтовый клиент Microsoft Outlook 2016
на мой домен @ekzorchik.ru
настроен успешно.
Шаг №2:
Проверяю, что, запустив почтовый клиент Microsoft Outlook 2016
могу принимать и отправлять почту:
но не все так просто, у меня появляется окно 2
раза, я так понял на подключение к IMAP
и на подключение к SMTP
Получается что для IMAP
и SMTP
нужно поправить использование сертификата не внутреннего mail2.polygon.local
, а изменить на внешний от Let's Encrypt.
Шаг №3:
Если же не удается почтовым клиентом авторизоваться возможно я сам себя заблокировал (у меня настроен Fail2Ban
для блокировки кто подключается к ящикам путем перебора связки авторизации):
ekzorchik@mail2:~$ sudo fail2ban-client status Status |- Number of jail: 4 `- Jail list: dovecot, postfix, roundcube, ssh-firewalld ekzorchik@mail2:~$ sudo fail2ban-client status postfix Status for the jail: postfix |- Filter | |- Currently failed: 0 | |- Total failed: 3 | `- File list: /var/log/maillog `- Actions |- Currently banned: 1 |- Total banned: 1 `- Banned IP list: 176.195.136.227 ekzorchik@mail2:~$
да так оно и есть, проверяю какой WAN-IP
у меня сейчас через сайт 2ip.ru or myip.ru
и если он совпадает с заблокируемым, то выношу его из заблокированного:
ekzorchik@mail2:~$ sudo fail2ban-client set postfix unbanip 176.195.136.227 1 ekzorchik@mail:~$ sudo fail2ban-client status postfix Status for the jail: postfix |- Filter | |- Currently failed: 0 | |- Total failed: 3 | `- File list: /var/log/maillog `- Actions |- Currently banned: 0 |- Total banned: 1 `- Banned IP list: ekzorchik@mail2:~$
Шаг №4:
Смотрю какие сертификаты выпущены для внешнего доменного имени mail.ekzorchik.ru:
ekzorchik@mail2:~$ sudo certbot certificates [sudo] password for ekzorchik: Saving debug log to /var/log/letsencrypt/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Found the following certs: Certificate Name: mail.ekzorchik.ru Serial Number: 3bf53cf268a0f9c461ef68e156b072c4576 Key Type: RSA Domains: mail.ekzorchik.ru Expiry Date: 2024-02-27 20:03:17+00:00 (VALID: 69 days) Certificate Path: /etc/letsencrypt/live/mail.ekzorchik.ru/fullchain.pem Private Key Path: /etc/letsencrypt/live/mail.ekzorchik.ru/privkey.pem - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ekzorchik@mail2:~$
Шаг №5:
По пути cat ~/iRedMail-1.6.4/iRedMail.tips
узнаю пути которые используются для внутреннего имени почтового сервера по части SSL
сертификатов:
SSL cert keys (size: 4096): - /etc/ssl/certs/iRedMail.crt - /etc/ssl/private/iRedMail.key
Шаг №6:
Смотрим настройки dovecot.conf
по части использования сертификатов:
ekzorchik@mail2:~$ sudo bash -c "cat /etc/dovecot/dovecot.conf | grep ssl" ssl_min_protocol = TLSv1.2 ssl = required verbose_ssl = no #ssl_ca = </path/to/ca ssl_cert = </etc/ssl/certs/iRedMail.crt ssl_key = </etc/ssl/private/iRedMail.key ssl_dh = </etc/ssl/dh2048_param.pem ssl_cipher_list = EECDH+CHACHA20:EECDH+AESGCM:EDH+AESGCM:AES256+EECDH ssl_prefer_server_ciphers = yes # With disable_plaintext_auth=yes AND ssl=required, STARTTLS is mandatory. # Set disable_plaintext_auth=no AND ssl=yes to allow plain password transmitted # ssl = yes # ssl = yes ekzorchik@mail2:~$
так мне нужно заменить ssl_cert & ssl_key
с внутреннего сертификата mail2.polygon.local
на внешний, т.е. mail.ekzorchik.ru
Шаг №7:
Делаем бекап iRedMail.crt & iRedMail.key
внутреннего сервера mail2.polygon.local
ekzorchik@mail2:~$ sudo mv /etc/ssl/certs/iRedMail.crt{,.bak} ekzorchik@mail2:~$ sudo mv /etc/ssl/private/iRedMail.key{,.bak}
Шаг №8:
Заменяем ssl_cert & ssl_key
с внутреннего сертификата mail2.polygon.local
на внешний, т.е. mail.ekzorchik.ru
ekzorchik@mail2:~$ sudo cp /etc/letsencrypt/live/mail.ekzorchik.ru/fullchain.pem /etc/ssl/certs/iRedMail.crt ekzorchik@mail2:~$ sudo cp /etc/letsencrypt/live/mail.ekzorchik.ru/privkey.pem /etc/ssl/private/iRedMail.key ekzorchik@mail2:~$ sudo systemctl restart dovecot.service && sudo systemctl status dovecot.service ● dovecot.service - Dovecot IMAP/POP3 email server Loaded: loaded (/lib/systemd/system/dovecot.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2023-12-20 09:31:24 MSK; 19ms ago Docs: man:dovecot(1) https://doc.dovecot.org/ Main PID: 287163 (dovecot) Status: "v2.3.16 (7e2e900c1a) running" Tasks: 11 (limit: 4558) Memory: 6.2M CPU: 56ms CGroup: /system.slice/dovecot.service ├─287163 /usr/sbin/dovecot -F ├─287165 dovecot/lmtp -L ├─287166 dovecot/anvil ├─287167 /usr/sbin/dovecot -F ├─287168 /usr/sbin/dovecot -F ├─287169 /usr/sbin/dovecot -F ├─287170 /usr/sbin/dovecot -F ├─287171 dovecot/lmtp -L ├─287173 dovecot/config ├─287174 dovecot/stats └─287178 /usr/bin/doveconf -c /etc/dovecot/dovecot.conf -m managesieve -m ssl -e /usr/lib/dovecot/managesieve -k -c /etc/dovecot/dovecot.conf Dec 20 09:31:24 mail2.polygon.local systemd[1]: Starting Dovecot IMAP/POP3 email server... Dec 20 09:31:24 mail2.polygon.local dovecot[287163]: master: Dovecot v2.3.16 (7e2e900c1a) starting up for pop3, imap, sieve, lmtp (core dumps disabled) Dec 20 09:31:24 mail2.polygon.local systemd[1]: Started Dovecot IMAP/POP3 email server. ekzorchik@mail2:~$
Шаг №9:
Проверяю почтовым клиентом Microsoft Outlook 2016
что при очередном запуске уже больше не будет появляться окно на тему, что используется сертификат безопасности, который не может быть проверен.
окна не появляется, ящик (support@ekzorchik.ru
) успешно подключается к mail.ekzorchik.ru
почта отправляется/принимается.
Шаг №10:
Теперь, когда подойдет срок обновлять бесплатный сертификат от Let's Encrypt
нужно не забыть выполнить копирование файлов сертификата в каталоги, как указано в шаге выше.
Это хорошо, что я с этим столкнулся, решив составить себе пошаговую заметки и получив отворот поворот, тем самым еще глубже понял, как работает мой почтовый сервер и что для одних почтовых клиентов того что было достаточно, а для некоторых нужно чуть более.
Итого заметка работоспособна, на этом пока все, с уважением автор блога Олло Александр aka ekzorchik.