Instalação Horde · 7 min read · Sep 29, 2025

Instalar Horde 5 Webmail para ISPConfig no Debian Jessie através do PEAR

Horde é um conjunto de software de colaboração que oferece e-mail, calendário, gerenciamento de tarefas, contatos e mais. Ele também oferece SyncML e ActiveSync para sincronizar com seus celulares ou outros softwares. Você pode saber mais sobre o Horde em sua página da web: http://www.horde.org/

Este Howto assume que você seguiu a instalação do ISPConfig 3 para Debian Jessie (Apache2, Bind, Dovecot) e todos os pacotes lá.

1. Instalar pacotes necessários

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. Remover pacotes conflitantes

O pacote php5-xcache não funciona com o Horde. Em vez de php5-xcache, um dos outros ferramentas de cache pode ser usado, como memcache.

apt-get remove php5-xcache

3. Registrar o canal Horde Pear

pear channel-discover pear.horde.org

4. Definir o diretório de instalação do Horde

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

Você será perguntado a seguinte questão:

Instalação do sistema de arquivos para a aplicação base do Horde: /var/www/horde

Você também pode escolher outra pasta para os arquivos horde acessíveis pela web. No entanto, você precisará ajustar o caminho nos próximos passos.

5. Instalar Horde Groupware Webmail Edition

pear install -a -B horde/webmail

Isso leva um tempo e haverá alguns erros relacionados a pacotes pear ausentes. Esses serão corrigidos mais tarde.

6. Criar Banco de Dados MySQL

O script de instalação do Horde não criará um banco de dados MySQL por conta própria. Então, precisamos criá-lo primeiro e também o usuário correspondente.

Entre no shell MySQL como

mysql -u root -p

Uma vez dentro, crie o banco de dados e o usuário ‘horde’ com a senha ‘PASSWORD’. Se você quiser alterar o nome do banco de dados, nome de usuário, altere as informações correspondentes. Defina sua própria senha, é claro.

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

Saia do Shell MySQL novamente

exit;

7. Executar o script de instalação

webmail-install

Você será perguntado as seguintes perguntas:

Qual backend de banco de dados devemos usar? mysql

Nome de usuário para conectar ao banco de dados como: O nome de usuário que você definiu na etapa anterior

Senha para conectar: A senha que você definiu na etapa anterior

Como devemos nos conectar ao banco de dados? unix

Localização do socket UNIX: Apenas pressione [enter]

Nome do banco de dados a ser usado: O nome do banco de dados que você definiu na etapa anterior

Charset usado internamente: utf-8

Usar SSL para conectar ao servidor: 0 *

Autoridade Certificadora a ser usada para conexão SSL: Apenas pressione [enter]

Dividir leituras para um servidor diferente? falso

Especifique um usuário de e-mail existente que você deseja dar permissões de administrador (opcional): [email protected]

  • Defina SSL como 1 apenas se você puder fornecer para cada domínio um certificado SSL.

Selecione um usuário de e-mail existente. Esse usuário terá direitos de configuração de dentro do próprio Horde. Isso é necessário para criar arquivos de configuração iniciais.

8. Criar pasta phptmp personalizada e alterar a propriedade da pasta horde para o usuário Apache

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

9. Adicionar componentes PEAR adicionais

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. Adicionar calendários de feriados locais PEAR (opcional)

Existem vários calendários de feriados já disponíveis no PEAR. Por padrão, eles não estão instalados. Selecione um ou mais dos seguintes calendários se você quiser instalá-los. Isso permite que no Horde Kronolith (=calendário) mostre feriados para aquele país. É claro que você também pode adicionar seu próprio calendário personalizado à instalação do 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. Criar /etc/apache2/conf-available/horde.conf com o seguinte conteúdo

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

Então habilite este novo trecho de configuração do apache:

a2enconf horde

12. Reiniciar apache

/etc/init.d/apache2 restart

13. Editar /var/www/horde/config/conf.php e definir

$conf['testdisable'] = false; 

14. Abra a página de teste do horde em qualquer domínio

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

A maioria das configurações deve estar ok agora. No entanto, você pode querer alterar algumas das configurações padrão de coleta de lixo do php.

Reedite o /var/www/horde/conf/conf.php e desative a página de teste

$conf['testdisable'] = true;

15. Corrigir a opção BaseRewrite

A configuração padrão não reconhecerá corretamente a opção BaseRewrite e fará com que o Nag falhe ao adicionar/editar entradas. Para corrigir isso, você precisa editar o arquivo /var/www/horde/.htaccess e procurar por


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

e substituir todo o bloco por isso


    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 você atualizar o Horde, este arquivo pode ser sobrescrito. Nesse caso, basta editá-lo novamente.

16. Permitir que os usuários mudem suas senhas a partir do Horde (opcional)

O Horde pode permitir que as pessoas mudem suas senhas do ISPConfig de dentro do Horde. Para isso, o Horde fornece um complemento Passwd que precisa ser configurado para funcionar com o ISPConfig.

Instale o complemento e altere a propriedade para o usuário Apache:

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

O Horde também fornece uma maneira simples de alterar arquivos de configuração com valores locais. Isso é feito copiando um arquivo de configuração existente (por exemplo, conf.php) para conf.local.php. Isso pode ser útil se você quiser alterar as configurações de preferência padrão de alguns aplicativos do Horde, por exemplo, usar por padrão um relógio de 24h. Assim, você pode fornecer uma configuração inicial homogênea para novos usuários. O mesmo se aplica ao complemento Passwd. Ao usar um arquivo de configuração local, garantimos que uma atualização futura do horde não sobrescreva nossas configurações.

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

O comando acima é uma linha.

Agora edite o arquivo /var/www/horde/passwd/config/backends.local.php e procure por

$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 substitua todo o bloco por isso

$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
    // As duas configurações a seguir permitem que você especifique consultas personalizadas para
    // funções de pesquisa e modificação se funções especiais precisarem ser
    // realizadas. Em lugares onde um nome de usuário ou uma senha precisa ser
    // usada, referir-se a este placeholder:
    // %d -> é substituído pelo domínio
    // %u -> é substituído pelo usuário
    // %U -> é substituído pelo usuário sem a parte do domínio
    // %p -> é substituído pela senha em texto simples
    // %e -> é substituído pela senha criptografada
    //
    // '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',
  ),
);

É claro, substitua a senha pela senha root do MySQL e altere o nome do banco de dados para o nome do seu banco de dados ISPConfig. Uma vez que isso seja alterado, você pode usar a ferramenta Passwd para mudar a senha de dentro do Horde.

A seção de política permite que você defina várias opções para como a senha deve ser. Nesta configuração, ela deve ter pelo menos 7 caracteres e deve conter pelo menos 1 número e nenhum espaço em branco. Verifique o início deste arquivo para descobrir quais outras opções existem.

17. Coisas finais

Uma vez que você tenha feito todas as alterações, faça login com o usuário administrativo do horde. O usuário de e-mail que você definiu durante a configuração do script webmail-install. Uma vez logado, vá para a seção de administração e depois configuração do horde e crie todas as configurações necessárias. Para começar, você pode usar o botão que apenas cria todas ou pode optar por revisar a configuração de cada aplicativo do horde você mesmo e aplicar as alterações que deseja.

O Horde também oferece mais aplicativos. Visite http://www.horde.org/apps para ver o que há.

O Horde também oferece um feed RSS para que você seja notificado sobre novas versões e para atualizar veja aqui: http://www.horde.org/apps/webmail/docs/UPGRADING

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.