Установка Rainloop и настройка на Ubuntu


Rainloop — красивый и удобный веб-интерфейс для работы с почтой. Установка Rainloop очень проста (аналог Roundcube устанавливается сложнее), интерфейс является PHP приложением.



Единственным очевидным минусом является платность использования в корпоративной среде. Для частного использования  на почтовом сервере Rainloop является по мнению многих лучшим выбором. В отличие от, например, Roundcube, с Rainloop установка очень проста. Рассмотрим процесс настройки для Ubuntu.



Установка Rainloop на Ubuntu и базовая настройка


Rainloop работает как виртуальный хост и в базовой конфигурации не использует БД. MySQL применяется только для хранения контактов пользователей.



Обновляем список репозиториев

apt-get update



Устанавливаем apache2 и сервер MariaDB

apt-get install apache2

apt-get install mariadb-server



В процессе установки mariadb запросит пароль root, его потребуется указать и повторить

mysql -u root -p



Далее оказавшись в консоли сервера баз данных создаем базу для контактов, пользователя и выдаем необходимые привилегии

mysql> CREATE DATABASE rainloopdb;

mysql> GRANT ALL PRIVILEGES ON rainloopdb.* TO 'rainloopuser'@'localhost' IDENTIFIED BY 'eeyвре7eoP7aЕJ3зu';

mysql> FLUSH PRIVILEGES;



Доустанавливаем пакеты, которые потребуются — php будет работать как модуль Apache

apt-get install php5 php5-mysql curl libcurl3 libcurl3-dev libmysqlclient15-dev php5-curl php5-json libapache2-mod-auth-mysql



Перезапускаем сервисы

/etc/init.d/apache2 restart

/etc/init.d/mysql restart



Создаем каталог под файлы веб-интерфейса и переходим в него

mkdir /home/mail/rainloop && cd /home/mail/rainloop/



При помощи curl запрашиваем установочный скрипт с сайта пакета и перенаправляем вывод в оболочку

curl -s http://repository.rainloop.net/installer.php | php

Вывод в консоль будет следующим:

[RainLoop Webmail Installer]


* [Success] Installation is finished!



Базовая настройка


Поскольку PHP работает как модуль Apache — все процессы выполняются от имени пользователя www-data, поэтому меняем пользователя и права соответствующим образом

chown -R www-data:www-data /home/mail/rainloop/

find /home/mail/rainloop/ -type d -exec chmod 755 {} \;

find /home/mail/rainloop/ -type f -exec chmod 644 {} \;



Создаем файл виртуального хоста

cd /etc/apache2/sites-available/ && cp 000-default.conf rainloop.conf


mcedit rainloop.conf

<VirtualHost *:80>

ServerName mail.example.com

ServerAdmin [email protected]
DocumentRoot /home/mail/rainloop

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>



Следующая секция добавляется автоматически за счет LetsEncrypt — если веб-интерфейс будет работать с бесплатным https сертификатом.


RewriteEngine on
RewriteCond %{SERVER_NAME} =mail.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]



Подключение по https опционально, но желательно чтобы обеспечить шифрование. Поскольку веб-интерфейс является просто виртуальным хостом Apache сертификат подключается также как для любого сайта.



Активируем файл виртуального хоста

a2ensite rainloop.conf



Проверяем конфигурацию

apache2ctl configtest



В выводе будет OK — перезапускаем сервис

/etc/init.d/apache2 restart


Rainloop установка


Зайти в веб-интерфейс можно обратившись через браузер по адресу

123.123.123.123/mail?admin

Логин: admin

Пароль: 12345


Изменить пароль Rainloop


После первой авторизации пароль следует сменить в веб-интерфейсе.

Если пароль забыт его всегда можно поменять в файле /home/mail/rainloop/data/_data_/_default_/configs/application.ini на 12345, любой другой пароль хэшируется.



Rainloop будет успешно работать с любым почтовым сервером потому, что взаимодействует с файлами на диске (с письмами) и структура БД не имеет значения.

Подойдет любой почтовый сервер — проще всего настраивается Postfix + Dovecot.

Сказать спасибо