Встановлення і налаштування поштового сервера iRedMail
В певний момент ви можете дійти висновку, що вашій компанії терміново знадобився поштовий сервер – простір зі збором та управлінням електронними листами. Тільки от невдача: займатися повною установкою і налаштуванням немає можливості і бажання, що тоді? На допомогу приходить готова збірка iRedMail для організації поштового сервера. Головна перевага – швидкий і простий процес установки.
Поштовий сервер “з коробки” оптимально налаштований для зручного управління та користування електронною поштою. Всі листи надійно зберігатимуться на сервері, тож вам не варто турбуватися про приватність листування₴, як в разі, якби ви використовували підписні сервіси по типу Outlook або GSuite.
У даній статті ми розглянемо як встановити поштовий сервер iRedMail на VPS. Для встановлення буде потрібно сервер з чистою операційною системою і доступом по SSH з правами суперкористувача root. Підтримується CentOS Stream, 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'
За цієї задачею щотижня в 3: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
|
Наш телеграм
з важливими анонсами, розіграшами й мемами
Приєднатися