Установка и настройка почтового сервера iRedMail
В один момент вы можете прийти к выводу, что вашей компании срочно понадобился почтовый сервер – пространство со сбором и управлением электронными письмами. Только вот незадача: заниматься полной установкой и настройкой нет возможности желания, что тогда? На помощь приходит готовая сборка iRedMail для организации почтового сервера. Главное преимущество – быстрый и простой процесс установки.
Почтовый сервер “из коробки” оптимально настроен для удобного управления и пользования электронной почтой. Все письма надежно будут храниться на сервере, и вам не стоит беспокоиться о приватности переписки, как в случае, если бы вы использовали подписные сервисы по типу Outlook или GSuite.
В данной статье мы рассмотрим как установить почтовый сервер iRedMail на VPS. Для установки потребуется сервер с чистой операционной системой и доступом по SSH с правами суперпользователя root. Поддерживается CentOS, Debian, Ubuntu, FreeBSD, OpenBSD, Rocky Linux, Alma Linux.
Системные требования
iRedMail предназначен для установки на чистый сервер, что означает, что на вашем сервере НЕ установлены никакие компоненты, связанные с почтой, например, MySQL, OpenLDAP, Postfix, Dovecot, Amavisd и т.д. Скрипт установки iRedMail автоматически установит и настроит их для вас. Если что-либо из указанных компонентов уже установлено, ваши конфигурационные файлы будут перезаписаны, а iRedMail в последствии может работать не так, как ожидалось.
Рекомендуется хотя бы 2ГБ оперативной памяти для мало нагруженных систем. В случае использования антиспама и антивируса будет использоваться большая часть ресурсов.
Подготовка к установке
Установите правильное имя вашего сервера. Имя сервера (hostname) должно быть полностью определенным доменным именем (FQDN), неважно, настраиваете вы рабочий или тестовый сервер. Проверить имя сервера можно, выполнив команду:
hostname -f
mx.site.com
Если полученное в результате команды имя сервера не является FQDN, то его нужно изменить. Имя сервера для Centos 7 задается в файле /etc/hostname. Откройте файл вашим любимым текстовым редактором и укажите туда нужное имя сервера.
А также добавьте имя сервера в файле /etc/hosts, чтобы оно было в начале строки, сразу после IP-адреса, примерно так:
127.0.0.1 mx.site.com mx localhost localhost.localdomain
Проверьте имя сервера командой hostname -f снова. Если оно не поменялось на новое значение — перезагрузите сервер для применения настроек.
Выключение SELinux
iRedMail не работает с SELinux, поэтому отключите его, установив указанное ниже значение в своем конфигурационном файле /etc/selinux/config. После перезагрузки сервера SELinux будет полностью отключен.
SELINUX=disabled
Чтобы отключить SELinux для текущей сессии без перезагрузки запустите команду с правами суперпользователя:
setenforce 0
Выключение сторонних репозиториев
Для CentOS включите официальные репозитории yum CentOS-Base и ОТКЛЮЧИТЕ все сторонние репозитории yum, чтобы избежать конфликта пакетов.
Загрузка последнего актуального релиза iRedMail
Перейдите на страницу загрузки последнего стабильного релиза iRedMail и скопируйте ссылку на установщик:
Полученную ссылку скачайте на ваш сервер при помощи wget. Может потребоваться установка пакета wget, если он не установлен:
yum install wget -y
Скачиваем установщик:
wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.9.9.tar.bz2
Устанавливаем архиватор bzip2 для распаковки архива:
yum install bzip2 -y
Распакуем архив:
tar xjf iRedMail-0.9.9.tar.bz2
Предполагаем, вы загрузили архив в папку /root/ (вы попадаете в нее по умолчанию сразу после подключения к серверу по SSH от имени root). Тогда распакованный архив будет в папке /root/iRedMail-0.9.9/ (цифры номера версии могут отличаться, в зависимости от номера актуального релиза, замените их на свои при необходимости).
Процесс установки iRedMail
Для начала установки нужно перейти в папку с распакованным архивом и запустить скрипт iRedMail.sh
cd /root/iRedMail-x.y.z/
bash iRedMail.sh
Приветственный экран:
Для перехода к следующему шагу нужно нажать клавишу Enter. На втором шаге нужно выбрать директорию для хранения почты. Можно оставить значение по умолчанию или указать нужную. Для перехода на следующий шаг нажмите Tab, для переключения курсора на кнопку Next, а затем — Enter.
Здесь можно выбрать способ хранения учетных данных пользователей. Мы рекомендуем MySQL (MariaDB). Для переключения используйте клавиши стрелок, для выбора варианта клавишу Пробел. Для перехода к следующему шагу — Tab и Enter.
Укажите пароль администратора сервера баз данных. Это должен быть длинный набор символов из букв, цифр и знаков препинания. В дальнейшем вам, скорее всего не потребуется его использовать, потому его можно не запоминать. А также вся необходимая информация, в том числе и пароли, будет записана в одном документе, который будет доступен администратору.
Укажите имя домена, с которого вы будете отправлять почту. После установки можно будет добавить другие домены при необходимости. Обратите внимание, нужно прописать имя домена, на котором в последствии будут создаваться email-адреса, а не hostname сервера.
Далее нужно установить пароль на учетную запись администратора почтового сервера, она же ваш email-адрес по умолчанию, куда после установки будет отправлена все информация по дальнейшей настройке сервера. Пароль должен быть длинным и сложным (от 12 символов) и содержать латинские буквы разного регистра и цифры. Для этого пароля нельзя использовать спец-символы и знаки препинания. Этот пароль вам нужно запомнить или сохранить в надежном месте, поскольку он будет постоянно использоваться для входа в веб-интерфейс iRedAdmin.
На следующем шаге нужно выбрать компоненты, которые будут установлены. Можно выбрать все, или исключить некоторые. Обязательно установите iRedAdmin — интерфейс управления учетными записями.
Это был последний шаг настроек. После этого нужно подтвердить установку компонентов (нажать клавишу Y и Enter) дождаться завершения установки всех необходимых пакетов. В конце на экране терминала будет такой вывод:
На экран будут выведены все основные ссылки для перехода в веб-интерфейс и данные доступа учетной записи администратора.
Получение бесплатного SSL от Let’s Encrypt для iRedMail
Что нужно выяснить перед получением сертификата?
Для каких доменных имен требуются сертификаты?
- Имя сервера (hostname) — это имя обычно используется при настройке соединения с почтовыми клиентами (Outlook, Thunderbird и др.) В нашем примере — iredmail.mytestsite.co.ua
- Имена, по которым будет осуществляться веб-доступ к панелям администрирования (https://iredmail.mytestsite.co.ua/iredadmin/, https://iredmail.mytestsite.co.ua/mail/)
- Для домена, на котором будут создаваться почтовые ящики (mytestsite.co.ua), сертификат не требуется, если он не используется для веб-интерфейсов.
Один сертификат для всех доменных имен или несколько сертификатов?
Nginx и Dovecot могут использовать разные сертификаты для разных доменных имен (SNI), но Postfix — нет. Потому мы рекомендуем использовать один SSL-сертификат, который покрывает сразу все необходимые имена.
Проверьте DNS-записи для ваших доменных имен. Убедитесь, что все используемые домены (субдомены) направлены А-записями на IP-адрес вашего сервера. Можно проверить это при помощи команды dig:
dig +short iredmail.mytestsite.co.ua
194.28.87.18
Если в ответ на команду вы получите IP-адрес сервера — все настроено правильно.
Получение сертификата Let’s Encrypt SSL
Сначала установим пакет certbot, предназначенный для выпуска и автоматического обновления сертификатов от Let’s Encrypt:
yum install certbot
Далее запускаем получение SSL-сертификата:
certbot certonly --webroot -w /var/www/html -d iredmail.mytestsite.co.ua
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]
Starting new HTTPS connection (1): acme-staging-v02.api.letsencrypt.org
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-staging-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for iredmail.mytestsite.co.ua
Using the webroot path /var/www/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges
Resetting dropped connection: acme-staging-v02.api.letsencrypt.
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/iredmail.mytestsite.co.ua/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/iredmail.mytestsite.co.ua/privkey.pem
Your cert will expire on 2019-05-08. To obtain a new or tweaked
version of this certificate in the future, simply run certbot
again. To non-interactively renew *all* of your certificates, run
"certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
В процессе вводим email-адрес для регистрации в сервисе и подтверждаем согласие с условиями использования.
Сертификат был получен и его файлы сохранены в папке /etc/letsencrypt/live/iredmail.mytestsite.co.ua/. Если вы хотите получить сертификаты для нескольких доменов одновременно, то нужно перечислить их в команде выпуска сертификата через опцию -d:
certbot certonly --webroot -w /var/www/html -d site1.com -d site2.com ...
Изменяем права доступа на папку с сертификатами, чтобы другие пользователи системы имели право чтения:
chmod 0644 /etc/letsencrypt/{live,archive}
Для автоматического обновления сертификатов настраиваем cron-задачу:
crontab -e
и добавляем в открывшемся редакторе текст:
1 3 * * 0 certbot renew --post-hook 'service postfix restart; service nginx restart; service dovecot restart'
По этой задаче еженедельно в 03:01 будет запускаться скрипт обновления сертификатов, который обновит все сертификаты, срок действия которых истекает менее, чем через 30 дней.
Подключение сертификатов Let’s Encrypt
Во время установки iRedMail были созданы самоподписанные сертификаты, которые были подключены ко всем сервисам (dovecot, postfix, nginx). Для подключения сертификатов Let’s Encrypt вместо них проще всего будет создать символьные ссылки с папки сертификатов Let’s Encrypt в папку сертификатов iRedMail. При этом не потребуется редактировать какие-либо конфигурационные файлы служб.
Создаем символьные ссылки, предварительно переименовав оригинальные файлы сертификатов:
mv /etc/pki/tls/certs/iRedMail.crt{,.bak} # Backup. Rename iRedMail.crt to iRedMail.crt.bak
mv /etc/pki/tls/private/iRedMail.key{,.bak} # Backup. Rename iRedMail.key to iRedMail.key.bak
ln -s /etc/letsencrypt/live/iredmail.mytestsite.co.ua/fullchain.pem /etc/pki/tls/certs/iRedMail.crt
ln -s /etc/letsencrypt/live/iredmail.mytestsite.co.ua/privkey.pem /etc/pki/tls/private/iRedMail.key
Перезапускаем службы:
service postfix restart
service dovecot restart
service nginx restart
service mariadb restart
Начальная настройка iRedMail
Откройте в браузере ссылку вида https://mail.site.com/mail/ (адрес, по которому вы задали расположение веб-интерфейса почты), авторизуйтесь с вашей учетной записью администратора — [email protected]. Вы увидите в папке входящих писем несколько писем с информацией о расположении важных файлов конфигурации в системе, ключе DKIM, который нужно добавить в DNS-зону, ссылки на все веб-интерфейсы, рекомендации по настройке почтовых клиентов и другую важную информацию. Также вся эта информация располагается на сервере в файле /root/iRedMail-0.9.9/iRedMail.tips.
Для создания и настройки почтовых ящиков нужно перейти в панель iRedAdmin, расположенную по ссылке вида https://mail.site.com/iredadmin. Для входа используем email администратора ([email protected]) и его пароль.
Для создания почтового аккаунта нужно нажать Добавить — Пользователь.
Для создания доменов, с которых будет отправляться почта, нужно нажать Добавить — Домен.
Просмотреть список доменов и почтовых ящиков можно в разделе Домены.
Вот и все, на этом основные настройки завершены. И напоследок – настроить данный сервер вы можете на наших новых тарифах NVMe VPS. Если же у вас возникают какие-либо вопросы по настройке iRedMail и не только – смело обращайтесь в нашу поддержку.
Возможно, вас заинтересует
Причины возникновения ошибки 502. Как ее исправить?
Ошибки 5хх означают проблемы на стороне сервера. Если говорить конкретно об ошибке 502, то...
Обновлено: 30.10.2024
|Причины возникновения ошибки 403. Как исправить?
Для большинства пользователей интернета не слишком принципиально, почему они не могут попасть на сайт....
Обновлено: 23.10.2024
|Причины возникновения ошибки 508. Как исправить?
Ошибка 508: Resource Limit Is Reached обычно означает, что ваша учетная запись превысила назначенные...
Обновлено: 15.10.2024
|Как вставить картинку в HTML и оптимизировать ее для лучшего ранжирования в Google
Согласитесь, визуальные эффекты играют важную роль в создании привлекательного и функционального интерфейса. В этой...
Обновлено: 26.09.2024
|
Наш телеграм
с важными анонсами, розыгрышами и мемами
Присоединиться