С одной стороны гибки, но с другой стороны достаточно сложнй в настройке почтовый сервер.
В debian есть две версии exim4-daemon-heavy (со всякими доп модулями, типа подключения к БД и прочих exigrep) и exim4-daemon-light. (Ни разу последний не пользовал, но возможно подойдёт для простых сетапов - тех же почтовых релеев.
# apt-get install exim4-daemon-heavy
Поскольку мы не привыкли делать просто и любим оптимизировать заранее - мы будем использовать в нашем сетапе БД как бэкенд для доменов, пользователей и ящиков (так же можно использовать и LDAP, чому нет) Я постепенно переехал на postgresql, отказавшись от mariadb/mysql, но в общем и целом настройка бэкендов должна быть примерно одинаковой, так что на вкус и цвет.
Нам потребуется пользователь, БД и определённое количество табличек.
postgres=# CREATE USER mailsystem PASSWORD 'h0wAb0utCreateY0ur0wnPa$$w0rd,Dude?'; postgres=# CREATE DATABASE mailsystem OWNER mailsystem;
В общем и целом схема БД может быть абсолютно любой, какой пожелает душа, главное потом написать в конфиге exim правильные запросы, которые будут выдавать нужну инфу и не забывать, что чем медленнее работает БД - тем больше задержки в доставке. Я приерживаюсь общепринятой
CREATE TABLE domains ( id SERIAL NOT NULL PRIMARY KEY, fqdn VARCHAR(250) NOT NULL, description TEXT NOT NULL, active BOOLEAN NOT NULL DEFAULT TRUE, created TIMESTAMP NOT NULL DEFAULT now() ); CREATE TABLE mailboxes ( id SERIAL NOT NULL PRIMARY KEY, domain_id INTEGER NOT NULL REFERENCES domains(id), local_part VARCHAR(127) NOT NULL, password VARCHAR(100) NOT NULL, active BOOLEAN NOT NULL DEFAULT TRUE, created TIMESTAMP NOT NULL DEFAULT now() );