Установка и настройка WebMail Lite на CentOS 8

Обновлено Обновлено: Опубликовано Опубликовано:

Afterlogic WebMail Lite — веб-клиент для работы с почтой, написанный на PHP. Мы рассмотрим процесс его установки на свой сервер с CentOS 8 и настройки для подключения к внутреннему почтовому серверу. Подразумевается, что у нас уже настроен почтовый сервер. Инструкцию можно использовать для настройки данного почтового клиента как на выделенном сервере, так и на одном сервере с почтовым сервером.

Подготовка системы

1. В брандмауэре должны быть открыты порты для отправки запросов на веб-сервер. Это можно сделать командами:

firewall-cmd --permanent --add-port={80,443}/tcp

firewall-cmd --reload

* в данном примере мы откроем порты для http (80 порт) и https (443).

2. Устанавливаем wget и unzip командой:

dnf install wget unzip

3. Отключаем SELinux. Для этого вводим 2 команды:

setenforce 0

sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

* первая команда отключит разово SELinux; вторая — не даст ему запуститься после перезагрузки.

Требования к системе

Для работы WebMail Lite необходимо, чтобы на сервере были установлены следующие компоненты:

  • Веб-сервер: Apache или NGINX. Мы рассмотрим оба варианта.
  • PHP 5.6 или 7 (рекомендуется).
  • СУБД: MySQL или MariaDB. Будем использовать последнюю.

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

Веб-сервер

И так, мы решили рассмотреть вариант настройки как с NGINX, так и Apache. В данном разделе выполним только установку, а настройку — позже.

Если используем NGINX

Для установки NGINX выполняем 

dnf install nginx

После установки nginx разрешаем его автозапуск и стартуем сервис:

systemctl enable nginx --now

Открываем браузер и переходим на страницу http://<IP-адрес сервера> — мы должны увидеть страницу приветствия NGINX:

Страница приветствия от NGINX

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

Веб-сервер NGINX установлен.

Если используем Apache

Для установки Apache в CentOS выполняем команду:

dnf install httpd

После установки разрешаем его автозапуск и стартуем сервис httpd:

systemctl enable httpd --now

Открываем браузер и переходим на страницу http://<IP-адрес сервера> — мы должны увидеть страницу приветствия Apache:

Страница приветствия от Apache

Веб-сервер Apache установлен.

PHP

Мы рассмотрим установку PHP версии 7. Процесс зависит от выбранного нами веб-сервера.

Установка php и компонентов

Сначала выполним установку php и компонентов, необходимых для работы webmail lite:

dnf install php php-json php-xml

* где

  • php-json — модуль для обмена данными в формате JSON.
  • php-xml — обработка XML.

Настройка связки с NGINX

Если у нас будет использоваться nginx, устанавливаем php-fpm:

dnf install php-fpm

Разрешаем автозапуск модуля и стартуем его:

systemctl enable php-fpm --now

Открываем конфигурационный файл nginx:

vi /etc/nginx/nginx.conf

В раздел http добавляем:

http {
        ...
        location ~ \.php$ {
            set $root_path /usr/share/nginx/html;
            fastcgi_pass unix:/run/php-fpm/www.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_param DOCUMENT_ROOT $root_path;
        }
}

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

systemctl restart nginx

Создаем файл:

vi /usr/share/nginx/html/index.php

<?php phpinfo(); ?>

Открываем браузер и переходим на страницу http://<IP-адрес сервера> — мы должны увидеть страницу phpinfo:

Страница phpinfo в nginx

Настройка связки с Apache

Устанавливаем модуль для связки с apache:

dnf install mod_php

Перезапускаем apache:

systemctl restart httpd

Создаем файл:

vi /var/www/html/index.php

<?php phpinfo(); ?>

Открываем браузер и переходим на страницу http://<IP-адрес сервера> — мы должны увидеть страницу phpinfo:

Страница phpinfo в Apache

Сервер баз данных

Мы рассмотрим установку и использование СУБД MariaDB. Для ее установки вводим:

dnf install mariadb-server

Разрешим автозапуск и запустим сервис:

systemctl enable mariadb --now

Задаем пароль для учетной записи root:

mysqladmin -u root password

Настройка связки php + mariadb

Устанавливаем компонент:

dnf install php-mysqli

Снова переходим на нашу страницу с phpinfo — мы на ней должны увидеть информацию о включенном компоненте mysqli:

Информация о модуле mysqli для php

Установка WebMail Lite

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

Загрузка

Создаем каталог:

mkdir /var/www/wmlite

Скачиваем архив для webmail lite:

wget https://afterlogic.org/download/webmail_php.zip

