Полнофункциональный защищённый почтовый сервер на Go для самостоятельного размещения почты своего домена с минимальными затратами на обслуживание.
haraka/Haraka
Высокомасштабируемый событийный SMTP-сервер на Node.js, расширяемый с помощью системы плагинов.
- Звёзды
- 5,634
- Форки
- 719
- Открытые issues
- 4
- Последний коммит
- позавчера
Что это?
Haraka — SMTP-сервер на асинхронном JavaScript для Node.js. Он рассчитан на обработку тысяч одновременных подключений и доставку больших объёмов сообщений с низкой задержкой. Его часто разворачивают как фильтрующий MTA для входящей почты или как агент отправки сообщений (MSA) на портах 465 и 587 с включёнными аутентификацией и DKIM.
Haraka не хранит почту, не выполняет локальную доставку и не является IMAP-сервером. Он работает перед этими системами. Каждая SMTP-транзакция проходит через набор хуков, например connect, helo, mail, rcpt, data и queue; каждый хук можно расширить небольшим плагином на JavaScript. Плагины работают асинхронно, поэтому обращения к DNS, Redis или HTTP API не блокируют сервер. Встроенный механизм исходящей доставки ставит в очередь почту, помеченную для ретрансляции.
В проекте есть большой каталог плагинов для аутентификации, DNS-блоклистов, DKIM, SpamAssassin, rspamd, Redis, ClamAV и различных бэкендов очередей. Установка выполняется через npm, а команда `haraka` создаёт каталог службы с подкаталогами config и plugins.
Ключевые возможности
- 01Обрабатывает тысячи одновременных SMTP-подключений с помощью асинхронного JavaScript.
- 02Расширяется плагинами на основе хуков для каждого этапа SMTP-транзакции.
- 03Встроенная очередь исходящей доставки ретранслируемой почты.
- 04Плагины для DKIM, проверок по типу SPF, DNS-блоклистов, SpamAssassin, rspamd и ClamAV.
- 05Устанавливается через npm и настраивается с помощью обычных конфигурационных файлов.
Сценарии использования
- Фильтрация входящей почты домена с проверкой на спам и вирусы до её передачи в хранилище почты.
- Запуск сервера отправки почты на порту 465 или 587 с аутентификацией и подписью DKIM.
- Маршрутизация адресов с метками или псевдонимов в Exchange или IMAP-бэкенд по пользовательским правилам.
Быстрый старт
- 1
Установите Haraka глобально с помощью npm
npm install -g Haraka - 2
Создайте каталог для службы
haraka -i /path/to/haraka_test - 3
Запустите Haraka
haraka -c /path/to/haraka_test
Что важно знать
- Haraka — это только SMTP-сервер, а не хранилище почты или IMAP-сервер; его необходимо использовать вместе с другими системами.
- Чтобы сразу приступить к использованию, необходимо настроить плагины и домены.
Темы
Частые вопросы
- Что такое Haraka?
- Высокомасштабируемый событийный SMTP-сервер на Node.js, расширяемый с помощью системы плагинов. Haraka — SMTP-сервер на асинхронном JavaScript для Node.js. Он рассчитан на обработку тысяч одновременных подключений и доставку больших объёмов сообщений с низкой задержкой. Его часто разворачивают как фильтрующий MTA для входящей почты или как агент отправки сообщений (MSA) на портах 465 и 587 с включёнными аутентификацией и DKIM.
- Haraka можно использовать бесплатно? Какая у него лицензия?
- Haraka распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- Haraka всё ещё поддерживается?
- Активно поддерживается. Последний коммит в Haraka — 6 нояб. 2026 г..
- Для чего можно использовать Haraka?
- Фильтрация входящей почты домена с проверкой на спам и вирусы до её передачи в хранилище почты. Запуск сервера отправки почты на порту 465 или 587 с аутентификацией и подписью DKIM. Маршрутизация адресов с метками или псевдонимов в Exchange или IMAP-бэкенд по пользовательским правилам.
- Как установить Haraka?
- Установите Haraka глобально с помощью npm: npm install -g Haraka Создайте каталог для службы: haraka -i /path/to/haraka_test Запустите Haraka: haraka -c /path/to/haraka_test
- Где скачать Haraka?
- Исходный код и инструкции по установке — на GitHub: https://github.com/haraka/Haraka
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Универсальный почтовый сервер на Go: отправляет и принимает почту по SMTP, хранит её для доступа по IMAP и поддерживает DKIM/SPF/DMARC в одном демоне.
Самостоятельно размещаемый почтовый сервер в одном файле с поддержкой SMTP, POP3 и IMAP и веб-интерфейсом для управления почтой на собственном домене.
Dovecot — почтовый сервер с открытым исходным кодом, поддерживающий IMAP и POP3 и предоставляющий доступ к письмам, хранящимся на сервере.
Почтовый сервер для самостоятельного размещения в виде набора Docker-образов: SMTP, IMAP, POP3 и веб-почта.
Java-библиотека, которая предоставляет удобный builder API поверх Jakarta Mail для создания и отправки корректных MIME-писем по SMTP.