Акция на автобэкапы закончится через . Узнать промокод на скидку и подробности.

Установка и настройка roundcube на сервере без панели управления

Roundcube — это почтовый клиент, который позволяет просматривать и отправлять письма через веб-интерфейс. Если у вас не будет входящих сообщений, либо вы будете использовать локальный почтовый клиент, например, Thunderbird и подобные, то можно обойтись и без roundcube. На отправку и доставку писем это никак не влияет.

Устанавливаем веб-сервер и сервер БД

Если вы выполняли настройку почтового сервера, используя вариант с хранением паролей в БД, то этот пункт нужно пропустить и сразу перейти к установке roundcube. А если выбрали вариант с хранением в файле, то идем по порядку:

Centos:

yum install httpd -y

Debian/Ubuntu:

apt install apache2 -y

Запускаем службу и добавляем в автозагрузку:

Centos:

systemctl start httpd
systemctl enable httpd

Debian/Ubuntu:

systemctl start apache2
systemctl enable apache2

Устанавливаем сервер БД:

Centos:

yum install mariadb mariadb-server -y

Запускаем БД и добавляем в автозагрузку:

systemctl start mariadb
systemctl enable mariadb

Теперь нужно завершить установку и задать пароль пользователя mysql — root. Выполняем команду, на все вопросы жмем enter, при запросе нового пароля (шаг 2) придумываем и вводим новый пароль для пользователя root:

/usr/bin/mysql_secure_installation

Debian/Ubuntu:

apt install mysql-server mysql-client -y

При установке в Debian 8 и Ubuntu 16.04 нужно будет указать, какой пароль root будет у БД:

В Ubuntu 18.04 и Debian 9 пароль пользователя root при установке указывается пустой.

Запускаем БД и добавляем в автозагрузку:

systemctl start mysql
systemctl enable mysql

Установка roundcube

Качаем архив с roundcube:

wget https://github.com/roundcube/roundcubemail/releases/download/1.3.9/roundcubemail-1.3.9-complete.tar.gz -O roundcube.tgz

Разархивируем его и создадим символическую в директорию на сайте:

tar -zxf roundcube.tgz
mv roundcubemail-* /usr/share/webmail

Если у вас сайт расположен не в /var/www/html, то укажите свой путь до сайта:

ln -s /usr/share/webmail/ /var/www/html/

Выставим права на директорию:

Centos:

chown -R apache:apache /usr/share/webmail/

Debian/Ubuntu:

chown -R www-data:www-data /usr/share/webmail/

Ставим php и расширения php, которые нужны для работы roundcube:

Centos:

yum install php php-xml php-intl php-ldap php-gd php-pecl-imagick php-pdo php-mbstring php-mysql -y

Debian 9/Ubuntu

apt install libapache2-mod-php php php-intl php-ldap php-gd php-imagick php-dom php-mbstring php-mysqli -y

Debian 8:

apt install libapache2-mod-php5 php5 php5-intl php5-ldap php5-gd php5-imagick php5-mysql -y

Устанавливаем временную зону для php в файле php.ini (здесь используется время по Москве):

Centos:

echo "date.timezone = 'Europe/Moscow'" >> /etc/php.ini

Debian 9/ Ubuntu 16.04:

echo "date.timezone = 'Europe/Moscow'" >> /etc/php/7.0/apache2/php.ini

Ubuntu 18.04:

echo "date.timezone = 'Europe/Moscow'" >> /etc/php/7.2/apache2/php.ini

Debian 8:

echo "date.timezone = 'Europe/Moscow'" >> /etc/php5/apache2/php.ini

Перезапускаем веб-сервер для применения настроек:

Centos:

systemctl restart httpd

Debian/Ubuntu

systemctl restart apache2

Создаем базу для roundcube, для этого подключимся к mysql под пользователем root (будет запрошен пароль от пользователя root в mysql):

В ubuntu 18.04 при установке БД пароль не задаётся.

mysql -uroot -p

В открывшейся консоли mysql вводим следующие команды:

CREATE DATABASE roundcubemail;
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ';
FLUSH PRIVILEGES;
exit;

Переходим на страницу установки и проверяем, что все необходимые расширения выставлены — все ОК:

http://ВАШ_ПОЧТОВЫЙ_ДОМЕН/webmail/installer/

Переходим на следующую страницу и вводим пароль от пользователя БД для roundcube (примерно на середине страницы):

Также нужно указать язык — ru_RU в поле language (ближе к концу страницы):

Если все нужные настройки указали, то жмём кнопку Create config внизу страницы и на следующей странице — Continue.

Далее на странице инициализируем БД по кнопке Initialize database:

И можно войти в интерфейс roundcube с созданным почтовым ящиком:

После успешной установки нужно удалить директорию установщика на сервере:

rm -rf /usr/share/webmail/installer/

Готово!