* в моем примере мы скачиваем webmail lite последней версии. Для загрузки 7-й версии можно воспользоваться ссылкой https://afterlogic.org/download/webmail-lite-php-7.zip.

Распаковываем архив, созданный ранее каталог:

unzip webmail_php.zip -d /var/www/wmlite/

Задаем владельца:

chown -R apache:apache /var/www/wmlite

Создание виртуального домена на веб-сервере

Настраиваем веб-сервер для корректной работы с нашим созданным каталогом.

Если используем NGINX

Создаем файл:

vi /etc/nginx/conf.d/webmail_lite.conf

server {
    listen       80;
    server_name  webmaillite.dmosk.ru;
    set $root_path /var/www/wmlite;
    root $root_path;

    location / {
        index index.php;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_param DOCUMENT_ROOT $root_path;
        fastcgi_read_timeout 300;
    }
}

* где webmaillite.dmosk.ru — адрес сайта, на котором будет отвечать наш почтовый клиент; /var/www/wmlite — каталог, в котором размещены файлы сайта.

Перезагружаем nginx:

systemctl restart nginx

Если используем Apache

Создаем конфигурационный файл:

vi /etc/httpd/conf.d/webmail_lite.conf

<VirtualHost *:80>
    ServerName webmaillite.dmosk.ru
    DocumentRoot /var/www/wmlite
</VirtualHost>

* где webmaillite.dmosk.ru — адрес сайта, на котором будет отвечать наш почтовый клиент; /var/www/wmlite — каталог, в котором размещены файлы сайта.

Перезагружаем apache:

systemctl restart httpd

Создание базы и пользователя в СУБД

Открываем оболочку sql:

mysql -uroot -p

Создаем базу данных для Webmail Lite:

> CREATE DATABASE webmail DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

* данной командой мы создадим базу webmail. По умолчанию будет использоваться кодировка utf8.

Создаем пользователя с полными правами на созданную базу:

> GRANT ALL PRIVILEGES ON webmail.* TO uwebmail@localhost IDENTIFIED BY 'webmail-123';

* данная команда создаст пользователя uwebmail с паролем webmail-123 и доступом к базе webmail.

Выходим из командной оболочки mariadb:

> \q

Установка WebMail Lite через веб-интерфейс

Переходим по адресу виртуального домена, который был нами настроен на предыдущем шаге. В моем случае, это http://webmaillite.dmosk.ru/?install.

Мы должны открыть наш портал именно по доменному имени. Для этого мы его должны зарегистрировать в DNS или занести в файл hosts.

Должна открыться страница проверки компонентов и доступа к директории. Если будут недочеты, необходимо их исправить. В конечном итоге, мы должны увидеть пройденные тесты:

Все компоненты установлены для Webmail Lite

Нажимаем Next. Нас перекинет на страницу авторизации — вводим логин superadmin без пароля:

Вводим логин superadmin без пароля

На начальной странице задаем пароль для суперадмина и выбираем предпочтительный язык, например, русский:

Задаем пароль для суперадмина и выбираем язык

На странице «Database settings» прописываем настройки для подключения к базе данных и кликаем по Test connection:

Настраиваем подключение к базе данных

* ранее мы создали базу webmail с пользователем uwebmail и паролем webmail-123 — используем эти значения; в качестве сервера баз данных указываем локальный сервер (127.0.0.1).

Тестирование подключение должно пройти успешно:

Успешная проверка соединения с базой

Нажимаем на Create/Update tables для создания таблиц в базе данных; в появившемся окне кликаем по OK:

Создаем таблицы в базе

Мы должны увидеть сообщение об успешном создании таблиц:

Успешное создание таблиц

Кликаем по Update configuration:

Обновляем конфигурацию

Мы должны увидеть сообщение об успешном обновлении настроек Webmail Lite:

Успешное обновление конфигурации

Переходим в раздел Почтовые серверы:

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

Справа кликаем по Добавить новый сервер:

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

В открывшемся окне заполняем поля для подключения к нашему почтовому серверу:

Заполняем формы для настройки подключения к почтовому серверу

* где:

  • Название — произвольное название для нашей настройки.
  • Домены — домены, для которых будет работать данная настройка.
  • Сервер IMAP — сервер для подключения по IMAP.
  • Сервер SMTP — сервер для подключения по SMTP.
  • Порт — порт подключения к серверу IMAP/SMTP.
  • SSL — если наш почтовый сервер требует безопасного подключения, необходимо поставить галочку SSL.

Кликаем по Create для создания конфигурации подключения к серверу:

Создаем подключение к почтовому серверу

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

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

Установка и использование Roundcube на CentOS

Почтовый сервер Postfix на CentOS 8 с виртуальными доменами, системой управления, веб-доступом и многим другим

# CentOS # Почта # Серверы
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет