Cómo integrar LibreOffice con Nextcloud

LibreOffice ha sido durante mucho tiempo la mejor solución gratuita para herramientas de productividad en Linux. Sin embargo, el cliente independiente de LibreOffice es limitado y simplemente no es suficiente, cuando se trata de la productividad en línea, la productividad de Google y la colaboración al estilo de Google Drive.

Ahí es donde entra en juego Collabora. Es una versión modificada de Libre Office Online, con docenas de características comparables a muchas herramientas de oficina de Internet patentadas. Lo mejor de todo es que el software se puede integrar directamente en muchas soluciones en la nube autohospedadas. A continuación, le mostramos cómo puede integrar Libre Office con NextCloud.

Configurar el software Collabora es un poco tedioso, pero en última instancia vale la pena, especialmente para aquellos que buscan alojar su propia solución de oficina en Linux.

Nota: el uso del software Collabora requiere un servidor Docker Nextcloud con un certificado SSL válido. Un servidor Snap Nextcloud no funcionará, desafortunadamente.

Configurar Nextcloud en el servidor Ubuntu

El uso de Collabora en Nextcloud comienza con un servidor Nextcloud estilo Docker. Para iniciar la configuración, instale Docker y extraiga el contenedor Nextcloud más reciente de Docker Hub.

Tenga en cuenta que esta configuración para Collabora funciona mejor con el servidor Ubuntu, por lo que el tutorial se centrará principalmente en ella. Sin embargo, si no usa el servidor Ubuntu, siga las instrucciones ya que las instrucciones son muy similares en la mayoría de los sistemas.

sudo docker pull undeadhunter/nextcloud-letsencrypt

Bajar el contenedor de Nextcloud Docker es muy similar a la instalación de Snap. No es necesaria ninguna instalación o configuración. En su lugar, salga de Root y desplácese hasta un usuario normal.

Nota: para acceder a Collabora fuera de la LAN, deberá configurar SSL con Nextcloud y Docker. Consulte la documentación oficial para saber cómo configurar esto.

sudo docker run -it --name nextcloud --hostname nextcloud-letsencrypt -e CERTBOT_DOMAIN="nextcloud-letsencrypt" -e CERTBOT_EMAIL="email" -p 80:80 -p 443:443 undeadhunter/nextcloud-letsencrypt

Si el comando tiene éxito, Nextcloud debería estar ejecutándose. Acceda a él a través de un navegador web:

https://ip.address:8080

Siga los pasos para configurar una instalación de Nextcloud dentro del contenedor de Docker. Cuando termine, abra una nueva pestaña y genere un nuevo certificado SSL con LetsEncrypt.

sudo docker exec -it nextcloud-crypt /certbot.sh

Configurar Collabora

El servidor de Nextcloud Docker está en funcionamiento. A continuación, es el momento de configurar el servidor Collabora, para que pueda interactuar con Nextcloud y el complemento Collabora Office.

Al igual que Nextcloud, el software Collabora también debe ejecutarse dentro de una imagen de Docker. Despliegue la última versión del software del servidor Collabora con el comando docker pull:

sudo docker pull collabora/code

Collabora debe ejecutarse junto con Nextcloud para que funcione. Con el comando docker run, inicie el servidor. Asegúrese de editar el comando y cambiar «nextcloud server address», según sus necesidades.

Nota: ¡No elimine los símbolos de barra invertida!

sudo docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloudserveraddress' --restart always --cap-add MKNOD collabora/code

Proxy inverso Apache

El software Collabora necesita un proxy inverso para funcionar de forma eficaz. La ejecución del proxy inverso requiere Apache2, así que asegúrese de tenerlo ya en el servidor. En Ubuntu, el servidor Apache2 se puede instalar fácilmente con:

sudo apt install lamp-server^

Cuando se configura Apache2, use a2enmod para habilitar los módulos proxy. Estos módulos son importantes y el proxy inverso no se ejecutará sin ellos.

sudo a2enmod proxy
sudo a2enmod proxy_wstunnel
sudo a2enmod proxy_http
sudo a2enmod ssl

Con los módulos en funcionamiento, es hora de crear un nuevo archivo de host virtual. En la terminal, use touch para crear un nuevo archivo de configuración.

sudo touch /etc/apache2/sites-available/your-collabora-site.com.conf

Collabora requiere un certificado SSL para ejecutar el proxy, así como el software. La forma más rápida de realizar esta tarea es utilizar la herramienta LetsEncrypt. En la terminal, ejecute el siguiente comando para obtener LetsEncrypt para Apache2.

sudo apt install letsencrypt python-letsencrypt-apache
sudo letsencrypt --apache --agree-tos --email email-address -d collabora-server-ip-or-domain.com

Abra el nuevo archivo de host virtual con Nano.

sudo nano /etc/apache2/sites-available/your-collabora-site.conf

Pegue el siguiente código en Nano:



ServerName office.your-domain.com

SSLCertificateFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/privkey.pem
Incluya /etc/letsencrypt/options-ssl-apache.conf

# Deben permitirse las barras inclinadas codificadas
AllowEncodedSlashes NoDecode

# El contenedor usa un certificado no firmado único
SSLProxyEngine activado
SSLProxyVerify Ninguno
SSLProxyCheckPeerCN desactivado
SSLProxyCheckPeerName desactivado

# mantener el anfitrión
ProxyPreserveHost activado

# HTML estático, js, imágenes, etc., servido desde loolwsd
# loleaflet es la parte cliente de LibreOffice Online
ProxyPass / loleaflet https://127.0.0.1:9980/loleaflet reintentar = 0
ProxyPassReverse / loleaflet https://127.0.0.1:9980/loleaflet

# URL de descubrimiento de WOPI
ProxyPass / hosting / discovery https://127.0.0.1:9980/hosting/discovery reintentar = 0
ProxyPassReverse / hosting / discovery https://127.0.0.1:9980/hosting/discovery

# Websocket principal
ProxyPassMatch “/lool/(.*)/ws$” wss: //127.0.0.1: 9980 / lool / $ 1 / ws nocanon

# Consola de administración websocket
ProxyPass / lool / adminws wss: //127.0.0.1: 9980 / lool / adminws

# Descargar como, presentación en pantalla completa y operaciones de carga de imágenes
ProxyPass / lool https://127.0.0.1:9980/lool
ProxyPassReverse / lool https://127.0.0.1:9980/lool


Presione Ctrl + O para guardar el documento, luego reinicie Apache 2 con:

sudo sytemctl restart apache2

Integre LibreOffice con Nextcloud

Se encarga de toda la configuración necesaria para ejecutar Collabora. Todo lo que queda es integrar LibreOffice con Nextcloud. Para habilitar la integración, abra la interfaz web de Nextcloud, seleccione el icono de engranaje y haga clic en el botón «Aplicaciones».

Busque en la sección de aplicaciones «Collabora» y haga clic en el botón para instalarlo. Luego, regrese a la interfaz de administración de Nextcloud y haga clic en «Administrador», luego en «Collabora Online».

En la sección «Collabora Online» de la interfaz de administración, complete la dirección IP del servidor Collabora Online y haga clic en el botón «Aplicar» para guardar la configuración.

Desde aquí, cualquier persona podrá acceder y utilizar Access Nextcloud Collabora desde cualquier PC, a través de la interfaz web de Nextcloud.