Le pedimos a Gemini, la inteligencia artificial de Google, nos explique cómo instalar y configurar Open Xchange en linux
Explicanos detalladamente cómo instalar y configurar Open Xchange en linuxOpen-Xchange ( OX App Suite ) es una plataforma de groupware de nivel empresarial. A diferencia de clientes de webmail más sencillos (como Roundcube) o de soluciones todo en uno integradas, Open-Xchange está diseñado para escalar masivamente y se divide en tres capas bien definidas:
Frontend: Una interfaz rica en HTML5/JS servida a través de Apache.
Middleware: Un motor en Java corriendo sobre un runtime OSGi (open-xchange-core) que gestiona la lógica de negocio, reglas y APIs.
Almacenamiento y Correo: MariaDB para metadatos y preferencias, junto con un servidor IMAP/SMTP externo (usualmente Dovecot + Postfix).
Esa arquitectura modular hace que su instalación sea un proceso secuencial muy técnico. A continuación tienes la guía detallada para desplegarlo en un sistema basado en Debian/Ubuntu.
Requisitos Previos
Sistema Operativo: Debian 12 o Ubuntu 22.04 LTS (limpio).
Recursos: Mínimo 4 GB de RAM (se recomiendan 8 GB, ya que el motor Java de OX es exigente con la memoria).
Servicios base: Servidor MariaDB y un servidor IMAP (como Dovecot) previamente configurado y funcionando.
FQDN: Tu servidor debe responder a un nombre FQDN válido (ej. ox.tuempresa.com).
1
1. Configurar las fuentes de paquetes
Añadir los repositorios oficiales de OX
Open-Xchange requiere registrar sus llaves GPG y repositorios oficiales. Descarga las llaves de repositorio e inclúyelas en tu gestor de paquetes.
Bash
sudo apt update && sudo apt install wget gnupg2 -y
# Importar la clave GPG oficial de Open-Xchange
wget -qO - https://software.open-xchange.com/oxbuildkey.pub | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/open-xchange.gpg
# Agregar el repositorio de OX App Suite (reemplaza 'DebianBookworm' según tu distribución)
echo "deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianBookworm/ /" | sudo tee /etc/apt/sources.list.d/open-xchange.list
echo "deb https://software.open-xchange.com/products/appsuite/stable/appsuiteui/DebianBookworm/ /" | sudo tee -a /etc/apt/sources.list.d/open-xchange.list
sudo apt update
2
2. Preparar MariaDB
Optimizar InnoDB para transacciones de OX
Open-Xchange realiza un uso intensivo de transacciones en la base de datos. Debes ajustar el archivo de configuración de MariaDB
(/etc/mysql/mariadb.conf.d/50-server.cnf).
Asegúrate de configurar los siguientes parámetros dentro de la sección [mysqld]:
Ini, TOML
[mysqld]
max_allowed_packet = 16M
group_concat_max_len = 16384
innodb_buffer_pool_size = 2G
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
Reinicia MariaDB y crea el usuario administrativo para OX:
Bash
sudo systemctl restart mariadb
# Accede a MySQL para crear los accesos
sudo mysql -u root -p -e "CREATE USER 'openxchange'@'localhost' IDENTIFIED BY 'TuClaveSeguraDB';"
sudo mysql -u root -p -e "GRANT ALL PRIVILEGES ON *.* TO 'openxchange'@'localhost' WITH GRANT OPTION;"
sudo mysql -u root -p -e "FLUSH PRIVILEGES;"
3
3. Instalar el Middleware y Frontend
Motor Java + Interfaz Web
Instala los paquetes principales del backend (Java), los módulos de autenticación por base de datos y la interfaz web.
Bash
sudo apt install -y \
open-xchange \
open-xchange-authentication-database \
open-xchange-grizzly \
open-xchange-admin \
open-xchange-appsuite-ui \
apache2 libapache2-mod-dnssd
4
4. Inicializar la Base de Datos y el Servidor
Esquemas de configuración del Middleware
Open-Xchange incluye herramientas CLI ubicadas en /opt/open-xchange/sbin/ para construir la estructura de la base de datos e inicializar el middleware.
Bash
# 1. Inicializar la base de datos de configuración (configdb)
sudo /opt/open-xchange/sbin/initconfigdb \
--configdb-pass=TuClaveSeguraDB \
--configdb-user=openxchange \
--configdb-host=localhost \
--configdb-port=3306
# 2. Asignar contraseña al usuario maestro del sistema (oxadmin)
sudo /opt/open-xchange/sbin/oxinstaller \
--oxadmin-password=ClaveMaestraAdmin \
--configdb-pass=TuClaveSeguraDB \
--soffice-path=/usr/bin/soffice
# 3. Registrar el servidor actual en el clúster local de OX
sudo /opt/open-xchange/sbin/registerserver \
--name=oxserver \
--adminuser=oxadmin \
--adminpass=ClaveMaestraAdmin
# 4. Registrar la base de datos de usuarios (database)
sudo /opt/open-xchange/sbin/registerdatabase \
--name=oxdatabase \
--db-is-master=true \
--dbhost=localhost \
--dbuser=openxchange \
--dbpasswd=TuClaveSeguraDB \
--adminuser=oxadmin \
--adminpass=ClaveMaestraAdmin
5
5. Configurar el Servidor Web (Apache)
Proxy de Apache hacia la API de Java
Habilita los módulos de proxy de Apache para que reenvíen las solicitudes de la interfaz pública hacia el puerto interno del Middleware (por defecto el puerto 8009 AJP o 8008 HTTP).
Bash
sudo a2enmod proxy proxy_http proxy_ajp rewrite headers expires deflator
# Aplica la configuración por defecto que viene empaquetada con OX
sudo cp /opt/open-xchange/etc/groupware_apache.conf /etc/apache2/sites-available/ox.conf
sudo a2ensite ox.conf
sudo systemctl restart apache2
sudo systemctl start open-xchange
6
6. Aprovisionar el primer 'Contexto'
Creación de Contextos y Usuarios
Open-Xchange es un sistema multitenant nativo. Todo se organiza mediante Contextos (que representan a una empresa o dominio) identificados por un número ID (ej. 1001).
Bash
# 1. Crear un contexto ligado a tu servidor IMAP/SMTP
sudo /opt/open-xchange/sbin/createcontext \
--contextid=1001 \
--contextname="TuEmpresa" \
--quota=1024 \
--access-combination-name=groupware_standard \
--displayname="Admin TuEmpresa" \
--givenname="Admin" \
--surname="General" \
--email="admin@tuempresa.com" \
--username="admin" \
--password="ClaveUsuarioAdmin" \
--imaphost="localhost" \
--imapport=143 \
--smtphost="localhost" \
--smtpport=25 \
--adminuser=oxadmin \
--adminpass=ClaveMaestraAdmin
# 2. Crear un usuario adicional dentro del contexto 1001
sudo /opt/open-xchange/sbin/createuser \
--contextid=1001 \
--username="juan" \
--givenname="Juan" \
--surname="Pérez" \
--displayname="Juan Pérez" \
--email="juan@tuempresa.com" \
--password="ClaveDeJuan" \
--imaplogin="juan@tuempresa.com" \
--adminuser=oxadmin \
--adminpass=ClaveMaestraAdmin
El concepto clave: "Contextos" en Open-Xchange
El punto que más suele confundir al administrar Open-Xchange por primera vez es que no puedes crear usuarios sueltos.
- Cada dominio o cliente requiere su propio Context ID (por ejemplo, 1001 para empresaA.com, 1002 para empresaB.com).
- Para administrar o crear cuentas en el futuro, siempre debes especificar a qué --contextid pertenece el usuario que estás modificando.
¿Quieres ver cómo integrar Open-Xchange Documents (OX Drive/Docs) para edición colaborativa de archivos?