FreeBSD: установка и настройка Postfix Admin

Автор: | 16/01/2012

Postfix Admin – это web-интерфейс, с помощью которого можно значительно упростить такие задачи как добавление и удаление почтовых доменов, почтовых ящиков и их алиасов, изменение паролей к почтовым ящикам, управление переадресацией почты и многое другое.

Не забудем обновить порты:

# portsnap fetch update

Подробнее обновлении дерева портов и другие полезные команды по работе с портами и пакетами описаны тут>>>.

Установка производится на FreeBSD 8.2-RELEASE.

# pkg_info | grep apache
apache-2.2.21

# pkg_info | grep php
php52-5.2.17_4      PHP Scripting Language

# pkg_info | grep mysql
mysql-client-5.5.17 Multithreaded SQL database (client)
mysql-server-5.5.17 Multithreaded SQL database (server)

Начнем установку.

# cd /usr/ports/mail/postfixadmin/
# make install clean

Авторизация будет через базу  MySQL:

Установка завершена:

# pkg_info | grep postfixadmin
postfixadmin-2.3.4

Требования к нему:

REQUIRED!!
———-
– You are using Postfix 2.0 or higher.
– You are using Apache 1.3.27 / Lighttpd 1.3.15 or higher.
– You are using PHP 4.1 or higher (5.X recommended)
– You are using MySQL 3.23 or higher (5.x recommended) OR PostgreSQL 7.4 (or higher)

Теперь можно добавить виртуалхост для доступа к панели управления. Подробнее о виртуалхостах можно прочитать тут>>>.

# ee /usr/local/etc/apache22/httpd.conf

Добавим:

Alias /postfixadmin/ “/usr/local/www/postfixadmin/”

<Directory “/usr/local/www/postfixadmin/”>
Options Indexes FollowSymLinks
AllowOverride Limit
Order Allow,Deny
Allow from all
</Directory>

Опциями “Order Allow,Deny / Allow from all” можно ограничить доступ к виртуалхосту только с определенных IP-адресов.

Далее, в файл:

# ee /usr/local/etc/apache22/extra/httpd-vhosts.conf

добавим описание виртуалхоста:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /usr/local/www/postfixadmin
ServerName postfixadmin
ErrorLog /var/log/apachelogs/postixadmin-error.log
CustomLog /var/log/apachelogs/postixadmin-access.log common
</VirtualHost>

Создадим файлы логов:

# touch /var/log/apachelogs/postixadmin-access.log
# touch /var/log/apachelogs/postixadmin-error.log

Перезагрузим Apache:

# apachectl restart

Можно переходить к созданию базы, в которой будут храниться настройки Postfix. Про установку MySQL можно почитать тут>>>.

# mysql -uroot -p
Enter password:
mysql> create database postfix;
Query OK, 1 row affected (0.01 sec)

mysql> grant all on postfix.* to ‘postfix’@’localhost’ identified by ‘mypassword‘;
Query OK, 0 rows affected (0.06 sec)

mysql>exit

Переходим к настройке самого Postfix Admin.

# ee /usr/local/www/postfixadmin/config.inc.php

#т.к. базу и пользователя MySQL мы создали, меняем на true
$CONF[‘configured’] = false;

#URL, на котором будет крутиться панель
$CONF[‘postfix_admin_url’] = ‘postmaster.website.co.ua’;

#язык панели по-умолчанию
$CONF[‘default_language’] = ‘ru’;

Далее параметры подключения к базе MySQL:

$CONF[‘database_type’] = ‘mysql’;
$CONF[‘database_host’] = ‘localhost’;
$CONF[‘database_user’] = ‘postfix’;
$CONF[‘database_password’] = ‘mypassword‘;
$CONF[‘database_name’] = ‘postfix’;

Пора проверить (не обращаем внимания на защищённый протокол https – настраивал когда-то на домене, подробнее тут>>>.):

https://website.co.ua/postfixadmin/login.php

Теперь переходим к настройке:

https://website.co.ua/postfixadmin/setup.php

Внизу страницы нас попросят ввести пароль для управления настройкой PostfixAdmin-a. Укажем пароль, повторим, нажмем Generate hash.

Переходим на следующую страницу, и видим такое:

Разберемся с ошибкой Magic Quotes: ON:

# ee /usr/local/etc/php.ini

Находим строки:

; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = On

и меняем значение на Off. После этого перезапустим Apache:

# apachectl restart

и обновим страницу.

Вводим в первой строке пароль, который мы указывали на предыдущей странице, далее – ящик, который будет нашим логином и новые пароли для доступа к Postfix Admin.

Начиная с версии 2.3 удалять файл setup.php НЕ НУЖНО.

Теперь можно перейти на страницу логина и войти в панель управления:

https://website.co.ua/postfixadmin/login.php

Вводим логин/пароль, и наконец-то попадаем в панель управления:

Переходим в раздел Список доменов > Новый домен и добавляем домен, на котором будет крутиться почта:

Если установить галочку “Почтовый сервер является резервным МХ” – то почта будет просто перенаправляться на основной сервер МХ, не сохраняясь в ящиках на этом сервере.

Переходим в раздел Обзор > Создать ящик:

Все, установка и настройка Postfix Admin завершена.

Теперь можно переходить к настройке домена и самого почтового сервера.