Installazione · 7 min read · Sep 29, 2025

Installa Horde 5 Webmail per ISPConfig su Debian Jessie tramite PEAR

Horde è una suite di groupware che offre email, calendario, gestione delle attività, contatti e altro ancora. Offre anche SyncML e ActiveSync per sincronizzarsi con i tuoi telefoni cellulari o altri software. Puoi scoprire di più su Horde nella loro pagina web: http://www.horde.org/

Questo Howto presuppone che tu abbia seguito l’installazione di ISPConfig 3 per Debian Jessie (Apache2, Bind, Dovecot) e tutti i pacchetti lì.

1. Installa i pacchetti necessari

apt-get install php5-sasl php5-intl libssh2-php php5-curl php-http php5-xmlrpc php5-geoip php5-ldap php5-memcache php5-memcached php5-tidy

2. Rimuovi i pacchetti in conflitto

Il pacchetto php5-xcache non funziona con Horde. Invece di php5-xcache, uno degli altri strumenti di cache può essere utilizzato come memcache.

apt-get remove php5-xcache

3. Registra il canale Horde Pear

pear channel-discover pear.horde.org

4. Imposta la directory di installazione di Horde

pear install horde/horde_role  
pear run-scripts horde/horde_role

Ti verrà posta la seguente domanda:

Installazione del filesystem per l’applicazione base Horde: /var/www/horde

Puoi anche scegliere un’altra cartella per i file horde accessibili via web. Tuttavia, dovrai modificare il percorso nei passaggi successivi.

5. Installa Horde Groupware Webmail Edition

pear install -a -B horde/webmail

Questo richiede un po’ di tempo e ci saranno alcuni errori riguardanti pacchetti pear mancanti. Questi verranno risolti in seguito.

6. Crea il database MySQL

Lo script di installazione di Horde non creerà un database MySQL da solo. Quindi dobbiamo crearlo prima e anche l’utente corrispondente.

Entra nella shell MySQL come

mysql -u root -p

Una volta entrato, crea il database e l’utente ‘horde’ con password ‘PASSWORD’. Se desideri modificare il nome del database, il nome utente, cambia le informazioni corrispondenti. Imposta ovviamente la tua password.

CREATE DATABASE horde;  
GRANT ALL ON horde.* TO horde@localhost IDENTIFIED BY 'PASSWORD';  
FLUSH PRIVILEGES;

Esci di nuovo dalla shell MySQL

exit;

7. Esegui lo script di installazione

webmail-install

Ti verranno poste le seguenti domande:

Quale backend del database dovremmo usare? mysql

Nome utente per connettersi al database come: Il nome utente che hai impostato nel passaggio precedente

Password per connettersi: La password che hai impostato nel passaggio precedente

Come dovremmo connetterci al database? unix

Posizione del socket UNIX: Premi semplicemente [invio]

Nome del database da utilizzare: Il nome del database che hai impostato nel passaggio precedente

Charset utilizzato internamente: utf-8

Usa SSL per connettersi al server: 0 *

Autorità di certificazione da utilizzare per la connessione SSL: Premi semplicemente [invio]

Dividi le letture su un server diverso? false

Specifica un utente email esistente a cui vuoi dare permessi di amministratore (opzionale): [email protected]

  • Imposta SSL su 1 solo se puoi fornire per ogni dominio un certificato SSL.

Seleziona un utente email esistente. Quell’utente avrà quindi diritti di configurazione dall’interno di Horde stesso. Questo è necessario per creare i file di configurazione iniziali.

8. Crea la cartella phptmp personalizzata e assegna la cartella horde all’utente Apache

mkdir /var/www/horde/phptmp/  
chown -R www-data:www-data /var/www/horde

9. Aggiungi componenti PEAR aggiuntivi

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_Getargs

10. Aggiungi calendari festivi PEAR locali (opzionale)

Ci sono diversi calendari festivi già disponibili in PEAR. Per impostazione predefinita, non sono installati. Se desideri installarli, seleziona uno o più dei seguenti calendari. Questo abilita in Horde Kronolith (=calendario) a mostrare le festività per quel paese. Ovviamente, puoi anche aggiungere il tuo calendario personalizzato all’installazione di 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.1

11. Crea /etc/apache2/conf-available/horde.conf con il seguente contenuto

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/"

Quindi abilita questo nuovo frammento di configurazione apache:

a2enconf horde

12. Riavvia apache

/etc/init.d/apache2 restart

13. Modifica /var/www/horde/config/conf.php e imposta

$conf['testdisable'] = false; 

14. Apri la pagina di test di horde su qualsiasi dominio

