Доброго времени суток всем. Предлагаю вашему вниманию огромный мануал, по настройке почтового сервера под ключ на базе ос CentOS7 и продукта iRedMail
Данная набор статей охватывает полный процесс установки, настройки и запуска почтового сервера. Что вырезано и что добавлено — из системы исключен amavisd и консоль управления iRedAdmin-Pro, все остальные сервисы, такие как clamav, spamassassi, Webmail и прочее допилины до ума. В качестве консоли администрирования установлен Postfixadmin
В процессе настройки будет рассказано о том, какие записи должны быть настроены на ДНС сервере и для чего они необходимы. В конечном итоге мы настроим полностью рабочий почтовый сервер, с коэффициентом доставки в папку входящие 90%
Работа будет построена в несколько этапов, каждый из которых посвящен отдельному сервису или конкретной настройке.
Поехали!!!
Установка операционной системы CentOS7
Первое, что необходимо сделать, настроить саму операционную систему. Я предпочитаю использовать CentOS. Чем обусловлен такой выбор, кратко написано в соответствующей статье.
Установка пакета iRedMail
Забираем скрипт инсталляции. Устанавливаем в картинках
1 2 3 4 |
http://www.iredmail.org/download.html |
Подготовка MySQL
Дадим права пользователю vmailadmin права на создание таблиц, иначе не заводиться Postfixadmin
Можно выполнить установку и вернуть права обратно, но не вижу особого смысла
1 2 3 4 5 6 7 |
USE vmail; GRANT ALL PRIVILEGES ON vmail.* TO 'vmailadmin'@'localhost'; FLUSH PRIVILEGES; DROP INDEX domain on mailbox; DROP INDEX domain on alias; |
Удаляем столбец token и добавляем goto
1 2 3 4 5 |
USE vmail; ALTER TABLE `alias` ADD `goto` TEXT CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL ; |
Устанавливаем Postfixadmin. Что необходимо заменить в скрипте:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$CONF['encrypt'] = 'md5'; $CONF['generate_password'] = 'YES'; $CONF['show_password'] = 'YES'; $CONF['aliases'] = '0'; $CONF['mailboxes'] = '0'; $CONF['maxquota'] = '0'; $CONF['domain_quota_default'] = '0'; $CONF['quota_multiplier'] = '1'; chown -R apache:apache /var/www/mailadmin/* |
Для устранения ошибки php_uname() has been disabled for security reasons in /var/www/postfixadmin-2.93/functions.inc.php
Убираем запрет php_uname в php.ini
Настроим HTTPD
1 2 3 4 5 6 |
vi /etc/httpd/conf.d/ssl.conf Alias /mailadmin "/var/www/mailadmin/" service httpd restart |
Правим Dovecot
1 2 3 4 5 6 7 8 |
vi /etc/dovecot/dovecot.conf ssl = yes disable_plaintext_auth = no vi /etc/dovecot/dovecot-mysql.conf default_pass_scheme = PLAIN-MD5 |
Правим Postfix
1 2 3 |
vi /etc/postfix/main.cf |
Отключим ненужное
1 2 3 4 5 6 |
systemctl disable NetworkManager.service yum remove clamav-update clamav-filesystem clamav-lib clamav-server clamav-server-systemd clamav clamav-data yum remove amavisd-new |
Для того, что бы верно формировалась статистика в AWStat, необходимо немного подпилить строку формата под существующий лог иначе статистика будет неверная
1 2 3 4 5 6 |
LogFile="/var/log/httpd/ssl_access_log" LogFormat="%host %other %other %time1 %methodurl %code %bytesd" HostAliases="localhost 127.0.0.1 89.223.30.239" SkipHosts="127.0.0.1 89.223.30.239"" |