Cómo instalar Horde Groupware Suite en Debian 10

Horde Groupware es una suite de colaboración gratuita y de código abierto que ofrece calendario, notas, tareas, gestor de archivos y mucho más. Viene con una interfaz dinámica, básica y móvil basada en web y proporciona recursos ilimitados por usuario. Funciona en cualquier servidor web compatible con PHP y en la mayoría de los sistemas operativos, incluyendo Linux, Windows, MacOS y Solaris.

En este tutorial, aprenderemos a instalar Horde Groupware en un servidor Debian 10.

Requisitos previos

  • Un servidor que ejecute Debian 10.
  • Un nombre de dominio válido que apunte con la IP de tu servidor. en este tutorial, utilizaremos el dominio prueba.ejemplo.com.
  • Una contraseña de root configurada en tu servidor.

Cómo empezar

Antes de empezar, es una buena idea actualizar tu sistema con la última versión. Puedes actualizar tu sistema con el siguiente comando:

apt-get update -y
apt-get upgrade -y

Tras actualizar el sistema, reinícialo para aplicar los cambios.

Instalar Apache, MariaDB y PHP

Horde se ejecuta en el servidor web, escrito en PHP y utiliza MariaDB para almacenar sus datos. Así que necesitarás instalar Apache, MariaDB, PHP y otras dependencias necesarias en tu sistema. Puedes instalarlos todos ejecutando el siguiente comando:

apt-get install apache2 mariadb-server php php-pear libapache2-mod-php php-common php-curl php-mbstring php-xmlrpc php-mysql php-gd php-xml php-intl php-ldap php-imagick php-tidy php-json php-cli -y

Una vez instalados todos los paquetes, abre el archivo php.ini y realiza algunos cambios:

nano /etc/php/7.3/apache2/php.ini

Cambia las siguientes líneas:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Asia/Kolkata

Guarda y cierra el archivo cuando hayas terminado.

Configurar la base de datos

Por defecto, la contraseña raíz de MariaDB no está configurada en Debian 10. Por tanto, primero tendrás que configurarla.

Para ello, inicia sesión en el intérprete de comandos de MariaDB con el siguiente comando:

mysql

Una vez iniciada la sesión, establece la contraseña raíz de MariaDB con el siguiente comando:

MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("rootpassword");

A continuación, crea una base de datos y un usuario para Horda con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE hordedb;
MariaDB [(none)]> CREATE USER 'hordeuser'@'localhost' IDENTIFIED BY 'password';

A continuación, concede todos los privilegios a la base de datos de Horde con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON hordedb.* TO 'hordeuser'@'localhost' WITH GRANT OPTION;

A continuación, vacía los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Cuando hayas terminado, puedes pasar al siguiente paso.

Instalar y configurar Horde

Para poder instalar Horde, necesitarás registrar el canal pera Horde. Puedes hacerlo con el siguiente comando:

pear channel-discover pear.horde.org

Deberías ver la siguiente salida:

Adding Channel "pear.horde.org" succeeded
Discovery of channel "pear.horde.org" succeeded

A continuación, instala el rol Horde con el siguiente comando:

pear install horde/horde_role

Deberías ver la siguiente salida:

downloading Horde_Role-1.0.1.tgz ...
Starting to download Horde_Role-1.0.1.tgz (10,977 bytes)
.....done: 10,977 bytes
install ok: channel://pear.horde.org/Horde_Role-1.0.1
horde/Horde_Role has post-install scripts:
/usr/share/php/PEAR/Installer/Role/Horde/Role.php
Horde_Role: Use "pear run-scripts horde/Horde_Role" to finish setup.
DO NOT RUN SCRIPTS FROM UNTRUSTED SOURCES

A continuación, tendrás que establecer el directorio del sistema de archivos de Horde. Puedes configurarlo con el siguiente comando

pear run-scripts horde/horde_role

Se te pedirá que proporciones la ruta del directorio de Horde como se muestra a continuación:

Including external post-installation script "/usr/share/php/PEAR/Installer/Role/Horde/Role.php" - any errors are in this script
Inclusion succeeded
running post-install script "Horde_Role_postinstall->init()"
init succeeded
Filesystem location for the base Horde application : /var/www/horde
Configuration successfully saved to PEAR config.
Install scripts complete

Por último, instala el Groupware de Horde con el siguiente comando:

pear install -a -B horde/groupware
groupware-install

Se te pedirán varias configuraciones como, backend de la base de datos, usuario de la base de datos, contraseña, base de datos, usuario y contraseña del administrador de Horde como se muestra a continuación:

Installing Horde Groupware

Configuring database settings

What database backend should we use? 
    (false) [None]
    (mysql) MySQL / PDO
    (mysqli) MySQL (mysqli)
    (oci8) Oracle
    (pgsql) PostgreSQL
    (sqlite) SQLite

Type your choice []: mysql

Username to connect to the database as* [] hordeuser
Password to connect with 
How should we connect to the database? 
    (unix) UNIX Sockets
    (tcp) TCP/IP

Type your choice [unix]: unix

Location of UNIX socket []  

Database name to use* [] hordedb

Internally used charset* [utf-8] 
Use SSL to connect to the server? 
    (false) No
    (true) Yes

Type your choice []: false
Split reads to a different server? 
    (false) Disabled
    (true) Enabled

Type your choice [false]: 
Should Horde log all queries. If selected, queries will be logged at the DEBUG level to your configured logger. 
    (1) Yes
    (0) No

Type your choice [0]: 

Writing main configuration file... done.

Creating and updating database tables... done.

Configuring administrator settings

Specify a user name for the administrator account: [email protected]
Specify a password for the administrator account:

Writing main configuration file... done.

Thank you for using Horde Groupware.

Una vez finalizada la instalación, crea un directorio temporal para Horde con el siguiente comando:

mkdir /var/www/horde/tmp

A continuación, configura la herramienta de contraseña de Horde con el siguiente comando:

pear install -a -B horde/passwd

A continuación, da el permiso adecuado al directorio de Horde con el siguiente comando:

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

Una vez que hayas terminado, puedes pasar al siguiente paso.

Configurar Apache para Horde

A continuación, tendrás que configurar el archivo de configuración del host virtual de Apache para Horde. Puedes crearlo con el siguiente comando:

nano /etc/apache2/conf-available/horde.conf

Añade las siguientes líneas:

Alias /Microsoft-Server-ActiveSync /var/www/horde/rpc.php
Alias /horde /var/www/horde
ServerName test.example.com
DocumentRoot /var/www/horde
<Directory /var/www/horde>
           DirectoryIndex index.php
           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/tmp/"
</Directory>

Guarda y cierra el archivo cuando hayas terminado. A continuación, habilita el archivo de configuración de Horde con el siguiente comando:

a2enconf horde

Por último, reinicia el servicio Apache para aplicar los cambios:

systemctl restart apache2

Accede a Horde Groupware

Ahora, abre tu navegador web y escribe la URL http://test.example.com/horde. Se te redirigirá a la página de inicio de sesión de Horde Groupware:

Inicio de sesión en la Horda

Introduce tu nombre de usuario de administrador, tu contraseña y haz clic en el botón Iniciar sesión. Deberías ver el panel de control predeterminado de Horde Groupware en la página siguiente:

Horde Webmail

Conclusión

Enhorabuena! has instalado y configurado con éxito Horde Groupware en el servidor Debian 10. Ahora puedes empezar a explorar Horde y ampliar su funcionalidad. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...