Записки админа

Записки админа

1. CentOS7. Настройка почтового сервера. Установка системы, postfix, dovecot, postfixadmin.

Первоначальная настройка CentOS7

1. Ставим систему. Установка стандартная. При ней создаются все необходимые разделы, раздел home размещается на lvm-томе, что позволяет в дальнейшем его расширение.

2. Настраиваем фаерволл через утилиту firewalld. В самом простом случае этого инструмента достаточно. Для более тонкой настройки можно включить стандартный iptables. Как это сделать ищите в интернете =)
Примеры:

Добавляем что нужно в нашем случае. При условии что одна сетевая в сервере:

3. Ставим необходимые утилиты:

4. Настраиваем часовой пояс:

5. Проверяем установлен ли сервис синхронизации времени chrony: yum install chrony. Усли его нет то он установится. После чего включаем его:

И проверяем запустился ли он:

6. Устанавливаем MariaDB сервер и запускаем его:

7. Запускаем первоначальную настройку МарииДБ, где ставим рут пароль, удаляем тестового пользователя и базу:

8. Создаем базу данных для postfix и dovecot:

9. Ставим EPEL-репозиторий:

10. Устанавливаем apache, php и необходимые модули:

11. Ставим Postfixadmin:

Сразу ставим dovecot (иначе не работает хеширование пароля dovecot:CRAM-MD5)

Создаем в /etc/httpd/conf.d файлик pfadmin.conf (в моем случае я открыл к нему доступ только из локалки):

Создаем в директории /data/www/postfixadmin папку templates_c и даем на нее полные права для apache:apache

Копируем файл config.inc.php в config.local.php и правим в нем настройки:

Заходим на страничку http://ipaddress/setup и задаем пароль на установку и копируем хеш пароля в config.local.php в переменную $CONF[‘setup_password’]
После этого обновляем странице, опять набираем пароль установки, email админа, и пароль админа. Все! Суперадмин создан. Можно заходить.
Если вы забыли логин/пароль суперпользователя postfixadmin (который вы вводите на странице http://бла-бла-бла/postfixadmin/ ), вы можете сделать вот что:
Узнать логин (логины) суперпользователя postfixadmin:

Поле username – это логин. Поле password – хеш пароля.

Сброс пароля суперпользователя postfixadmin:
В файле postfixadmin/config.inc.php ищем параметр $CONF[‘encrypt’]’.
Его значение – тиш хеширования. В зависимости от него, генерируем пароль с помощью команды.

Например, если $CONF[‘encrypt’] = ‘dovecot:CRAM-MD5′ то новый пароль сгенерируем так:

2858fffd54326fff886f30f05357d4d690cf61f6583533a6f5b1f30f7dea1cd2

Полученную строку подставляем в поле password нашего суперюзера postfixadmin (например, это может быть admin@mailserver.local):
mysql> update admin set password=’2858fffd54326fff886f30f05357d4d690cf61f6583533a6f5b1f30f7dea1cd2′ where username=’admin@mailserver.local’;

Теперь администратор postfixadmin “admin@mailserver.local” имеет пароль “testTEST123”. Логинимся, меняем его на нормальный пароль. Почему сразу не сделать хороший пароль? Потому что мы все команды вводим в консоли и если не стереть всю историю команд, наш пароль будет виден всем, кто может работать в консоли.
12. Установка postfix (если не установлен)

13. Создадим пользователя и группу от которых будет работать почтовая система, а также папку где будет храниться вся почта:

13. Все настройки хранятся в файлах main.cf и master.cf. Поэтому сделаем их бэкап перед правкой.

14. Добавляем в самый конец master.cf (два пробела перед flags обязательны):

15. Еще надо дать права vmail:vmail на запись логов:

16. Конфиг-файлы с запросами к базе данных для postfix генерируются специальный скриптом, который лежит в папке documents постфиксадмина.
17. Минимальные конфиги для постфикс и давкот на данном этапе наже. Далее, начиная с настройки SSL от LetsEncrypt, мы будем только добавлять в эти файлы необходимые настойки.

dovecot.conf:

dovecot-mysql.conf:

main.cf:

master.cf:

Вот и все . Это минимальная конфигурация с которой уже можно работать. Здесь же есть инструкция по получению SSL/TLS с сертификата от Let’s Encrypt. Настройку postfix/dovecot на работу с ними мы рассмотрим в следующей статье.

 

 

 

Оставить комментарий

You must be logged in to post a comment.