Сегодня рассмотрю другое бесплатное ПО по этой же теме - Open Archiver. По сравнению с Mail-Archiver он выглядит более функциональным и технологичным. Внешне тоже больше понравился. Но сразу скажу, что проект не очень зрелый, появился недавно. Есть некоторые баги, скупая документация. Я немного повозился, прежде чем развернул его. Но в итоге всё получилось.
📌Возможности и особенности Open Archiver:
▪️Сбор почты по IMAP, в том числе с Google Workspace и Microsoft 365, импорт из PST и Mbox файлов.
▪️Почта хранится в виде .eml файлов с зашифрованным содержимым.
▪️Для хранения может использоваться локальная директория или S3 хранилище.
▪️Развитый поиск по телу письма и вложениям, в том числе с распознаванием PDF, DOCX, XLSX, архивов и др., в том числе картинок. В бэкенде распознавания там Apache Tika, а поисковой движок Meilisearch. Сразу скажу, что поиск работает хорошо и быстро. По крайней мере на моих тестах.
▪️Проверка и сравнение хэшей писем и вложений на оригинальном сервере и архиве.
▪️RBAC модель доступа пользователей, то есть можно создавать роли с разными правами и назначать пользователям. Кто-то может только читать, кто-то и удалять, кто-то добавлять новые ящики и т.д. Можно глобально запретить любое удаление писем или ящиков из Open Archiver.
▪️Все действия с системой можно выполнять через API.
Я недавно раздумывал над задачей, как разгрузить хранилище большого почтового сервера, где куча ящиков уволенных людей. Всё это занимает много места, не особо надо, но удалить нельзя. Вдруг ещё понадобится. Причём это не домыслы. Иногда реально старая почта нужна. Как-то раз я помогал найти письма давно уволившегося сотрудника для заверения у нотариуса, так как начались судебные разбирательства по одному старому делу.
Весь этот объём постоянно тянется от основного хранилища по цепочке бэкапов и занимает место. У меня была идея сделать отдельный почтовый сервер для таких ящиков, переносить их туда и там с ними работать. Навскидку Open Archiver выглядит удобнее для этой задачи. Думаю, что буду пробовать его в этой роли.
Установить Open Archiver нетрудно, так как он упакован в Docker контейнеры, но есть нюансы, которые я не сразу узнал. Рассказываю, как быстро установить.
Клонируем репозиторий:
# git clone https://github.com/LogicLabs-OU/OpenArchiver.git# cd OpenArchiverПравим переменные окружения:
# cp .env.example .envВ файле
.env нужно обязательно указать несколько параметров, для запуска на IP адресе, а не реальном домене:APP_URL=http://192.168.137.38:3000ORIGIN=http://192.168.137.38:3000ENCRYPTION_KEY=952e40feca16JWT_SECRET=9VRzbD56aYpFSTORAGE_ENCRYPTION_KEY=50348f31f0281MEILI_MASTER_KEY=abk3pAhzgk6NENABLE_DELETION=trueКлючевыми являются параметры ORIGIN и ENCRYPTION_KEY. По умолчанию ORIGIN=$APP_URL, а надо явно прописать. Если не указать ENCRYPTION_KEY, то после установки не запустится начальная настройка, невозможно будет создать администратора. При этом по умолчанию ENCRYPTION_KEY не задан, просто пустое значение. Если не указать STORAGE_ENCRYPTION_KEY, то хранилище писем не будет шифроваться. По умолчанию ENABLE_DELETION=false. Невозможно будет удалить добавленные ящики. Я не сразу понял, почему они не удаляются, потом разобрался. JWT_SECRET и MEILI_MASTER_KEY можно оставить по умолчанию на тестовой установке. На работу они не влияют.
После того, как заполните .env, запускаем:
# docker compose upЯ сначала в консольном режиме запускаю, чтобы смотреть логи. Некоторые проблемы увидел как раз по логу. Потом можно запустить в режиме службы.
В целом, у меня всё получилось. Добавил 3 ящика, один старый от mail ru. Всё заработало. Синхронизация работает значительно быстрее, чем в Mail-Archiver.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX
#mailserver #backup