http://www.domain.com/horde/test.php

La maggior parte delle impostazioni dovrebbe essere ok ora. Tuttavia, potresti voler modificare alcune delle impostazioni predefinite di raccolta dei rifiuti php.

Modifica di nuovo il file /var/www/horde/conf/conf.php e disabilita la pagina di test

$conf['testdisable'] = true;

15. Risolvi l’opzione BaseRewrite

La configurazione predefinita non riconoscerà correttamente l’opzione BaseRewrite e farà sì che Nag non riesca ad aggiungere/modificare voci. Per risolvere questo problema, devi modificare il file /var/www/horde/.htaccess e cercare


    RewriteEngine On
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteCond   %{REQUEST_FILENAME}  !-d
    RewriteCond   %{REQUEST_FILENAME}  !-f
    RewriteRule ^(.*)$ rampage.php [QSA,L]

e sostituire l’intero blocco con questo


    RewriteEngine On
    RewriteBase /horde
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteCond   %{REQUEST_FILENAME}  !-d
    RewriteCond   %{REQUEST_FILENAME}  !-f
    RewriteRule ^(.*)$ rampage.php [QSA,L]

Nota: Quando aggiorni Horde, questo file potrebbe essere sovrascritto. In tal caso, modificalo di nuovo.

16. Consentire agli utenti di cambiare la propria password da Horde (opzionale)

Horde può abilitare le persone a cambiare la propria password ISPConfig dall’interno di Horde. Per questo, Horde fornisce un componente aggiuntivo Passwd che deve essere configurato per funzionare con ISPConfig.

Installa il componente aggiuntivo e assegnalo all’utente Apache:

pear install -a -B horde/passwd  
chown -R www-data:www-data /var/www/horde/passwd

Horde fornisce anche un modo semplice per modificare i file di configurazione con valori locali. Questo viene fatto copiando un file di configurazione esistente (ad es. conf.php) in conf.local.php. Questo può essere utile se desideri modificare le impostazioni predefinite di preferenza di alcune applicazioni Horde, ad es. utilizzare per impostazione predefinita un orologio a 24 ore. Quindi puoi fornire una configurazione iniziale omogenea per i nuovi utenti. Lo stesso vale anche per il componente aggiuntivo Passwd. Utilizzando un file di configurazione locale, ci assicuriamo che un futuro aggiornamento di horde non sovrascriva le nostre impostazioni.

cp -a /var/www/horde/passwd/config/backends.php /var/www/horde/passwd/config/backends.local.php

Il comando sopra è una riga.

Ora modifica il file /var/www/horde/passwd/config/backends.local.php e cerca

$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',
  ),
);

e sostituisci l’intero blocco con questo

$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
    // Le seguenti due impostazioni ti consentono di specificare query personalizzate per
    // funzioni di ricerca e modifica se devono essere eseguite funzioni speciali.
    // Nei luoghi in cui è necessario utilizzare un nome utente o una password,
    // fare riferimento a questo segnaposto:
    // %d -> viene sostituito con il dominio
    // %u -> viene sostituito con l'utente
    // %U -> viene sostituito con l'utente senza parte del dominio
    // %p -> viene sostituito con la password in chiaro
    // %e -> viene sostituito con la password crittografata
    //
    // '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',
  ),
);

Ovviamente, sostituisci la password con la password root di MySQL e cambia il nome del database con il nome del tuo database ISPConfig. Una volta che questo è cambiato, puoi utilizzare lo strumento Passwd per cambiare la password dall’interno di Horde.

La sezione policy ti consente di impostare varie opzioni su come deve apparire la password. In questa configurazione, deve avere almeno 7 caratteri e deve contenere almeno 1 numero e nessuno spazio bianco. Controlla l’inizio di questo file per scoprire quali altre opzioni ci sono.

17. Ultime cose

Una volta apportate tutte le modifiche, accedi con l’utente amministrativo per horde. L’utente email che hai impostato durante la configurazione dello script webmail-install. Una volta effettuato l’accesso, vai nella sezione di amministrazione e poi nella configurazione di horde e crea tutte le configurazioni necessarie. Per iniziare, puoi utilizzare il pulsante che crea semplicemente tutto o puoi scegliere di rivedere la configurazione per ciascuna applicazione horde da solo e applicare le modifiche che desideri.

Horde offre anche ulteriori applicazioni. Visita http://www.horde.org/apps per vedere cosa c’è.

Horde offre anche un feed RSS in modo da essere avvisato sulle versioni più recenti e per aggiornamenti vedere qui: http://www.horde.org/apps/webmail/docs/UPGRADING

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.