Настройка exim centos 7

Обновлено: 04.07.2024

Отправка почты является неотъемлемой частью любого интернет-ресурса, но вот настройка сервера, для правильной её работы, является не тривиальной задачей. В этой статье будет рассмотрен процесс установки почтового сервера на базе операционной системы CentOS 7.

1. Установка связки Apache + MySQL + PHP

Обычно, когда дело доходит до установки почтового сервера, веб-сервер и сервер баз данных уже настроен, но если это не так, то подробнее об установке написано в статье Установка LAMP на CentOS 7. Инструкция

2. Подключение дополнительных репозиториев

Для установки всех составляющих потребуется подключить дополнительный репозиторий.

3. Создание базы данных vexim

Для создание связи между всеми составляющими цепи необходимо использовать одну базу данных. Подключаемся к серверу MySQL:

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

4. Установка Postfixadmin

На случай, если не все модули PHP установлены, необходимо произвести дополнительную установку.

Скачиваем Postfixadmin и устанавливаем его в папку /var/www/html/postfixadmin

Редактируем конфигурационный файл config.inc.php:

5. Установка Dovecot

Переименовываем стандартный конфиг, чтобы в случае необходимости можно было к нему вернуться:

Сохраняем следующие записи в конфигурационный файл dovecot.conf:

Для настройки доступа к базе данных, создаем отдельный конфиг dovecot-mysql.conf

и прописываем в него следующие настройки:

6. Установка Exim

Изменяем стандартный конфиг, при этом сохраняя резервную копию.

7. Установка ClamAV

После установки необходимо обновить базы:

8. Удаление Postfix

9. Настройка сервисов и доступов

После включения всех сервисов необходимо произвести настройку прав доступа:

10. Настройка Postfixadmin

Его необходимо заменить в файле config.inc.php (в корне каталога postfixadmin) вместо этой строки:

Далее необходимо войти в систему под созданными данными, добавить необходимые домены и почтовые ящики.

11. Установка Roundcube

Сохраняем следующие данные:

После записи необходимо перезагрузить Apache:

Для дальнейшей установки создаем базу данных, для этого подключаемся к MySQL:

и выполняем запросы (данные указываем свои):

Установка и настройка Roundcube

Чтобы пользоваться сервером в почтовой программе, необходимо использовать следующие данные для подключения:

В данной статье мы установим и настроим почтовый сервер с использованием Exim и Dovecot на CentOS 7.5 VPS с использованием веб интерфейса Roundcube.
Для этого мы используем VPS на базе CentOS; с предварительно установленной с минимальной CentOS 7.5

Что такое Exim?

Exim - это агент пересылки почты (MTA), который обычно используется в Unix-подобных операционных системах. Exim - это бесплатное программное обеспечение, которое распространяется в соответствии с условиями GNU (General Public License), является универсальным и гибким почтовым средством с обширными возможностями для проверки входящей электронной почты.

Что такое Dovecot?

Dovecot - это почтовый сервер с открытым исходным кодом IMAP и POP3 для Linux / UNIX-подобных систем. Безопасность стала краеугольным камнем в создании данного продукта нацеленного на гибкость и быстродействие.
Dovecot - это прекрасный выбор как для небольших, так и для крупных почтовых систем.

Что такое Roundcube?

Roundcube — веб-интерфейс для работы с электронной почтой, предоставляет возможность работать с вашими почтовыми ящиками используя IMAP и SMTP. Приложение обладает мощным функционалом и по возможностям сравнимо с настольными почтовыми клиентами, такими как Outlook Express или Mozilla Thunderbird

Подготовка и настройка

Подключим дополнительный репозиторий EPEL.
Для чего выполним:

Exim установка и настройка

Теперь мы откроем файл /etc/exim/exim.conf, используя ваш любимый редактор,предварительно создав его резервную копию и приведем его к следующему виду:

Обратим внимание на строки tls_certificate и tls_privatekey, мы будем использовать сертификат SSL, Вы можете заказать его на нашем сайте и найти необходимые файлы в Личном кабинете.

Далее перейдем к разделу транспорт и приведем к виду:

local_delivery:
driver = appendfile
directory = $home/Maildir
maildir_format
maildir_use_size_file
delivery_date_add
envelope_to_add
return_path_add

Далее в разделе аутентификации добавим несколько строк:

dovecot_login:
driver = dovecot
public_name = LOGIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
dovecot_plain:
driver = dovecot
public_name = PLAIN
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1

Запустим exim, и добавим его в автозагрузку системы используя systemctl:

Настройка Dovecot

Запустим dovecot, и добавим его в автозагрузку системы используя systemctl.

Roudcube

Alias /roundcube /usr/share/roundcubemail
Alias /webmail /usr/share/roundcubemail


Options none
AllowOverride Limit
Require all granted


Options none
AllowOverride Limit
Require all granted

2) Назначаем валидный(белый) ip адрес с бэерезолвом в хостнейм сервера (PTR).

3) Обновляем свежеустановленую систему:

4) Устанавливаем необходимые репозитории

5) Устанавливаем необходимый прикладной софт

6) Отключаем SELINUX

7) Отключаем firewalld

8) Отключаем и удаляем то что нам не пригодится

Натройка компонентов

Переходим непосредственно к настройке почтовых и вспомагательных сервисов.

Создадим пользователя и групу от имени которого будем работать с почтой.

Так как почту будем хранить в каталоге /var/spool/vmail то туда же и назначим домашнюю деректорию нашего пользователя.

ClamAV

Установим и настроим антивирус, подготовим его для работы с exim.

Создадим пользователя от которого будет рботать демон clamav и добавим его в групу vmail

Создадим файл сервиса для управления clamav через systemd

удаляем последнюю строчку

Обновляем базу сигнатур (займет какое-то время)

Дальше он будет обновлятся по крону.

Запускаем демона clamd

MySQL/MariaDB

Установим и настроим базу данных для хранения информации о наших ящиках и работы postfixadmin, roundcube.

Запустим и установим рутовй пароль

Создадим базу данных и дадим 2 пользователям на нее права (однуму чтение запись, второму чтение(для postfix и exim))

Установим и настроим exim

Основные опции

Routes/Transport

Dovecot

Установим и настроим dovecot

Web services

Nginx+PHP-FPM

Запускаем и добваляем в автозагрузку nginx и php-fpm

Postfixadmin

Установим и проведем первичную настройку

Перезапускаем nginx и php-fpm

Если все проверки пройдено успешно то продолжим конфигурирование.

В открывшемя окне введем пароль(любое сочетание букв и цифр), после нажатия на кнопку нам будет предоставлен хеш нашего пароля который нужно внести в файл конфигурации.

Pfadmin setup1.jpg

Дальше с использованием введенного рание пароля создаем аккаунт администратора.

После установки почтового сервера Exim все его основные настройки хранятся в конфигурационном файле, который находится по одному из путей:

Также возможный путь к конфигурационному файлу - /etc/exim/configure

Если указанных файлов нет, то найдите exim4.conf.template/ exim.conf.template соответственно для ОС Debian/CentOS и выполните команду, которая скопирует их содержимое в файлы exim4.conf/exim.conf по указанным путям:

Изменение портов

Порты по умолчанию, которые слушает Exim, просмотрите командой

Директива netstat может быть по умолчанию не установлена на сервере, для ОС CentOS установка пакета сетевых директив выполняется командой

sudo yum install net-tools


Подтвердите размер инсталляции пакета, нажав “y” при запросе в командой строке.

После установки просмотрите список портов командой netstat.


Для изменения прослушиваемых портов откройте для редактирования конфигурационный файл Exim, для ОС CentOS выполните команду

Перечень портов определяется параметрами daemon_smtp_ports и tls_on_connect_ports.


Для начала редактирования файла в редакторе vi используйте команду i, нажмите клавишу Esc, чтобы остановить редактирование. Для выхода из редактора без сохранения изменений используйте команду :q! При этом курсор должен находиться на последней строке файла. Чтобы сохранить изменения и выйти из редактора используйте команду :wq

Перезапустите Exim, чтобы изменения вступили в силу, выполнив команду

Убедитесь, что слушаются нужные вам порты командой netstat -anp|grep exim

Изменение IP-адреса отправки почты

Если на виртуальном сервере у вас расположено несколько доменов, то можно назначить как индивидуальный IP для каждого, так и одинаковый IP для всех доменов.

Единый IP для всех доменов

Откройте для редактирования конфигурационный файл Exim, найдите секцию transports и добавьте строку


Перезапустите Exim, чтобы изменения вступили в силу, выполнив команду

Индивидуальный IP для каждого домена

Откройте для редактирования конфигурационный файл Exim, найдите секцию transports и посмотрите указанный в строке interface = <;$


Откройте для редактирования указанный в пути файл.

Для каждого домена укажите нужный IP-адрес.

Перезапустите Exim, чтобы изменения вступили в силу, выполнив команду

Убедитесь, что изменения вступили в силу, отправив письмо на внешний ящик (ваш альтернативный e-mail) и просмотрев его заголовки.

Читайте также: