Как установить 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.onmypc.net
Без этого установщик будет ругаться.
После этого выполните сценарий установки командой ниже:
./iRedMail.sh
В процессе установки вам будет предложено заполнить некоторую информацию. Таким образом, вы сможете установить службу iRedMail.
В первом окне нажмите Yes, чтобы начать процесс установки.
Подтвердите путь к хранилищу, нажав Enter, чтобы скрипт продолжил установку.
Выберите Nginx в качестве веб-сервера, поскольку вы будете получать доступ к iRedMail через доменное имя.
В следующем окне выберите сервер базы данных. В данном руководстве будет использоваться MariaDB.
После выбора сервера базы данных введите надежный пароль MySQL root.
В следующем окне необходимо указать имя вашего домена yourdomain.com.
После установки домена необходимо ввести пароль администратора почтового домена.
В следующем окне просто нажмите кнопку Enter, чтобы продолжить установку, поскольку все опции отмечены по умолчанию.
В следующих вопросах просто введите 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, как показано на рисунке ниже:
Настройка 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.onmypc.net --webroot-path /usr/share/nginx/html/ -d mail.itshaman.onmypc.net
Где mail.itshaman.onmypc.net — это ваш домен. Стоит уточнить, что мы получаем сертификат не для домена второго уровня, а для домена третьего уровня — 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.onmypc.net/fullchain.pem /etc/ssl/certs/iRedMail.crt ln -s /etc/letsencrypt/live/mail.itshaman.onmypc.net/privkey.pem /etc/ssl/private/iRedMail.key
Где mail.itshaman.onmypc.net — должен быть указан ваш домен.
После всех манипуляций перезапускаем службы:
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.onmypc.net, /var/lib/dkim/itshaman.onmypc.net.pem dkim._domainkey.itshaman.onmypc.net. 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.onmypc.net"
Почту указываем ту, которую будит читать системный администратор.
Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.
Вдохновлен www.rosehosting.com
Комментарии (0)