Установка · 6 min read · Feb 09, 2026

Установка RoundCube webmail на Debian 8 (Jessie)

Этот учебник показывает установку последней версии RoundCube webmail на Debian 8. Roundcube — это простой в использовании веб-клиент электронной почты с поддержкой IMAP и SMTP, который можно расширять с помощью плагинов. На Debian 7 RoundCube был доступен в виде пакета .deb, это была не последняя версия, но, по крайней мере, его было легко установить с помощью apt. Для текущего релиза Debian пакет RoundCube больше не доступен, поэтому я опишу установку из исходников здесь. Этот учебник содержит необязательную главу, которая описывает шаги по подключению RoundCube к панели управления хостингом ISPConfig 3.

Предварительные требования

  • Операционная система Debian 8.
  • Веб-сервер Apache с установленным mod_php. Если Apache еще не установлен, то посмотрите наше руководство по LAMP или настройке Perfect Server, чтобы установить подходящую среду.
  • Почтовый сервер (SMTP + IMAP), к которому будет подключаться Roundcube. Это может быть локальный сервер (например, когда вы используете одну из настроек идеального сервера) или удаленный сервер.
  • Имя хоста сервера, которое я буду использовать в этом учебнике, — server1.example.com с IP-адресом 192.168.1.100. Пожалуйста, замените это на IP и имя хоста вашего сервера.

Установка RoundCube

Я установлю RoundCube в директорию /opt/roundcube, чтобы убедиться, что эта установка не будет конфликтовать с любыми системными пакетами Debian. Первый шаг — установить wget, создать директорию /opt/roundcube и загрузить последнюю версию RoundCube с помощью wget в эту директорию. Текущая версия RoundCube — 1.1.3 на момент написания этого учебника, посмотрите на сайте RoundCube, чтобы проверить, есть ли более поздняя версия, которую вы можете использовать.

Войдите как пользователь root в оболочку вашего сервера, затем установите wget и редактор nano:

apt-get install wget nano

Создайте директорию и войдите в нее с помощью команды “cd”:

mkdir /opt/roundcube  
cd /opt/roundcube

Скачайте файл RoundCube tar.gz и распакуйте его:

wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.3/roundcubemail-1.1.3-complete.tar.gz  
tar xfz roundcubemail-1.1.3-complete.tar.gz

Файлы RoundCube теперь находятся в папке /opt/roundcube/roundcubemail-1.1.3. Следующий шаг — переместить их на один уровень выше в /opt/roundcube.

mv roundcubemail-1.1.3/* .  
mv roundcubemail-1.1.3/.htaccess .

Точка в конце двух команд обязательна и является частью команды, не пропустите ее! Удалите пустую директорию и файл tar.gz.

rmdir roundcubemail-1.1.3  
rm roundcubemail-1.1.3-complete.tar.gz

И измените владельца всех файлов на пользователя, от имени которого работает сервер Apache.

chown -R www-data:www-data /opt/roundcube

Установка базы данных RoundCube

Roundcube требует базу данных для хранения настроек почтовых ящиков, контактов и т.д. Я буду использовать MySQL (или MariaDB) в качестве бэкенда базы данных. Мы сейчас создадим базу данных с именем “roundcubemail” и пользователя с именем “roundcube” в MySQL.

Войдите на сервер MySQL с помощью следующей команды:

mysql --defaults-file=/etc/mysql/debian.cnf

Затем выполните следующие команды в оболочке базы данных MySQL, чтобы создать базу данных и пользователя базы данных. Замените слово “secretpassword” в командах ниже на пароль по вашему выбору.

CREATE DATABASE roundcubemail;  
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'secretpassword';  
flush privileges;  
quit

Теперь мы импортируем таблицы RoundCube из файла mysql.initial.sql в нашу новую базу данных.

Запустите следующую команду в оболочке Linux:

mysql --defaults-file=/etc/mysql/debian.cnf roundcubemail < /opt/roundcube/SQL/mysql.initial.sql

Настройка RoundCube и Apache

На этом этапе мы настроим данные базы данных в RoundCube и добавим файл конфигурации RoundCube в Apache.

Я начну с конфигурации базы данных в RoundCube. Выполните следующие команды, чтобы создать новый файл config.inc.php на основе образца конфигурационного файла и открыть его в редакторе nano.

cd /opt/roundcube/config  
cp -pf config.inc.php.sample config.inc.php  
nano config.inc.php

Найдите строку конфигурации базы данных, которая начинается с $config[‘db_dsnw’] и замените ее на следующую строку:

$config['db_dsnw'] = 'mysql://roundcube:secretpassword@localhost/roundcubemail';

Слово “secretpassword” должно быть заменено на пароль, который вы выбрали для базы данных.

Далее найдите строку “smtp_server” и укажите имя хоста вашего SMTP-сервера здесь. В моем случае почтовый сервер — это локальный сервер, поэтому я установлю сервер на “localhost”.

$config['smtp_server'] = 'localhost';

Теперь пришло время настроить Apache. Я создам новый конфигурационный файл roundcube.conf в папке /etc/apache2/conf-available/.

nano /etc/apache2/conf-available/roundcube.conf

Добавьте следующие строки в этот файл и сохраните его.

Alias /roundcube /opt/roundcube  
Alias /webmail /opt/roundcube  
  
  
 Options +FollowSymLinks  
 # AddDefaultCharset UTF-8  
 AddType text/x-component .htc  
   
   
 AddType application/x-httpd-php .php  
 php_flag display_errors Off  
 php_flag log_errors On  
 # php_value error_log logs/errors  
 php_value upload_max_filesize 10M  
 php_value post_max_size 12M  
 php_value memory_limit 64M  
 php_flag zlib.output_compression Off  
 php_flag magic_quotes_gpc Off  
 php_flag magic_quotes_runtime Off  
 php_flag zend.ze1_compatibility_mode Off  
 php_flag suhosin.session.encrypt Off  
 #php_value session.cookie_path /  
 php_flag session.auto_start Off  
 php_value session.gc_maxlifetime 21600  
 php_value session.gc_divisor 500  
 php_value session.gc_probability 1  
   
  
   
 RewriteEngine On  
 RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico  
 # security rules:  
 # - deny access to files not containing a dot or starting with a dot  
 # in all locations except installer directory  
 RewriteRule ^(?!installer)(\.\?[^\.]+)$ - [F]  
 # - deny access to some locations  
 RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F]  
 # - deny access to some documentation files  
 RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml)$ - [F]  
   
  
   
 SetOutputFilter DEFLATE  
   
  
   
 ExpiresActive On  
 ExpiresDefault "access plus 1 month"  
   
  
 FileETag MTime Size  
  
   
 Options -Indexes  
   
  
 AllowOverride None  
 Require all granted  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  

Две строки Alias в первых двух строках делают RoundCube доступным как /roundcube и /webmail на вашем сервере.

Включите конфигурацию и перезагрузите apache:

a2enconf roundcube  
service apache2 reload

Вот и все, RoundCube теперь полностью установлен на вашем сервере, и вы можете получить к нему доступ по IP-адресу сервера и имени хоста через алиасы /roundcube и /webmail. IP моего сервера — 192.168.1.100; для этого я могу открыть RoundCube по адресу http://192.168.1.100/webmail

Вход в RoundCube.

Roundcube - первая страница.

Установка плагина ISPConfig для RoundCube (необязательно)

Когда на вашем сервере установлен iSPConfig 3, то настоятельно рекомендуется установить плагин ISPConfig для RoundCube. Это позволяет вашим пользователям электронной почты управлять своими автоответчиками, фильтрами электронной почты и другими настройками почтового ящика из RoundCube.

Плагин ISPConfig 3 для RoundCube подключается к ISPConfig 3 с помощью удаленного API ISPConfig. Чтобы использовать этот API, нам нужен удаленный пользователь.

Войдите в ISPConfig как пользователь “admin”.

Чтобы создать такого пользователя, перейдите в Система > Управление пользователями > Удаленные пользователи и нажмите кнопку Добавить нового пользователя:

Введите имя пользователя и пароль для нового удаленного пользователя. Я выберу имя пользователя “roundcube” и пароль “!fdWEacBOG1d”.

Настройка удаленного пользователя позволяет тонко настроить контроль доступа; следующие функции должны быть включены:

  • Функции сервера
  • Функции клиента
  • Функции пользователя почты
  • Функции алиасов почты
  • Функции пользователя фильтра спама почты
  • Функции политики фильтра спама почты
  • Функции fetchmail почты
  • Функции белого списка фильтра спама почты
  • Функции черного списка фильтра спама почты
  • Функции фильтра пользователя почты

Наконец, нажмите Сохранить.

Следующие шаги выполнялись в оболочке вашего сервера. Войдите как пользователь root.

Теперь мы установим SSL-сертификат ISPConfig в хранилище SSL-сертификатов Debian.

cp /usr/local/ispconfig/interface/ssl/ispserver.crt /usr/local/share/ca-certificates/  
update-ca-certificates

Откройте файл /etc/php5/cgi/php.ini

nano /etc/php5/apache2/php.ini

Прокрутите вниз, пока не увидите раздел [openssl] файла, и добавьте в него следующую строку:

openssl.cafile=/etc/ssl/certs/ca-certificates.crt

Затем перезапустите apache.

service apache2 restart

Чтобы загрузить дополнение, сначала установите клиент Git.

apt-get install git

Получите последнюю версию плагина RoundCube ISPConfig:

cd /tmp  
git clone https://github.com/w2c/ispconfig3_roundcube.git  
cd /tmp/ispconfig3_roundcube/

И переместите плагин в директорию плагинов roundcube.

mv ispconfig3_* /opt/roundcube/plugins  
cd /opt/roundcube/plugins

Создайте новый файл config.inc.php для плагина на основе образца конфигурации и откройте файл в редакторе nano.

mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php  
nano ispconfig3_account/config/config.inc.php

Заполните данные удаленного пользователя и сохраните файл.

Замените server1.example.com на имя хоста сервера. Когда SSL (HTTPS) используется для соединения с удаленным API, важно, чтобы имя хоста в конфигурации RoundCube совпадало с именем хоста SSL-сертификата интерфейса ISPConfig. Вы можете проверить имя хоста SSL-сертификата ISPConfig с помощью команды:

openssl x509 -in /usr/local/share/ca-certificates/ispserver.crt -text -noout | grep Subject:

Результат в моем случае:

Subject: C=DE, ST=Niedersachsen, L=Lueneburg, O=ISPConfig UG, OU=IT, CN=server1.example.com/[email protected]

Таким образом, имя хоста “server1.example.com” в файле конфигурации плагина совпадает с именем хоста в SSL-сертификате.

Теперь мы активируем новые плагины в RoundCube. Откройте файл конфигурации в редакторе:

nano /opt/roundcube/config/config.inc.php

и добавьте следующую строку в конец файла:

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

Теперь вы можете войти в RoundCube, новые опции можно найти в разделе Настройки > Учетная запись.

Общий аккаунт.

Настройка фильтра почты.

Настройка fetchmail.

Ссылки

  • Debian
  • Roundcube
  • Плагин Roundcube ISPConfig
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.