Подробная гайд-инструкция по установке и настройке hMailServer
Установка собственного почтового сервера на базе hMailServer — это отличный способ получить полный контроль над своей корпоративной или личной почтой. Однако важно понимать: почтовые серверы требуют точной настройки DNS и безопасности, иначе ваши письма будут попадать в спам у получателей (Gmail, Яндекс, Mail.ru).
Критически важные требования перед началом
- Белый (статический) IP-адрес. Почтовые сервера не работают с "серыми" IP.
- Чистая репутация IP. Убедитесь, что ваш IP не находится в спам-листах (проверить можно на https://mxtoolbox.com/blacklists.aspx).
- Открытый порт 25. Многие провайдеры (особенно домашние и некоторые облачные VPS) блокируют исходящий порт 25 для борьбы со спамом. Убедитесь, что ваш провайдер/хостинг его не блокирует.
- Доменное имя (например,
example.com).
Шаг 1. Подготовка DNS-записей (Делегирование)
До установки программы нужно настроить DNS-зону вашего домена у регистратора. Пусть ваш IP будет 123.45.67.89, а сервер мы назовем mail.example.com.
Создайте следующие записи:
- A-запись:
mail.example.com->123.45.67.89 - MX-запись:
example.com->mail.example.com(Приоритет: 10) - PTR-запись (Reverse DNS). Это самое важное! Настраивается не у регистратора домена, а в панели управления вашего хостинг-провайдера (там, где вы арендовали сервер/IP).PTR должна указывать на
mail.example.com. Без неё Gmail и Яндекс отклонят ваши письма.
Шаг 2. Установка hMailServer
- Скачайте последнюю версию с официального сайта: https://www.hmailserver.com/download
- Запустите установщик.
- Выберите компоненты: Server и Administrative tools.
- Select Database:
- Для небольших офисов/личного использования: Выберите Built-in database engine (Microsoft SQL Server Compact). Это самый простой вариант.
- Для больших нагрузок: Выберите MySQL или MS SQL (потребуется создать БД заранее).
- Задайте пароль администратора. Запишите его! Это пароль не от почтового ящика, а от панели управления самим сервером.
Шаг 3. Базовая настройка (Мастер настроек)
- Запустите hMailServer Administrator и подключитесь к
localhost(введите заданный пароль). - При первом запуске откроется мастер настройки. Нажмите Add domain.
- Domain:
example.com - Перейдите во вкладку DKIM Signing (настройка чуть ниже, пока просто нажмите Save).
- Domain:
- Нажмите Add account (в разделе вашего домена).
- Address:
admin@example.com - Password: Задайте надежный пароль.
- Administration level: Domain (если хотите управлять доменом через веб-интерфейс, если используете Webmail).
- Address:
- В главном окне раскройте
Settings->Protocols. Убедитесь, что стоят галочки напротив SMTP, POP3 и IMAP. - Перейдите в
Settings->Advanced-> Default Domain: впишитеexample.com.
Шаг 4. Настройка защиты от спама и Open Relay (Важно!)
Чтобы через ваш сервер не начали рассылать спам злоумышленники, нужно настроить IP Ranges.
- Перейдите в
Settings->Advanced-> IP Ranges. - Откройте My computer (локальные подключения) — здесь можно разрешить всё.
- Создайте New (для внешних подключений / Интернета):
- Name: Internet
- Lower IP:
0.0.0.0 - Upper IP:
255.255.255.255 - Требования (Require):
- Для SMTP: Оставьте галочку только на SMTP. Обязательно уберите галочку с "Allow delivery to remote recipients" (Разрешить доставку внешним получателям) БЕЗ аутентификации.
- Итог для внешних IP: Галочки должны стоять на Require authentication for delivery to remote recipients (Это защита от Open Relay).
- В блоке Anti-Spam включите все галочки (Use SPF, Use DKIM, Check host in HELO command).
Шаг 5. Настройка DKIM, SPF и DMARC (Защита от попадания в СПАМ)
1. SPF (Sender Policy Framework)
Добавьте TXT-запись в DNS вашего домена:
v=spf1 a mx ip4:123.45.67.89 ~all
(Это говорит миру: "Только сервер с IP 123.45.67.89 имеет право отправлять почту от имени example.com").
2. DKIM (DomainKeys Identified Mail)
- В hMailServer откройте
Domains->example.com. - Перейдите во вкладку DKIM Signing.
- Поставьте галочку Enabled.
- Header method: Simple / Body method: Relaxed.
- Selector: Например,
mail. - Private key: Нажмите кнопку Generate.
- Public key: Появится длинный текст. Скопируйте его.
- Создайте TXT-запись в DNS:
- Имя хоста:
mail._domainkey.example.com(гдеmail- это ваш селектор). - Значение:
v=DKIM1; p=ВАШ_СКОПИРОВАННЫЙ_ПУБЛИЧНЫЙ_КЛЮЧ
- Имя хоста:
3. DMARC
Создайте TXT-запись в DNS:
- Имя:
_dmarc.example.com - Значение:
v=DMARC1; p=none; rua=mailto:admin@example.com(Позже, когда убедитесь, что всё работает,p=noneможно заменить наp=quarantineилиp=reject).
Шаг 6. Настройка SSL/TLS (Шифрование)
Современные почтовики требуют шифрования. Вам понадобится SSL-сертификат. Самый простой способ получить бесплатный сертификат Let's Encrypt для Windows — использовать утилиту win-acme (WACS) или Certify The Web.
Когда у вас есть файлы сертификата (.crt и .key или .pfx):
- В hMailServer перейдите в
Settings->Advanced-> SSL Certificates. - Нажмите Add, укажите путь к файлам сертификата и приватного ключа. Дайте ему имя (например,
MailCert). - Перейдите в
Settings->Protocols-> SMTP -> вкладка Connection Security.- Выберите
SSL/TLS. - Выберите ваш сертификат.
- Убедитесь, что порты: 25 (StartTLS Optional), 465 (SSL/TLS), 587 (StartTLS Required).
- Выберите
- Повторите то же самое для IMAP (порт 993 - SSL/TLS) и POP3 (порт 995 - SSL/TLS).
Шаг 7. Антивирус (Опционально, но желательно)
hMailServer умеет интегрироваться с антивирусами через скрипты или ClamAV.
- Установите ClamWin (бесплатный) на сервер.
- В hMailServer перейдите в
Settings->Anti-virus. - Выберите "Use external virus scanner".
- В поле "Scanner executable" укажите путь к
clamscan.exe(например,C:\Program Files (x86)\ClamWin\bin\clamscan.exe). - В аргументах укажите:
--database="C:\Program Files (x86)\ClamWin\lib\clamav" --log="C:\clamav-log.txt" "%FILE%" - В поле "Action to take" выберите Delete message или Move to IMAP folder (например, в папку "Вирусы").
Шаг 8. Резервное копирование
Почта — это критичные данные.
- Перейдите в
Settings->Backup. - Укажите папку для бэкапов.
- Включите автоматическое создание бэкапов по расписанию (например, каждую ночь).
Совет:
Настройте скрипт (PowerShell/Robocopy), который будет утягивать эти бэкапы в облако или на NAS, так как хранить их на том же сервере небезопасно.
Шаг 9. Тестирование (Проверка боем)
- Зайдите на сайт https://www.mail-tester.com.
- Скопируйте предложенный ими email-адрес (например,
test-xyz@srv1.mail-tester.com). - Отправьте на этот адрес письмо с вашего нового ящика через почтовый клиент (Outlook, Thunderbird) или Webmail. В письме обязательно должен быть текст и, желательно, пара ссылок.
- Нажмите "Check your score" на сайте.
- 10/10 — Идеально, вы настроили всё правильно.
- Меньше 7/10 — Смотрите отчет, сайт укажет, чего не хватает (например, нет PTR-записи, битый DKIM или ваш IP в черном списке Spamhaus).
Частые проблемы и их решения
* Письма не уходят (ошибка в логах: "SMTP server returned 421" или "Timeout"):
Провайдер блокирует исходящий порт 25. Решение: В настройках hMailServer (Settings -> Protocols -> SMTP -> Delivery of e-mail) укажите SMTP Relayer (Смарт-хост). Это может быть SMTP вашего провайдера или сервис рассылки (например, SendGrid, Amazon SES, Mailgun), через который hMailServer будет отправлять почту наружу.
* Письма приходят в СПАМ у Gmail/Yandex:
Проверьте наличие PTR-записи (Reverse DNS). Без неё приемщики считают вас ботнетом. Также проверьте DKIM и SPF.
* Не могу подключиться с телефона / Outlook:
Проверьте Брандмауэр Windows (Windows Firewall). Нужно открыть порты: 25, 465, 587 (SMTP), 143, 993 (IMAP), 110, 995 (POP3).
* Как читать логи?
Включите логирование: Settings -> Logging -> Включите Application и SMTP. Логи лежат в папке C:\Program Files (x86)\hMailServer\Logs. Они бесценны при поиске причин, почему письмо было отклонено.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.