DBMail

DBMail — проект мира открытого ПО, обеспечивающий возможность хранения электронной почты в реляционной базе данных, а также работу пользователей со своей корреспонденцией посредством протоколов IMAP и POP3.

DBMail
Тип POP3, IMAP, SMTP, LMTP
Разработчики NFG Net Facilities Group и сообщество
Написана на C, Autoconf
Операционная система Кроссплатформенное программное обеспечение
Последняя версия 3.2.3 (25 января 2015)
Лицензия GNU General Public License
Сайт dbmail.org

Описание комплекса править

Состав комплекса править

  • dbmail-smtp — программа, обеспечивающая захват почтового сообщения, передаваемого от MTA, посредством локального pipe-подключения
  • dbmail-lmtpd — демон, организующий приём сообщений от MTA посредством протокола LMTP
  • dbmail-imapd — демон, организующий возможность работы пользователей со своей почтой посредством протокола IMAP
  • dbmail-pop3d — демон, организующий возможность работы пользователей со своей почтой посредством протокола POP3

Как работает править

  1. Приём электронной корреспонденции осуществляется MTA. На этом этапе может происходить так же фильтрация на предмет спама и вирусов, маршрутизация сообщений.
  2. MTA передаёт полученные сообщения DBMail, посредством локального pipe-подключения или протокола LMTP. Происходит размещение сообщений в базе данных.
  3. Работа пользователей с почтой, находящейся в базе данных, организуется полностью средствами DBMail, реализующими доступ по протоколам IMAP и POP3.

Работа с базой данных править

Главным отличием данного проекта является использование реляционной базы данных для хранения сведений о почте, включая всё содержимое почтовых сообщений, а также учётных записей пользователей и их параметров. Так же возможно использование LDAP в роли стороннего хранилища для учётных записей пользователей. DBMail работает только с базой данных, не совершая операций с файловой системой сервера напрямую, что, теоретически, должно положительно сказываться на безопасности всей системы в целом.

В настоящее время поддерживаются следующие реляционные базы данных:

Работа с LDAP править

В качестве хранилища информации о учётных записях пользователей, а также всех настройках почтовых ящиков пользователей, возможно использовать LDAP. Возможна работа с Active Directory[4].

Работа с MTA править

В настоящий момент поддерживается работа со следующими MTA:

Реализация Sieve править

DBMail может использовать язык описания правил фильтрации для почтовых сообщений, реализация которого заимствована из Cyrus IMAP. Это даёт пользователям возможность настроить собственные правила для сортировки почты по каталогам IMAP.

Преимущества править

Масштабируемость править

Масштабируемость хранилища ограниченна только возможностями используемой реляционной базы данных. Количество же серверов, обслуживающих пользовательские подключения по протоколам POP3 и IMAP, а также демоны приёма почты от MTA, тоже ограничены лишь лимитом на одновременные подключения к базе данных.

Резервное копирование и репликация править

Полностью организуется развитыми возможностями современных баз данных.

Безопасность править

Комплекс не производит операций по доступу к файловой системе сервера напрямую, что положительно влияет на безопасность всей системы в целом.

Скорость править

Работа с почтовыми сообщениями пользователей осуществляется в реляционной базе данных, изначально предназначенной для выполнения подобных задач по хранению и обработке данных.

Удобство администрирования править

Комплекс имеет набор консольных утилит, обеспечивающий полный контроль над работой системы. Кроме того, благодаря тому, что сообщения, структура каталогов пользователей, а также сами учётные записи, хранятся в базе данных, возможно использование самописных скриптов для автоматизации процесса администрирования комплекса. Также существуют сторонние инструменты управления комплексом, созданные сообществом. Возможна интеграция с внешними хранилищами данных о пользователях, таких как LDAP и Active Directory[4].

Недостатки править

Теоретически, главным недостатком комплекса является главное же его достоинство — использование реляционной базы данных, а именно − специфика работы последней. Что может проявляться в некоторой потере производительности при совершении ряда операций, например при одновременном размещении большого количества сообщений в базе данных[5]. Кроме того, использование базы данных может потребовать дополнительных навыков и знаний по администрированию реляционных баз данных.

История править

Первая версия[6] комплекса была выпущена 3 декабря 2002 г. В тот момент развитием проекта занималась IC&S[7]. В данный момент развитием занимается NFG и сообщество.

Сторонние средства администрирования править

В данный момент существуют как минимум две полноценных реализации веб-интерфейса для управления DBMail. Самый, пожалуй, развитый из них, — DBMail Administrator[8], может обеспечивать полный контроль, вплоть до управления MTA (требует предварительной подготовки самого MTA). Но есть и ряд недостатков: относительная «тяжесть» скриптов, авторизация администратора только средствами веб-сервера. Второй же проект — DBMail Admin[9], обладает, на данный момент, более скромными возможностями, но полностью способен заменить консольные утилиты администрирования, используя, при этом, для аутентификации администратора, встроенные учётные записи почты DBMail, что больше подходит концепции централизованного управления комплексом. Список рекомендуемых сторонних средств администрирования публикуется в официальной базе знаний[10] проекта DBMail.

Примечания править

  1. 1 2 DBMail + Postfix + PostgreSQL Архивная копия от 20 февраля 2011 на Wayback Machine OpenNET
  2. 1 2 DBmail + Exim + MySQL Архивировано 21 декабря 2010 года. Linuxforum
  3. 1 2 DBMail + Exim + SQLite (недоступная ссылка)
  4. 1 2 Интеграция DBMail в Active Directory Архивная копия от 25 августа 2010 на Wayback Machine OpenNET
  5. dbmail benchmarking. Дата обращения: 23 января 2011. Архивировано 18 июля 2011 года.
  6. Анонс выхода DBMail 1.0. Дата обращения: 23 января 2011. Архивировано 5 марта 2016 года.
  7. IC&S. Дата обращения: 23 января 2011. Архивировано из оригинала 20 января 2011 года.
  8. DBMail Administrator. Дата обращения: 23 января 2011. Архивировано 3 января 2011 года.
  9. DBMail Admin. Дата обращения: 23 января 2011. Архивировано из оригинала 22 октября 2011 года.
  10. Официальное WIKI проекта. Дата обращения: 23 января 2011. Архивировано 17 марта 2011 года.

Ссылки править