Первая часть статьи посвященной установке и настройке почтового сервера EXIM, pop3/imap сервера Dovecot, и веб интерфейсов для управления и использования всего этого.
Первым делом необходимо разобраться в структуре почтового сервера, по сути почтовый сервер будет состоять из двух частей
- Dovecot — IMAP, POP3 сервер MDA(mail delivery agent). С этим сервером будут взаимодействовать клиенты электронной почты, thunderbird-ы, аутлоки и прочие. Также этот сервер будет отвечать за аутентификацию пользователей и хранение электронной почты на жестком диске до той поры пока пользователь не удалит её.
- EXIM — SMTP сервер MTA (mail transfer agent). Сервер который будет отвечать за прием и отправку почты другим почтовым серверам интернета после чего передавать ее Dovecoty который будет эту электронную почту раскладывать по ящикам пользователей.
И еще одна необходимая вещь для создания почтовика:
Postfix admin — веб интерфейс для создания пользователей (почтовых ящиков) почтового сервера.
Собственно c Postfixadmin и стоит начинать установку и настройку сервера.
Итак, установку будем проводить в четыре этапа:
- первый — Установка Postfix admin -a и создание базы данных будущих пользователей почтового сервера в MySQL.
- второй — Установка и настройка Dovecot -a который будет предоставлять доступ этим пользователям к их почтовым ящикам по протоколу POP3 или IMAP.
- третий — Установка и настройка агента передачи почты EXIM для отправки и приема почты от других почтовых серверов интернета.
- четвертый — Установка и настройка веб клиента электронной почты Roundcube.
Так как управление сервером будет осуществляется через веб интерфейсы мы должны иметь настроенные Apache и DNS сервера. Полная настройка апача и днс материал для отдельной статьи тут приведу конфиги которые нужно добавить в уже настроенные сервера.
В папку конфигов виртуальных хостов апача «/etc/apache2/vhosts.d/» добавляем файл «pfa.example.com.conf» следующего содержания:
<VirtualHost *> DocumentRoot /srv/www/pfadmin ServerName pfa.example.com ServerAdmin admin@example.com <Directory /srv/www/pfadmin> AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
В папке «/srv/www/pfadmin» должен находится скачанный и распакованный postfixadmin также необходимо дать веб серверу права на доступ к папке и файлам:
srv:/srv/www # chown -R wwwrun:www pfadmin
В файл зоны DNS сервера добавляем строку:
pfa CNAME example.com.
Теперь постфиксадмин будет доступен по адресу pfa.example.com.
Далее переходим в командную строку запускаем mysql и создаем пользователя и базу данных в которой будут хранится данные о почтовых аккаунтах.
mysql -p -u root <вводим пароль root> >CREATE DATABASE postfixdb; >CREATE USER 'postfix'@'localhost' IDENTIFIED BY 'choose_a_password'; >GRANT ALL PRIVILEGES ON `postfix` . * TO 'postfix'@'localhost';
где postfixdb — имя базы данных
postfix — пользователь базы данных
choose_a_password — пароль к базе данных
Среди файлов postfixadmin ищем «config.inc.php» и исправляем в следующих строках имя базы данных, пользователя и пароль
$CONF['database_user'] = 'postfixdb'; $CONF['database_password'] = 'choose_a_password'; $CONF['database_name'] = 'postfix';
исправляем строку — «$CONF['configured'] = false;» на «$CONF['configured'] = true;»
Переходим браузером по ссылочке
http://pfa.example.com/setup.php
Если все хорошо любуемся целой кучей срочек оканчивающихся «OK», радуемся, постфихадмин практически установлен. Создаем пароль для следующего входа в setup.php и копируем его в строку $CONF['setup_password'] =’ ’, следующим шагом создаем аккаунт админа.
Если гдето не горит «ОК» разбираемся в чем дело и устраняем неисправность.
Заходим по адресу http://pfa.example.com/ вводим ранее созданный емейл и пароль админа и добавляем необходимое колво почтовых ящиков.
На этом настройку и заполнения базы данных пользователей почтового сервера можно считать законченным.