Установка Horde · 6 min read · Sep 29, 2025
Установка Horde 5 Webmail для ISPConfig на Debian Jessie через PEAR
Horde — это пакет группового программного обеспечения, который предлагает электронную почту, календарь, управление задачами, контактами и многое другое. Он также предлагает SyncML и ActiveSync для синхронизации с вашими мобильными телефонами или другим программным обеспечением. Вы можете узнать больше о Horde на их веб-странице: http://www.horde.org/
Этот Howto предполагает, что вы следовали установке ISPConfig 3 для Debian Jessie (Apache2, Bind, Dovecot) и всем пакетам там.
1. Установите необходимые пакеты
apt-get install php5-sasl php5-intl libssh2-php php5-curl php-http php5-xmlrpc php5-geoip php5-ldap php5-memcache php5-memcached php5-tidy2. Удалите конфликтующие пакеты
Пакет php5-xcache не работает с Horde. Вместо php5-xcache можно использовать один из других инструментов кэширования, таких как memcache.
apt-get remove php5-xcache3. Зарегистрируйте канал Horde Pear
pear channel-discover pear.horde.org4. Установите директорию установки Horde
pear install horde/horde_role
pear run-scripts horde/horde_roleВам будет задан следующий вопрос:
Установка файловой системы для базового приложения Horde: /var/www/horde
Вы также можете выбрать другую папку для веб-доступных файлов horde. Однако вам нужно будет отрегулировать путь на следующих шагах.
5. Установите Horde Groupware Webmail Edition
pear install -a -B horde/webmailЭто займет некоторое время, и будут некоторые ошибки, касающиеся отсутствующих пакетов pear. Они будут исправлены позже.
6. Создайте базу данных MySQL
Скрипт установки Horde не создаст базу данных MySQL самостоятельно. Поэтому мы должны создать ее сначала, а также соответствующего пользователя.
Введите оболочку MySQL как
mysql -u root -pПосле входа создайте базу данных и пользователя ‘horde’ с паролем ‘PASSWORD’. Если вы хотите изменить имя базы данных, имя пользователя, измените соответствующую информацию. Установите свой собственный пароль, конечно.
CREATE DATABASE horde;
GRANT ALL ON horde.* TO horde@localhost IDENTIFIED BY 'PASSWORD';
FLUSH PRIVILEGES;Выйдите из оболочки MySQL снова
exit;7. Запустите скрипт установки
webmail-installВам будут заданы следующие вопросы:
Какой бэкенд базы данных мы должны использовать? mysql
Имя пользователя для подключения к базе данных: Имя пользователя, которое вы установили на предыдущем шаге
Пароль для подключения: Пароль, который вы установили на предыдущем шаге
Как мы должны подключиться к базе данных? unix
Местоположение UNIX-сокета: Просто нажмите [enter]
Имя базы данных для использования: Имя базы данных, которое вы установили на предыдущем шаге
Внутренне используемая кодировка: utf-8
Использовать SSL для подключения к серверу: 0 *
Орган сертификации для использования для SSL-соединения: Просто нажмите [enter]
Разделить чтения на другой сервер? false
Укажите существующего почтового пользователя, которому вы хотите предоставить права администратора (необязательно): [email protected]
- Установите SSL на 1 только если вы можете предоставить для каждого домена SSL-сертификат.
Выберите существующего пользователя электронной почты. Этот пользователь затем имеет права на конфигурацию изнутри самого Horde. Это необходимо для создания начальных конфигурационных файлов.
8. Создайте пользовательскую папку phptmp и измените владельца папки horde на пользователя Apache
mkdir /var/www/horde/phptmp/
chown -R www-data:www-data /var/www/horde9. Добавьте дополнительные компоненты PEAR
pear install channel://pear.php.net/Console_GetoptPlus-1.0.0RC1
pear install horde/Horde_ManageSieve
pear install channel://pear.php.net/XML_Serializer-0.20.2
pear install channel://pear.php.net/Date_Holidays-0.21.8
pear install channel://pear.php.net/Text_LanguageDetect-0.3.0
pear install pear/HTTP_Request2
pear install channel://pear.php.net/Console_Color2-0.1.2
pear install channel://pear.php.net/Numbers_Words-0.18.1
pear install channel://pear.php.net/Image_Text-0.7.0
pear install pear/Console_Getargs10. Добавьте местные календари праздников PEAR (необязательно)
В PEAR уже доступно несколько календарей праздников. По умолчанию они не установлены. Выберите один или несколько из следующих календарей, если хотите их установить. Это позволяет в Horde Kronolith (=календарь) показывать праздники для этой страны. Конечно, вы также можете добавить свой собственный пользовательский календарь в установку PEAR.
pear install channel://pear.php.net/Date_Holidays_Australia-0.2.2
pear install channel://pear.php.net/Date_Holidays_Austria-0.1.6
pear install channel://pear.php.net/Date_Holidays_Brazil-0.1.2
pear install channel://pear.php.net/Date_Holidays_Croatia-0.1.1
pear install channel://pear.php.net/Date_Holidays_Czech-0.1.0
pear install channel://pear.php.net/Date_Holidays_Denmark-0.1.3
pear install channel://pear.php.net/Date_Holidays_Discordian-0.1.1
pear install channel://pear.php.net/Date_Holidays_EnglandWales-0.1.5
pear install channel://pear.php.net/Date_Holidays_Finland-0.1.2
pear install channel://pear.php.net/Date_Holidays_Germany-0.1.2
pear install channel://pear.php.net/Date_Holidays_Iceland-0.1.2
pear install channel://pear.php.net/Date_Holidays_Ireland-0.1.3
pear install channel://pear.php.net/Date_Holidays_Italy-0.1.1
pear install channel://pear.php.net/Date_Holidays_Japan-0.1.3
pear install channel://pear.php.net/Date_Holidays_Netherlands-0.1.4
pear install channel://pear.php.net/Date_Holidays_Norway-0.1.2
pear install channel://pear.php.net/Date_Holidays_PHPdotNet-0.1.2
pear install channel://pear.php.net/Date_Holidays_Portugal-0.1.1
pear install channel://pear.php.net/Date_Holidays_Romania-0.1.2
pear install channel://pear.php.net/Date_Holidays_SanMarino-0.1.1
pear install channel://pear.php.net/Date_Holidays_Serbia-0.1.0
pear install channel://pear.php.net/Date_Holidays_Slovenia-0.1.2
pear install channel://pear.php.net/Date_Holidays_Spain-0.1.4
pear install channel://pear.php.net/Date_Holidays_Sweden-0.1.3
pear install channel://pear.php.net/Date_Holidays_Turkey-0.1.1
pear install channel://pear.php.net/Date_Holidays_Ukraine-0.1.2
pear install channel://pear.php.net/Date_Holidays_UNO-0.1.3
pear install channel://pear.php.net/Date_Holidays_USA-0.1.1
pear install channel://pear.php.net/Date_Holidays_Venezuela-0.1.111. Создайте /etc/apache2/conf-available/horde.conf со следующим содержимым
Alias /Microsoft-Server-ActiveSync /var/www/horde/rpc.php
Alias /horde /var/www/horde
Options +FollowSymLinks
AllowOverride All
Require all granted
AddType application/x-httpd-php .php
php_value include_path ".:/usr/share/php"
php_value open_basedir "none"
php_value upload_tmp_dir "/var/www/horde/phptmp/"
Затем включите этот новый фрагмент конфигурации apache:
a2enconf horde12. Перезапустите apache
/etc/init.d/apache2 restart13. Отредактируйте /var/www/horde/config/conf.php и установите
$conf['testdisable'] = false; 14. Откройте тестовую страницу horde на любом домене
http://www.domain.com/horde/test.phpБольшинство настроек теперь должно быть в порядке. Однако вы можете изменить некоторые из настроек сборки php.
Снова отредактируйте /var/www/horde/conf/conf.php и отключите тестовую страницу
$conf['testdisable'] = true;15. Исправьте опцию BaseRewrite
Стандартная настройка не распознает опцию BaseRewrite должным образом и вызывает сбой Nag при добавлении/редактировании записей. Чтобы исправить это, вам нужно отредактировать файл /var/www/horde/.htaccess и найти
RewriteEngine On
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ rampage.php [QSA,L]
и заменить весь блок на этот
RewriteEngine On
RewriteBase /horde
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ rampage.php [QSA,L]
Примечание: Когда вы обновляете Horde, этот файл может быть перезаписан. В этом случае просто отредактируйте его снова.
16. Разрешение пользователям изменять свой пароль из Horde (необязательно)
Horde может позволить людям изменять свой пароль ISPConfig из Horde. Для этого Horde предоставляет дополнение Passwd, которое необходимо настроить для работы с ISPConfig.
Установите дополнение и измените владельца на пользователя Apache:
pear install -a -B horde/passwd
chown -R www-data:www-data /var/www/horde/passwdHorde также предоставляет простой способ изменить конфигурационные файлы с локальными значениями. Это делается путем копирования существующего конфигурационного файла (например, conf.php) в conf.local.php. Это может быть полезно, если вы хотите изменить настройки предпочтений по умолчанию некоторых приложений Horde, например, использовать по умолчанию 24-часовой формат. Таким образом, вы можете предоставить однородную стартовую конфигурацию для новых пользователей. То же самое касается дополнения Passwd. Используя локальный конфигурационный файл, мы гарантируем, что будущее обновление horde не перезапишет наши настройки.
cp -a /var/www/horde/passwd/config/backends.php /var/www/horde/passwd/config/backends.local.phpВышеуказанная команда — это одна строка.
Теперь отредактируйте файл /var/www/horde/passwd/config/backends.local.php и найдите
$backends['sql'] = array (
'disabled' => false,
'name' => 'SQL Server',
[...]
// 'query_lookup' => 'SELECT user_pass FROM horde_users WHERE user_uid = %u',
// 'query_modify' => 'UPDATE horde_users SET user_pass = %e WHERE user_uid = %u',
),
);и замените весь блок на этот
$backends['sql'] = array (
'disabled' => false,
'name' => 'SQL Server',
'preferred' => '',
'policy' => array(
'minLength' => 7,
'maxLength' => 64,
'maxSpace' => 0,
'minNumeric' => 1,
),
'driver' => 'Sql',
'params' => array(
'phptype' => 'mysql',
'hostspec' => 'localhost',
'username' => 'root',
'password' => '***',
'encryption' => 'crypt-md5',
'database' => 'ISPCONFIG_DATABASE',
'table' => 'mail_user',
'user_col' => 'email',
'pass_col' => 'password',
'show_encryption' => false
// Следующие два параметра позволяют вам указать пользовательские запросы для
// функций поиска и изменения, если необходимо выполнить специальные функции.
// В местах, где необходимо использовать имя пользователя или пароль,
// используйте эту ссылку-заполнитель:
// %d -> заменяется на домен
// %u -> заменяется на пользователя
// %U -> заменяется на пользователя без части домена
// %p -> заменяется на открытый пароль
// %e -> заменяется на зашифрованный пароль
//
// 'query_lookup' => 'SELECT user_pass FROM horde_users WHERE user_uid = %u',
// 'query_modify' => 'UPDATE horde_users SET user_pass = %e WHERE user_uid = %u',
),
);Конечно, замените пароль на пароль root MySQL и измените имя базы данных на имя вашей базы данных ISPConfig. После этого вы можете использовать инструмент Passwd для изменения пароля из Horde.
Раздел политики позволяет вам установить различные параметры для того, как должен выглядеть пароль. В этой настройке он должен содержать не менее 7 символов и должен содержать как минимум 1 цифру и не содержать пробелов. Проверьте начало этого файла, чтобы узнать, какие другие параметры доступны.
17. Финальные моменты
После того как вы внесли все изменения, войдите с административным пользователем для horde. Пользователь электронной почты, который вы установили во время настройки скрипта webmail-install. После входа перейдите в раздел администрирования, затем в конфигурацию horde и создайте все необходимые конфигурации. Для начала вы можете использовать кнопку, которая просто создает их все, или вы можете выбрать просмотреть конфигурацию для каждого приложения horde самостоятельно и применить изменения, которые вы хотите.
Horde также предлагает дополнительные приложения. Посетите http://www.horde.org/apps, чтобы увидеть, что там.
Horde также предлагает RSS-канал, чтобы вы могли получать уведомления о новых версиях, а для обновления смотрите здесь: http://www.horde.org/apps/webmail/docs/UPGRADING
Get new posts in your inbox
No spam. Unsubscribe anytime.