Roundcube: различия между версиями
Нет описания правки |
Нет описания правки |
||
(не показаны 2 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
Очень быстрое КакСде по подъёму веб-почты из пакета {{pkg|roundcube}} по состоянию на версию | Очень быстрое КакСде по подъёму веб-почты из пакета {{pkg|roundcube}} по состоянию на версию 1.2.3 и выше. | ||
== Пакеты == | == Пакеты == | ||
Строка 31: | Строка 30: | ||
== Настройка == | == Настройка == | ||
Выставляем временной пояс: | Выставляем временной пояс: в файле /etc/php/*/apache2-mod_php/php.ini | ||
date.timezone = 'Europe/Moscow' | |||
<!-- echo 'date.timezone = MSK' > /etc/php/5.5/apache-mod_php/php.d/tz.ini | |||
service | --> | ||
и выполняем | |||
# service httpd2 reload | |||
Включаем конфигурационный файл apache2 для rouncube: | Включаем конфигурационный файл apache2 для rouncube: | ||
Строка 40: | Строка 42: | ||
# systemctl restart httpd2</pre> | # systemctl restart httpd2</pre> | ||
Для того чтобы разрешить доступ к web-инсталятору приведите файл {{path|/usr/share/roundcube/installer/.htaccess}} к следующему виду, указав IP-адрес компьютера с которого Вы | Для того чтобы разрешить доступ к web-инсталятору, приведите файл {{path|/usr/share/roundcube/installer/.htaccess}} к следующему виду, указав IP-адрес компьютера с которого Вы будете настраивать (опасно! не забудьте отключить!): | ||
<pre><ifModule mod_authz_core.c> | <pre><ifModule mod_authz_core.c> | ||
Require ip 192.168.135.190 | |||
</ifModule> | </ifModule> | ||
<ifModule !mod_authz_core.c> | <ifModule !mod_authz_core.c> | ||
Строка 49: | Строка 50: | ||
Allow from 192.168.135.190 | Allow from 192.168.135.190 | ||
</ifModule></pre> | </ifModule></pre> | ||
Переходим на http://192.168.135.190/roundcube/installer/, результат настройки загружаем в {{path|/ | Переходим на http://192.168.135.190/roundcube/installer/, результат настройки загружаем в {{path|/etc/roundcube/config.inc.php}} и прикрываем правами: | ||
<pre>chgrp _webserver / | <pre>chgrp _webserver /etc/roundcube/config.inc.php | ||
chmod 640 /usr/share/roundcube/config/config.inc.php</pre> | chmod 640 /usr/share/roundcube/config/config.inc.php</pre> | ||
Переходим в web-инсталяторе на вкладку '''3.Test config''' и инициализируем базу данных. | Переходим в web-инсталяторе на вкладку '''3.Test config''' и инициализируем базу данных. | ||
Для того чтобы запретить доступ к web-инсталятору приведите файл {{path|/usr/share/roundcube/installer/.htaccess}} к следующему виду: | Для того чтобы запретить доступ к web-инсталятору, приведите файл {{path|/usr/share/roundcube/installer/.htaccess}} к следующему виду: | ||
<pre><ifModule mod_authz_core.c> | <pre><ifModule mod_authz_core.c> | ||
Require all denied | |||
</ifModule> | </ifModule> | ||
<ifModule !mod_authz_core.c> | <ifModule !mod_authz_core.c> | ||
Order Allow,Deny | Order Allow,Deny | ||
Deny from all | |||
</ifModule></pre> | </ifModule></pre> | ||
И запретите доступ к каталогу: | И запретите доступ к каталогу: |
Текущая версия от 21:10, 13 июля 2017
Очень быстрое КакСде по подъёму веб-почты из пакета roundcube по состоянию на версию 1.2.3 и выше.
Пакеты
apt-get install roundcube roundcube-apache2 apache2-mod_php5 php5-mbstring php5-sockets php5-fileinfo php5-intl php5-mysql MySQL-server postfix-dovecot dovecot control postfix server for i in dovecot httpd2 mysqld postfix; do chkconfig $i on && service $i start; done
Аутентификация
При непустом username_domain не пустит ни user, ни user@localhost, т.к. dovecot идёт в pam с "user@localhost" в обоих случаях — http://www.roundcubeforum.net/index.php/topic,10917.msg56250.html#msg56250:
echo "auth_username_format = %n" >> /etc/dovecot/conf.d/10-auth.conf service dovecot restart
(ну или «не делайте так»)
Дамп базы
В пакете есть, но как документация; делаем симлинк туда, где ожидает инсталятор:
mkdir -p /usr/share/roundcube/SQL ln -s /usr/share/doc/roundcube-0.7.1/SQL/mysql.initial.sql /usr/share/roundcube/SQL/mysql.initial.sql
Создаём базу (возможно, инсталер и сам справится при изначально беспарольном mysql root, не проверял; пароль ставьте свой, разумеется):
mysqladmin create roundcubemail echo "grant all on roundcubemail.* to roundcube@localhost identified by '123456'" | mysql
Настройка
Выставляем временной пояс: в файле /etc/php/*/apache2-mod_php/php.ini
date.timezone = 'Europe/Moscow'
и выполняем
# service httpd2 reload
Включаем конфигурационный файл apache2 для rouncube:
# a2enextra roundcube # systemctl restart httpd2
Для того чтобы разрешить доступ к web-инсталятору, приведите файл /usr/share/roundcube/installer/.htaccess к следующему виду, указав IP-адрес компьютера с которого Вы будете настраивать (опасно! не забудьте отключить!):
<ifModule mod_authz_core.c> Require ip 192.168.135.190 </ifModule> <ifModule !mod_authz_core.c> Order Allow,Deny Allow from 192.168.135.190 </ifModule>
Переходим на http://192.168.135.190/roundcube/installer/, результат настройки загружаем в /etc/roundcube/config.inc.php и прикрываем правами:
chgrp _webserver /etc/roundcube/config.inc.php chmod 640 /usr/share/roundcube/config/config.inc.php
Переходим в web-инсталяторе на вкладку 3.Test config и инициализируем базу данных. Для того чтобы запретить доступ к web-инсталятору, приведите файл /usr/share/roundcube/installer/.htaccess к следующему виду:
<ifModule mod_authz_core.c> Require all denied </ifModule> <ifModule !mod_authz_core.c> Order Allow,Deny Deny from all </ifModule>
И запретите доступ к каталогу:
# chmod 0 /usr/share/roundcube/installer
Проверка
Заходим на http://localhost/roundcube/ тестовым локальным пользователем, пишем письмо второму тестовому пользователю, выходим, заходим тем, проверяем. УМВР. :)
AD SSO
Для работы прозрачной аутентификации необходимо настроить прозрачную аутентификацию на web-сервере Apache2/AD-auth и на imap сервере Dovecot/AD-auth. Так же необходимо включить нужный плагин и указать SPN в файле config.inc.php:
$config['plugins'] = array('krb_authentication'); $config['krb_authentication_context'] = 'imap/rcserver.dome.teste@DOME.TESTE';
Адресная книга AD
Для возможности формирования адресной книги на основе данных о пользователях из Active Directory необходимо обеспечить прозрачную аутентификацию на LDAP сервере домена. Для этого необходимо установить следующий пакет:
# apt-get install pear-Net_LDAP3
И добавить настройки адресной книги в config.inc.php:
$config['ldap_public'] = array( 'MyAdLdap' =>array ( 'name' => 'Big Company, Inc', 'hosts' => array('dce.dome.teste'), 'sizelimit' => 6000, 'port' => 389, 'use_tls' => false, 'user_specific' => false, 'base_dn' => 'CN=Users,DC=dome,DC=teste', 'bind_dn' => '', 'bind_pass' => '', 'bind_user' => '', 'writable' => false, 'ldap_version' => 3, 'search_fields' => array( 'mail', 'cn', ), 'auth_method' => 'GSSAPI', 'name_field' => 'cn', 'email_field' => 'mail', 'surname_field' => 'sn', 'firstname_field' => 'givenName', 'sort' => 'sn', 'scope' => 'list', 'filter' => '(&(mail=*)(|(&(objectClass=user)(!(objectClass=computer)))(objectClass=group)))', 'global_search' => true, 'fuzzy_search' => true ), );