Налаштування зв’язки Postfix PostfixAdmin

Налаштування зв'язки Postfix PostfixAdmin є альтернативою ручному створенню бази даних, а також її структури за бажання використовувати зовнішнє сховище службових даних для Postfix . У статті будуть розглянуті логічні зв'язки Postfix та MySQL.

Знайти більше інформації про Postfix ви можете в основній статті щодо його налаштування - Налаштування Postfix.

Для повноцінного поштового сервера буде дивним використовувати системні облікові записи для надсилання/доставку пошти. Цьому є непогана альтернатива - підключити окрему базу даних MySQL для зберігання службової інформації. У ній можуть зберігатися не лише облікові дані користувачів, але й домени (особливо актуально, якщо ваш Postfix обслуговує декілька доменів), а також аліаси доменів та користувачів.

Нюанс у тому, що адміністратору-початківцю зазвичай не відразу вдається розібратися в зв'язці Postfix + MySQL. Не сприяють цьому і безліч конфігів в інтернеті, які своїми розсипами параметрів лише заплутують. Я ж постараюся виділити з конфіга лише потрібні для налаштування зв'язки параметри, не загострюючи увагу інших. При цьому в рамках цієї статті не йдеться про 100% працюючий конфіг на всі випадки життя. Є ще купи налаштувань (наприклад аутентифікація, адже паролі користувачів у базі зберігаються зазвичай у зашифрованому вигляді), які необхідно встановити, щоб ваш сервер запрацював нормально.

Налаштування зв'язки Postfix PostfixAdmin

Почнемо з найголовнішого — встановлення пакетів

Встановлення пакетів

Встановлюємо необхідні пакети, якщо їх ще немає:

Postfix: під час інсталяції буде запрошено варіант конфігурації. Якщо не знаєте, який вибрати, залиште зазначений за замовчуванням. Докладніше див. у розділі Установка Postfix на Debian. У ній жеописано і початкове налаштування MTA.

PostfixAdmin: ставте з пакетів, не треба мук із вихідними джерелами.

Dovecot: все правильно, він знадобиться вже на цьому етапі. Надалі все одно треба буде його встановлювати, зробимо це зараз.

Налаштування PostfixAdmin

Тепер про головне:

postfixadmin

postfixadmin

Сторінку не закриваємо. Далі всі дії відбуватимуться у конфігураційному файлі PostfixAdmin, для початку зробимо його бекап:

Ну а тепер приступаємо до редагування:

Потрібно змінити такі параметри:

  • Setup password - задаємо раніше збережений пароль установки;
  • Адміністратор - ім'я ящика адміну. У моєму випадку [email protected];
  • Пароль - пароль адміну;
  • Пароль (ще раз) - повторюємо пароль.

Натискаємо Add Admin.

postfixadmin

У веб-інтерфейсі додаємо:

Дивимося, що має вийти:

postfixadmin

На цьому параметр PostfixAdmin закінчується. Тепер треба якось пояснити Postfix, що він тепер вся конфігурація перебуває в MySQL.

Налаштування Postfix

У чому суть: потрібно створити кілька карт sql, за допомогою яких Postfix витягуватиме потрібну йому інформацію. При цьому дані з MySQL будуть потрібні лише для порівняння та більше ні для чого. Наприклад, приходить до нього лист для одержувача [email protected]:

  • він виконує sql-запит (звертаючись до карти), де умовою де буде ім'я домену, на який надійшов лист;
  • MySQL йому повертає результат, що так, такий домен у базі є;
  • Postfix думає Відмінно, значить я обслуговую цей домен, значить пошту треба прийняти, а тепер перевірю як я є в мене такий одержувач;
  • Наступний етап – перевірка одержувача тощо.

Це лише приклад, покликаний показати принцип роботи, не загострюйте у ньому увагу, краще займемося створенням карт.

Для початку зробимо для них окремий каталог: