0 added
0 removed
Original
2026-01-01
Modified
2026-02-19
1
Нам необходимо установить и настроить четыре разных типа модулей. Каждый модуль представляет собой OpenVZ-контейнер с установленной в нем операционной системой CentOS 6.<h2>dbmail-модуль</h2>
1
Нам необходимо установить и настроить четыре разных типа модулей. Каждый модуль представляет собой OpenVZ-контейнер с установленной в нем операционной системой CentOS 6.<h2>dbmail-модуль</h2>
2
Установка dbmail достаточно тривиальна и подробно описана в wiki, я позволю себе краткто изложить ход установки.<p>Для работы dbmail требуется библиотека GMime версии 2.4.x, она есть в репозитории <a>epel</a>, в других репозиториях версии этой библиотеки были 2.5 и 2.6. К сожалению dbmail не умеет с ними работать.</p>
2
Установка dbmail достаточно тривиальна и подробно описана в wiki, я позволю себе краткто изложить ход установки.<p>Для работы dbmail требуется библиотека GMime версии 2.4.x, она есть в репозитории <a>epel</a>, в других репозиториях версии этой библиотеки были 2.5 и 2.6. К сожалению dbmail не умеет с ними работать.</p>
3
Конфигурация dbmail находиться в файле /etc/dbmail.conf.Заносим туда логины/пароли на доступ к mysql-серверу, параметр table_prefix лучше не менять, SSL/TLS будет обрабатывать nginx, и еще я поменял кодировку писем по умолчанию.Теперь проведем небольшой тюнинг mysql.Добавим в my.cnf следующие параметры:Cоздаем базу данных dbmail и заливаем в нее структуру из файла /usr/share/doc/dbmail-3.0.2/sql/mysql/create_tables.mysqldbmail-модуль готов, осталось запустить сервисы<h2>admin-модуль</h2>
3
Конфигурация dbmail находиться в файле /etc/dbmail.conf.Заносим туда логины/пароли на доступ к mysql-серверу, параметр table_prefix лучше не менять, SSL/TLS будет обрабатывать nginx, и еще я поменял кодировку писем по умолчанию.Теперь проведем небольшой тюнинг mysql.Добавим в my.cnf следующие параметры:Cоздаем базу данных dbmail и заливаем в нее структуру из файла /usr/share/doc/dbmail-3.0.2/sql/mysql/create_tables.mysqldbmail-модуль готов, осталось запустить сервисы<h2>admin-модуль</h2>
4
На текущий момент для администрирования каждого из dbmail-модулей используется dbmailadmin. Установка dbmailadmin тривиальна. Все виртуальные серверы с dbamiladmin собраны в одном OpenVZ-контейнере. Назовем его admin-модуль.<p>Теперь нам нужен единый список доменов и почтовых ящиков, существующих в системе, с указанием на каком именно dbmail-модуле они находятся.</p>
4
На текущий момент для администрирования каждого из dbmail-модулей используется dbmailadmin. Установка dbmailadmin тривиальна. Все виртуальные серверы с dbamiladmin собраны в одном OpenVZ-контейнере. Назовем его admin-модуль.<p>Теперь нам нужен единый список доменов и почтовых ящиков, существующих в системе, с указанием на каком именно dbmail-модуле они находятся.</p>
5
<p>Для этого в admin-модуле я создал базу данных master:</p>
5
<p>Для этого в admin-модуле я создал базу данных master:</p>
6
В эту базу данных вот такой скрипт периодически копирует информацию из баз данных dbmail-модулей.<p><a>Скрипт конечно не идеальный, но пока устраивает. </a></p>
6
В эту базу данных вот такой скрипт периодически копирует информацию из баз данных dbmail-модулей.<p><a>Скрипт конечно не идеальный, но пока устраивает. </a></p>
7
<p>На nginx- и postfix- модулях информация берется из локальных slave-копий базы master, таким образом падение admin-модуля не оставит систему без списка обслуживаемых адресов.</p>
7
<p>На nginx- и postfix- модулях информация берется из локальных slave-копий базы master, таким образом падение admin-модуля не оставит систему без списка обслуживаемых адресов.</p>
8
<h2>postfix-модуль</h2>
8
<h2>postfix-модуль</h2>
9
В нашем случае один postfix-модуль должен уметь осуществлять доставку в любой dbmail-модуль, поэтому конфигурация была немного расширена:<p>В master.cf описаны транспорты:</p>
9
В нашем случае один postfix-модуль должен уметь осуществлять доставку в любой dbmail-модуль, поэтому конфигурация была немного расширена:<p>В master.cf описаны транспорты:</p>
10
А вот на основании этих параметров в main.cf postfix и узнает какие домены и ящики он обслуживает и куда именно отдавать принятую почту:domain.cfmailbox.cf
10
А вот на основании этих параметров в main.cf postfix и узнает какие домены и ящики он обслуживает и куда именно отдавать принятую почту:domain.cfmailbox.cf