Как установить iRedMail на Ubuntu 22.04

iRedMail – это почтовый сервер с открытым исходным кодом, поддерживающий протоколы SMTP, IMAP и POP3. В этот сценарий установки включены Nginx, Postfix как агент передачи почты, Dovecot как IMAP и POP3 сервер, SpamAssassin как сканер спама и ClamAV как сканер вирусов.

Все работает по такой схеме:

Установка iRedMail на Ubuntu 22.04 проста и может занять до 10 минут. Давайте начнем!

Необходимые условия

  • Сервер с Ubuntu 22.04 в качестве ОС и минимум 4 ГБ оперативной памяти
  • Действительное имя хоста и домен, указывающие на IP-адрес сервера
  • Привилегии пользователя: root или не-root пользователь с привилегиями sudo

Шаг 1. Обновление системы

Обновите системные пакеты до последней доступной версии перед установкой iRedMail на вашу систему.

sudo apt-get update -y && sudo apt-get upgrade -y

Шаг 2. Скачайте iRedmail

Скачайте последний стабильный релиз iRedMail с Github с помощью следующей команды:

cd /root
wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.6.4.tar.gz

После успешной загрузки извлеките файл.

tar -xzvf 1.6.4.tar.gz

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

ls -al

Вы должны получить следующий результат:

[root@vps ~]# ls
1.6.2.tar.gz  iRedMail-1.6.4

Шаг 3. Установка iRedMail в Linux

Войдите в каталог iRedMail-1.6.4 и сделайте сценарий исполняемым

cd iRedMail-1.6.4/
chmod +x iRedMail.sh

До запуска установки и настройки iRedMail нужно указать правильное название имени сервера в формате FQDN:

hostnamectl set-hostname mail.itshaman.ru

Без этого установщик будет ругаться.

После этого выполните сценарий установки командой ниже:

./iRedMail.sh

В процессе установки вам будет предложено заполнить некоторую информацию. Таким образом, вы сможете установить службу iRedMail.

В первом окне нажмите Yes, чтобы начать процесс установки.

Как установить iRedMail на Ubuntu 22.04

Подтвердите путь к хранилищу, нажав Enter, чтобы скрипт продолжил установку.

Как установить iRedMail на Ubuntu 22.04

Выберите Nginx в качестве веб-сервера, поскольку вы будете получать доступ к iRedMail через доменное имя.

Как установить iRedMail на Ubuntu 22.04

В следующем окне выберите сервер базы данных. В данном руководстве будет использоваться MariaDB.

Как установить iRedMail на Ubuntu 22.04

После выбора сервера базы данных введите надежный пароль MySQL root.

Как установить iRedMail на Ubuntu 22.04

В следующем окне необходимо указать имя вашего домена yourdomain.com.

Как установить iRedMail на Ubuntu 22.04

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

Как установить iRedMail на Ubuntu 22.04

В следующем окне просто нажмите кнопку Enter, чтобы продолжить установку, поскольку все опции отмечены по умолчанию.

Как установить iRedMail на Ubuntu 22.04

В следующих вопросах просто введите Y и нажмите Enter, чтобы завершить установку. После завершения установки вы должны получить следующее сообщение.

********************************************************************
* URLs of installed web applications:
*
* - Roundcube webmail: https://mail.yourdomain.com/mail/
* - netdata (monitor): https://mail.yourdomain.comk/netdata/
*
* - Web admin panel (iRedAdmin): https://mail.yourdomain.com/iredadmin/
*
* You can login to above links with below credential:
*
* - Username: postmaster@yourdomain.com
* - Password: YourStrongPasswordHere
*
*
********************************************************************
* Congratulations, mail server setup completed successfully. Please
* read below file for more information:
*
*   - /var/www/html/iRedMail-1.6.2/iRedMail.tips
*
* And it's sent to your mail account postmaster@yourdomain.com
*
********************* WARNING **************************************
*
* Please reboot your system to enable all mail services.
*
********************************************************************

Вам необходимо перезагрузить систему, а затем войти в веб-административную панель iRedMail по адресу https://mail.yourdomain.com/iredadmin/

После входа в систему вы увидите панель администратора iRedMail, как показано на рисунке ниже:

Как установить iRedMail на Ubuntu 22.04

Настройка SSL-сертификата

Установка

После установки iRedMail используется самоподписанные сертификат. Это плохо, так как при работе с почтой будут постовянне ошибки и предупреждения.

Давайте «прикрутим» бесплатный сертификат от Let’s Encrypt. Для этого открываем конфиг nginx:

sudo nano /etc/nginx/sites-enabled/00-default-ssl.conf

и добавляем секцию:

server {
    …
    root /var/www/html;
    index index.php index.html;

    location ~ /.well-known {
        root /usr/share/nginx/html;
        allow all;
    }

    include …
    …
}

Перезапускаем web-сервер nginx:

sudo service nginx restart

Устанавливаем certbot-агент для работы с сертификатами Let’s Encrypt:

 sudo apt install certbot

и запускам процесс получения сертификата:

certbot certonly --webroot --agree-tos --email postmaster@itshaman.ru --webroot-path /usr/share/nginx/html/ -d mail.itshaman.ru

Где mail.itshaman.ru — это ваш домен. Стоит уточнить, что мы получаем сертификат не для домена второго уровня, а для домена третьего уровня — mail.ВАШ_ДОМЕН.ru

Процесс должен завершиться выводом поздравления:

Successfully received certificate.

Далее нам нужно удалить самоподписанные сертификаты, которые были добавлены при установке iRedMail, и поставить ссылки на только что созданные.

Удаляем:

rm -f /etc/ssl/private/iRedMail.key
rm -f /etc/ssl/certs/iRedMail.crt

Новые ссылки:

ln -s /etc/letsencrypt/live/mail.itshaman.ru/fullchain.pem /etc/ssl/certs/iRedMail.crt
ln -s /etc/letsencrypt/live/mail.itshaman.ru/privkey.pem /etc/ssl/private/iRedMail.key

Где mail.itshaman.ru — должен быть указан ваш домен.

После всех манипуляций перезапускаем службы:

systemctl reload nginx postfix dovecot

Автоматическое обновление

Так как сертификат выдается всего на 90 дней, его нужно переодически продлевать. Давайте создадим CRON-задачу.

Открываем crontab:

crontab -e

И в конце файла добавляем строку:

0 0 * * 1,4 /usr/bin/certbot renew --noninteractive

Чтобы ваши письма не попали в спам

A-запись

mail A 90.156.242.199

MX-запись

@ MX mail

SPF-запись

@ text="v=spf1 a mx -all"

DKIM

Смотрим какая DKIM-запись создана при установке почтового сервера:

amavisd showkeys

Получаем вывод:

; key#1 2048 bits, i=dkim, d=itshaman.ru, /var/lib/dkim/itshaman.ru.pem
dkim._domainkey.itshaman.ru.    3600 TXT (
  "v=DKIM1; p="
  "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnlLcUM3rHBDc9zdfl5AJ"
  "atMjNIRJFKQhI9FYccYI2Jpz34u/xWgDO+wuKzNLadCheZQ62zt4O3rDGa2N5v/J"
  "wn8Sr+8oO8kzStbHPnPhPTzuGofVfkv8oRF7AmVQfb6LrvbF0hcZtLZWwgLgNqNx"
  "3Wy46I30aHDNL5qwILl4nIFcMxnByPD3GcgKYOef4YoQA+vQyzNNZDsf+tQWrp1P"
  "V6UzYi7y6gLBWL1YXQpLlQ0vp9LWnOpLHh2WfubdA3HzjTbiMAqOUUk0wKVDjDuO"
  "tovqQJaVme8lw53gCxKARR2+72ZZyGfCZqci9ssOinrErFrhwtXVh6Qp9ged48pV"
  "iwIDAQAB")

Создаем TXT-запись вида:

dkim._domainkey text="v=DKIM1; p=MIIBIjA...iwIDAQAB"

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

DMARC

_dmarc. 3600 IN TXT "v=DMARC1; p=quarantine; sp=none; pct=100; fo=0; rua=mailto:postmaster@itshaman.ru"

Почту указываем ту, которую будит читать системный администратор.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.rosehosting.com

Похожие статьи

Комментарии (0)