LanQin Email: самораспускаемая почтовая система с веб-интерфейсом

LanQin Email — это самораспускаемая почтовая система с современным веб-интерфейсом и управленческой панелью. Она предлагает множество функций, включая поддержку нескольких доменов, внешнего IMAP, совместный доступ к почте и гибкую настройку прав пользователей, что делает её хорошим решением для небольших команд и организаций.

Проект построен на Go, SQLite, React и TypeScript, и установка выполняется через Docker в виде одного контейнера. Это упрощает развертывание, поскольку все компоненты, включая API, Nginx, Postfix и Dovecot, интегрированы в одном пакете. Но стоит заметить, что для полноценной работы системы нужно будет иметь определенные навыки в администрировании и управлении сервером.

Некоторыми из ограничений являются отсутствие информации о поддержке Windows и другие ОС, не упоминается поддержка коммерческого использования, а языки интерфейса ограничены китайским, английским и упрощенным китайским. Если ищешь простое и эффективное решение для управления почтой, LanQin Email может подойти как альтернатива более громоздким и популярным системам.

Проект LanQin Email представляет собой саморазворачиваемое веб-приложение для работы с электронной почтой. Он включает в себя как фронтенд, разработанный с использованием React и TypeScript, так и бэкенд на Go с использованием SQLite. Основной задачей проекта является создание полноценного веб-клиента для работы с электронной почтой с интеграцией различных решений для почтового сервиса, таких как Nginx, Postfix, Dovecot и Rspamd, в одном контейнере Docker.

Возможности

  • Клиент веб почты: поддержка нескольких почтовых ящиков, создание папок, чтение и написание сообщений, сохранение черновиков, планирование отправки, работа с вложениями, поиск, метки, возможность пометить сообщения как прочитанные/непрочитанные.
  • Расширенные возможности почты: управление контактами, подписями, правилами для почтового ящика, черным списком отправителей, статистика по почте, архивирование прочитанных сообщений и очистка корзины/спама.
  • Поддержка нескольких доменов: управление доменами, генерация DKIM ключей, управление учетными записями и псевдонимами адресов.
  • Управление аккаунтами: возможность входа по электронной почте и паролю, поддержка OAuth2 SSO, управление сессиями и многофакторная аутентификация.
  • Административная панель: управление пользователями, группами прав, почтовыми ящиками и доменами, настройки системы, тестирование SMTP.
  • Архитектура почтового сервиса: интеграция Postfix, Dovecot и Rspamd для отправки и получения почты.

Установка и запуск

Для начальной установки проекта доступны два основных способа: локальная разработка и развертывание через Docker.

Локальная разработка

Чтобы запустить приложение локально, нужно выполнить следующие команды:

cd apps/api
go mod download
go test ./...
go run ./cmd/server

Фронтенд запускается в новом терминале:

cd apps/web
corepack enable
corepack prepare pnpm@10.28.2 --activate
pnpm install
pnpm run dev

После этого веб-приложение будет доступно по адресу http://localhost:5173, а API — по http://localhost:8080.

Развертывание с помощью Docker

Для развертывания с использованием Docker достаточно выполнить следующие команды:

cd deploy
cp .env.example .env
# Отредактируй .env: укажи домен, публичный URL, администраторский email и пароль
docker compose pull
docker compose up -d

Ограничения

Для публичной отправки и получения почты необходимо правильно настроить записи MX, SPF, DKIM и DMARC для домена. Кроме того, важно проверить, что ваш облачный провайдер не блокирует SMTP-порты 25, 465, 587, 993 и 995.

SQLite подходит для однопользовательских развертываний. При переходе на многопользовательскую архитектуру необходимо будет мигрировать базу данных и соответственно настроить Postfix/Dovecot.

Заключение

LanQin Email предоставляет обширные возможности для управления электронной почтой, включая поддержку нескольких доменов и детальную настройку прав доступа. Он ориентирован на пользователей и администраторов, которым необходимо иметь полный контроль над своей почтовой системой. Если тебе интересно саморазворачиваемое решение для работы с почтой, LanQin Email может стать отличным вариантом.

Открыть на GitHub: LanQin996/LanQin-Email →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте