Установка и настройка roundcube из исходников: различия между версиями

Материал из Wiki МИАЦ ВО
Перейти к навигации Перейти к поиску
 
(не показана 21 промежуточная версия этого же участника)
Строка 1: Строка 1:
Можно, конечно, поставить roundcube из репозитария, но там более старая версия. Да мы не ищем простых путей.
Можно, конечно, поставить roundcube из репозитария, но там более старая версия. Да мы не ищем простых путей.<br />
Данная настройка работает с Postfix, настроенный по этой [http://www.volmed.org.ru/wiki/index.php/%D0%9F%D0%BE%D1%87%D1%82%D0%BE%D0%B2%D1%8B%D0%B9_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80_%D0%BD%D0%B0_%D0%B1%D0%B0%D0%B7%D0%B5_Postfix,_Dovecot_%D0%B8_Ubuntu_14.04_LTS#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.B5.D0.BC_.D1.84.D0.B0.D0.B9.D0.BB.D1.8B_.D0.BE.D0.B1.D1.80.D0.B0.D1.89.D0.B5.D0.BD.D0.B8.D1.8F_.D0.BA_.D0.B1.D0.B0.D0.B7.D0.B5_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85 статье].
==Скачать и распаковать дистрибутив==
==Скачать и распаковать дистрибутив==
Идем на [http://roundcube.net/download/ roundcube] и скачиваем последнюю версию Complete (в нашем случае = это: 1.0.0)<br />
Идем на [http://roundcube.net/download/ roundcube] и скачиваем последнюю версию Complete (в нашем случае = это: 1.6.0)<br />
Расспаковываем его в папку /var/www/roundcube
Расспаковываем его в папку /var/www/roundcube
<pre>sudo tar -xvzf roundcubemail-1.0.0.tar.gz -C  /var/www/
<pre>sudo tar -xvzf roundcubemail-1.6.0-complete.tar.gz -C  /var/www/
sudo mv /var/www/roundcube* /var/www/roundcube
sudo mv /var/www/roundcube* /var/www/roundcube
sudo chown -R www-data:www-data /var/www/roundcube</pre>
sudo chown -R www-data:www-data /var/www/roundcube</pre>
==Настройка компонентов==
==Настройка компонентов==
===Apache===
===Apache===
Строка 12: Строка 14:
sudo a2enmod expires
sudo a2enmod expires
sudo a2enmod headers</pre>
sudo a2enmod headers</pre>
Файл конфигурации легко найти в Интернете<br>
Вот один вариант (мб он уже устарел)<br>
Создаем файл /etc/apache2/sites-inable/mail.conf, изменив domen.ru на свой.
Создаем файл /etc/apache2/sites-inable/mail.conf, изменив domen.ru на свой.
<pre><VirtualHost *:80>
<pre><VirtualHost *:80>
Строка 115: Строка 119:
Перезапускаем apache2
Перезапускаем apache2
<pre>sudo service apache2 restart</pre>
<pre>sudo service apache2 restart</pre>
===PHP===
===PHP===
И заходим в браузере по адресу '''http://mail.domen.ru/installer'''<br />
И заходим в браузере по адресу '''http://mail.domen.ru/installer'''<br />
Строка 124: Строка 129:
<pre>sudo php5enmod mcrypt
<pre>sudo php5enmod mcrypt
sudo service apache2 restart</pre>
sudo service apache2 restart</pre>
'''date.timezone:  false'''
Редактируем /etc/php5/apache2/php.ini
date.timezone = Europe/Moscow
Далее
sudo service apache2 restart
===База данных===
===База данных===
Смотрим в разделе '''Checking available databases''' - есть ли нужный драйвер базы данных.
Смотрим в разделе '''Checking available databases''' - есть ли нужный драйвер базы данных.
Строка 134: Строка 145:
<pre>GRANT all ON roundcube.* TO 'roundcube'@'localhost' IDENTIFIED BY 'password';
<pre>GRANT all ON roundcube.* TO 'roundcube'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;</pre>
FLUSH PRIVILEGES;</pre>
И накатываем дамп в базу
 
<pre>mysql -uroot -p roundcube < /var/www/roundcube/SQL/mysql.initial.sql</pre>
==Настройка параметров работы==
Продолжаем настраивать в браузере по адресу '''http://mail.domen.ru/installer'''<br />
Жмем '''NEXT''' и далее настраиваем<br />
Те настройки, которые понятны, я описывать не буду.
===IMAP Settings===
Данные установки это для моего сервера. Для почтовика с другими параметрами подключения, данные параметры мб другими
<pre>
// ----------------------------------
// IMAP
// ----------------------------------
$config['debug_level'] = 13;
$config['default_host'] = 'ssl://mail.volmed.org.ru';
$config['default_port'] = 993;
$config['imap_conn_options'] = array (
  'ssl' =>
  array (
    'verify_peer_name' => false,
    'verify_peer' => false,
  ),
);
 
</pre>
 
===SMTP Settings===
Данные установки это для моего сервера. Для почтовика с другими параметрами подключения, данные параметры мб другими
<pre>
// ----------------------------------
// SMTP
// ----------------------------------
$config['smtp_server'] = 'ssl://mail.volmed.org.ru';
$config['smtp_port'] = 465;
$config['smtp_user'] = '';
$config['smtp_auth_type'] = 'PLAIN';
$config['smtp_conn_options'] = array (
  'ssl' =>
  array (
    'verify_peer' => false,
    'verify_peer_name' => false,
  ),
);
</pre>
 
===Display settings & user prefs===
language *
ru_RU
 
==Тестирование конфигурации==
Жмем '''CREATE CONFIG''' -> '''CONTINUE'''<br />
Попадаем в '''Test config'''<br />
Смотрим, что бы все проверки были  - ОК
===Test SMTP config===
Пробуем отправить письмо, вводя данные для отправки почты.<br>
Вводим только email адреса от кого и куда почта будет уходить<br>
Жмем Send Test Mail. И если все нормально, то мы это увидим в любом почтовом клиенте, в котором можно посмотреть п/я адресата.
 
===Test IMAP config===
Вводим имя и пароль почтового ящика и жмем '''Check Login'''
 
==Окончание настройки==
После проверки работы из web интерфейса http://mail.domain.ru, нужно удалить папку
<pre>rm /var/www/raundcube/installer/</pre>

Текущая версия от 10:51, 25 апреля 2024

Можно, конечно, поставить roundcube из репозитария, но там более старая версия. Да мы не ищем простых путей.
Данная настройка работает с Postfix, настроенный по этой статье.

Скачать и распаковать дистрибутив

Идем на roundcube и скачиваем последнюю версию Complete (в нашем случае = это: 1.6.0)
Расспаковываем его в папку /var/www/roundcube

sudo tar -xvzf roundcubemail-1.6.0-complete.tar.gz  -C  /var/www/
sudo mv /var/www/roundcube* /var/www/roundcube
sudo chown -R www-data:www-data /var/www/roundcube

Настройка компонентов

Apache

Для работы roundcube нужно разрешить следующие модули

sudo a2enmod deflate
sudo a2enmod expires
sudo a2enmod headers

Файл конфигурации легко найти в Интернете
Вот один вариант (мб он уже устарел)
Создаем файл /etc/apache2/sites-inable/mail.conf, изменив domen.ru на свой.

<VirtualHost *:80>
    ServerName mail.domen.ru
    ServerAlias domen.ru
    ErrorLog /var/log/apache2/mail-error_log
    CustomLog /var/log/apache2/mail-access_log common

DocumentRoot /var/www/roundcube

    <Directory /var/www/roundcube>
	Options +FollowSymLinks
	# AddDefaultCharset     UTF-8
	AddType text/x-component .htc

	<IfModule mod_php5.c>
	    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
	</IfModule>

	<IfModule mod_rewrite.c>
	    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]
	</IfModule>

	<IfModule mod_deflate.c>
	    SetOutputFilter DEFLATE
	</IfModule>

	<IfModule mod_headers.c>
	    # replace 'append' with 'merge' for Apache version 2.2.9 and later
	    # Header append Cache-Control public env=!NO_CACHE
	</IfModule>

	<IfModule mod_expires.c>
	    ExpiresActive On
	    ExpiresDefault "access plus 1 month"
	</IfModule>

	FileETag MTime Size

	<IfModule mod_autoindex.c>
	    Options -Indexes
	</ifModule>

	AllowOverride None
	Order allow,deny
	Allow from all
    </Directory>
    
    <Directory /var/www/roundcube/plugins/enigma/home>
	Options -FollowSymLinks
	AllowOverride None
	Order allow,deny
	Deny from all
    </Directory>

    <Directory /var/www/roundcube/config>
	Options -FollowSymLinks
	AllowOverride None
	Order allow,deny
	Deny from all
    </Directory>

    <Directory /var/www/roundcube/temp>
	Options -FollowSymLinks
	AllowOverride None
	Order allow,deny
	Deny from all
    </Directory>

    <Directory /var/www/roundcube/logs>
	Options -FollowSymLinks
	AllowOverride None
	Order allow,deny
	Deny from all
    </Directory>
</VirtualHost>

Прописываем в DNS (или пока в /etc/hosts) mail.domen.ru
Перезапускаем apache2

sudo service apache2 restart

PHP

И заходим в браузере по адресу http://mail.domen.ru/installer
Попадаем на Roundcube Webmail Installer -> Check environment и смотрим - что не хватает в нашей системе для работы roundcube. И устанавливаем необходимые модули. В моем случае не хватало модулей php Mcrypt и Intl

sudo apt-get install php5-mcrypt
sudo apt-get install php5-intl
sudo service apache2 restart

Но инсталлятор говорил, что php5-mcrypt уже установлен. Тогда делаем

sudo php5enmod mcrypt
sudo service apache2 restart
date.timezone:  false

Редактируем /etc/php5/apache2/php.ini

date.timezone = Europe/Moscow

Далее

sudo service apache2 restart

База данных

Смотрим в разделе Checking available databases - есть ли нужный драйвер базы данных. Если есть - все ок, если нет - устанавливаем.

Настройка базы данных

mysql -uroot -p
CREATE DATABASE  roundcube;
USE roundcube;

Внимание! Далее будет использоваться пользователь roundcube и его пароль password для доступа к базе данных в MySQL. Вместо roundcube и password Вы можете задать свои значения.

GRANT all ON roundcube.* TO 'roundcube'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Настройка параметров работы

Продолжаем настраивать в браузере по адресу http://mail.domen.ru/installer
Жмем NEXT и далее настраиваем
Те настройки, которые понятны, я описывать не буду.

IMAP Settings

Данные установки это для моего сервера. Для почтовика с другими параметрами подключения, данные параметры мб другими

// ----------------------------------
// IMAP
// ----------------------------------
$config['debug_level'] = 13;
$config['default_host'] = 'ssl://mail.volmed.org.ru';
$config['default_port'] = 993;
$config['imap_conn_options'] = array (
  'ssl' => 
  array (
    'verify_peer_name' => false,
    'verify_peer' => false,
  ),
);

SMTP Settings

Данные установки это для моего сервера. Для почтовика с другими параметрами подключения, данные параметры мб другими

// ----------------------------------
// SMTP
// ----------------------------------
$config['smtp_server'] = 'ssl://mail.volmed.org.ru';
$config['smtp_port'] = 465;
$config['smtp_user'] = '';
$config['smtp_auth_type'] = 'PLAIN';
$config['smtp_conn_options'] = array (
  'ssl' => 
  array (
    'verify_peer' => false,
    'verify_peer_name' => false,
  ),
);

Display settings & user prefs

language *

ru_RU

Тестирование конфигурации

Жмем CREATE CONFIG -> CONTINUE
Попадаем в Test config
Смотрим, что бы все проверки были - ОК

Test SMTP config

Пробуем отправить письмо, вводя данные для отправки почты.
Вводим только email адреса от кого и куда почта будет уходить
Жмем Send Test Mail. И если все нормально, то мы это увидим в любом почтовом клиенте, в котором можно посмотреть п/я адресата.

Test IMAP config

Вводим имя и пароль почтового ящика и жмем Check Login

Окончание настройки

После проверки работы из web интерфейса http://mail.domain.ru, нужно удалить папку

rm /var/www/raundcube/installer/