Viele von Euch werden bereits Nextcloud als favorisierte private Cloud-Lösung nutzen. Ob in der heimischen Besenkammer, im Keller oder beim Hoster Eures Vertrauens: Der legitime ownCloud-Nachfolger hat seit der damaligen Abspaltung für viel Furore gesorgt und ist auch hier im Blog bekanntermassen eins meiner definitiven Lieblingsthemen. Was bisher noch fehlte, war die Möglichkeit, Dokumente auch über das Webinterface bearbeiten zu können. Dafür gibt es Collabora Online, eine Open Source Office Suite, die auf dem bekannten LibreOffice basiert und genau diese noch fehlenden Fähigkeiten nahtlos in Nextcloud integriert. Wie das in meiner favorisierten Kombination aus Ubuntu Linux und dem Apache-Webserver im Detail geht, möchte ich Euch im Laufe des Tutorials einmal näherbringen!

Collabora Online läuft hierbei in einem Docker-Container und unterstützt meine bevorzugte Basis aus Debian – respektive hier: Ubuntu – Linux und Apache. Warum Apache? Das hat sich seit ungefähr 1999, als ich das erste Mal mit dem Webserver in Berührung gekommen bin, so herauskristallisiert und nach all der Zeit kann ich mich nur schwerlich an Nginx als Webserver gewöhnen. “Schuster, bleib’ bei Deinen Leisten” ist also hier das Motto und Apache ist bei mir einfach gesetzt – dementsprechend liegt der Fokus in diesem Tutorial auch auf diesem Webserver und nicht auf dem neueren Nginx, den viele von Euch sicherlich auch bevorzugen.

CODE

Die Web-Integration von LibreOffice bietet nicht dabei nicht nur grundsätzliche Bearbeitungsfunktionen, sondern auch klassisches WYSIWYG-Rendering und dabei auch Unterstützung von diversen bekannten Dateiformaten wie .DOC, .DOCX, .PPT, .PPTX, .XLS, .XLSX oder OD. Auch der Import und das Betrachten von Visio- und Publisher-Dokumenten samt über hundert weiterer Dateiformate ist möglich und wer gerne gemeinsam an Dokumenten arbeitet (ob in der Familie oder im Projektteam), wird eben diese Funktionen auch innerhalb seiner eigenen Cloud schnell lieben lernen.

Schritt 1: Die Installation von Docker

Als Basis für alles Weitere dient im vorliegenden Fall eine Nextcloud 13-Installation, die auf einem Ubuntu Linux 16.04.4 LTS fußt. Hier gilt es zunächst, mit Docker die Basis für die genutzte Container-Technologie zu schaffen. Dabei bedienen wir uns der vorhandenen Ubuntu-Paket-Repositories:

Ist die Installation erfolgt, können wir den erfolgreichen Start des Docker-Daemons durch Eingabe von

entsprechend prüfen. Bei meinem System, welches bereits länger online ist, sieht das beispielsweise wie folgt aus:

Nextcloud Collabora Online Docker Daemon

Sollte der Dienst nicht wie erwartet gestartet sein, können wir ihn durch Eingabe von

entsprechend starten und im Nachgang durch den Befehl

dafür sorgen, dass Docker auch nach dem Neustart des Linux-Gastsystems direkt geladen wird. Standardmäßig nutzt Docker übrigens AUFS als Storage-Treiber auf Debian und Ubuntu. Damit das Ganze aber auch in Verbindung mit Collabora Online funktioniert, müssen wir hier eine Änderung zur Nutzung des Device Mapper-Treibers erwirken. Dazu muss erst einmal durch Eingabe des Befehls

ein neues Verzeichnis erstellt werden. Dann legen wir eine neue Konfigurationsdatei an, die ich in meinem Fall mit dem guten, alten vi-Editor anpasse:

Diese befüllen wir mit dem folgenden Inhalt:

Nach dem Speichern und Schliessen der Datei starten wir durch Eingabe von

einmal den Systemd-Dienst sowie anschliessend durch den Befehl

den Docker-Dienst an sich neu. Die Prüfung, ob der Storage-Treiber nun der Device Mapper ist, können wir wiederum durch Eingabe von

prüfen und nach einem genauen Blick auch abnicken.

Nextcloud Collabora Online Docker Storage Treiber

Damit haben wir im ersten Schritt alle Voraussetzungen für den weiteren Verlauf dieses Tutorials geschaffen und können uns in Schritt 2 an die Installation von Collabora Online machen!

Schritt 2: Die Installation und der erste Start von Collabora Online

Nun, da unser Docker brav im Hintergrund seinen Dienst verrichtet, können wir uns das fertige Image der Collabora Online Development Edition in Version 3.1 von github in einen Container herunterladen. Mittel zum Zweck ist hier der Befehl

und ein wenig Geduld, bis – je nach der genutzten Internet-Anbindung – das komplette Image mit allen Support-Dateien heruntergeladen ist. Ist das ohne Fehlermeldungen geschehen, können wir den Container starten. Hier gehen wir davon aus, dass Eure bisher genutzte Nextcloud-Instanz unter dem Hostnamen nextcloud.domain.tld erreichbar ist, den Ihr selbstverständlich entsprechend abändern müßt:

Der Collabora Online Server beginnt nach der oben aufgeführten Befehlszeile anschliessend, auf Port 9980 Eures Servers zu lauschen. Dies kann durch

entsprechend überprüft werden. Paßt auch die Ausgabe und sieht in etwa wie die nachfolgende meines Systems aus, können wir auch einen Haken hinter Schritt 2 machen und uns nun im nächsten Schritt dem Reverse Proxy zuwenden.

Nextcloud Collabora Online Docker Service

Schritt 3: Die Apache-Konfiguration

Ein bereits bestehenden Apache-Webserver für unsere bisherige Nextcloud-Installation vorausgesetzt,  erstellen wir nun eine neue Konfigurationsdatei

und befüllen diese mit dem folgenden Inhalt:

Nach dem Speichern aktivieren wir die Konfiguration im Webserver:

und starten durch Eingabe von

den Webserver neu.

Nun geht es darum, den Webserver respektive den neuen Host über SSL zu verschlüsseln und ein Zertifikat zu generieren. Da meine Nextcloud-Instanz bereits ein entsprechendes Zertifikat mit Hilfe von certbot-auto bekommen hat, haben wir bereits alle Hilfsmittel an Bord und durch Eingabe von

wird die Beantragung für den neuen Host, der bei mir an Position 2 steht, gestartet. Das Ganze kann natürlich automatisiert werden, wir gehen aber die Punkte einzeln durch und am Ende sollte eine entsprechende Erfolgsmeldung die neuen Zertifikate auf dem System ablegen. Faustregel hier ist: Läuft Eure Nextcloud-Instanz bereits via SSL, werdet Ihr hier auch keine Probleme bekommen!

Nextcloud Collabora Online Certbot

Schritt 4: Einrichtung des Reverse-Proxy

Während ein klassischer Forward-Proxy Client-Geräte in einem Netzwerk vor Einflüssen aus dem Internet schützt (beispielsweise aus dem Unternehmens-Netzwerk heraus), arbeitet ein Reverse-Proxy dem Namen entsprechend in umgekehrter Richtung. Ein solcher hier benötigter Proxy-Server wird als zusätzliche Sicherheitskomponente vor einen oder mehrere Webserver geschaltet, um Anfragen aus dem Internet stellvertretend entgegenzunehmen und an einen Backend-Server im Hintergrund weiterzuleiten.

Dies erreichen wir durch einen weiteren virtuellen Host, den ich der Einfachheit halber hier als “office.domain.tld” bezeichne und den wir nachfolgend dem Apache-Webserver einmal bekannt machen. Wichtig: Beide Hosts laufen auf demselben Webserver, wir benötigen für unser Collabora Online-Backend also nicht einen zweiten Linux-Server, was im klassischen Anwendungsfall einer kleinen heimischen Cloud ein wenig überzogen wäre. In größeren, entsprechend skalierten Umgebungen kann das schon anders aussehen, das soll aber heute nicht unser Thema sein.

Damit der Reverse Proxy über unseren Apache-Webserver überhaupt erst einmal lauffähig ist, müssen wir die Funktion samt etwaiger noch nicht genutzter Module durch Eingabe von

erst einmal aktivieren. Dann machen wir uns daran, die gerade durch den Certbot generierte Konfigurationsdatei grundlegend zu editieren:

Der Inhalt der Datei sollte dann wie folgt aussehen:

Einmal speichern und wir können den Apache2-Webserver einmal neu starten. Wie üblich führt der Befehl

zum Ziel und unsere Änderungen auf System-Ebene sollten somit komplett sein. Weiter geht es in Schritt 5 im Nextcloud-Backend, denn nun muss unsere private Cloud noch wissen, dass da überhaupt eine Collabora Online-Instanz im Hintergrund auf die gemeinsame Zusammenarbeit wartet!

Schritt 5: Abschliessende Einrichtung in Nextcloud

Wir begeben uns nun also in die Administrations-Oberfläche unserer Nextcloud-Installation, genauer gesagt in den App-Bereich:

Nextcloud Collabora Online Nextcloud Apps

Im Bereich “Büro und Text” aktivieren wir nun das Modul “Collabora Online”.

Nextcloud Collabora Online Nextcloud Install

Ist diese Installation geschehen, wandern wir noch einmal in die Einstellungen der Nextcloud-Instanz. Dort ist nun in der Seitenleiste der Optionen Collabora Online zu finden:

Nextcloud Collabora Online Nextcloud Integration

Hier geben wir nun den neuen Namen unseres frisch erstellten Collabora Online-Hosts samt https:// davor und dem Port 443 dahinter (beispielsweise https://office.domain.tld:443) ein. Auf Wunsch können wir die Verwendung und Bearbeitung von und mit Collabora Online auch auf bestimmte Gruppen einschränken – das ist in meiner Umgebung aber nicht notwendig gewesen, weswegen die Anpassungen im Backend nach der Eingabe der URL nun vollständig sind.

Um zu schauen, ob nun alles sauber funktioniert, erstellen wir einfach mal ein neues Dokument durch die gewohnte Nutzung des Plus-Zeichens: Wo vorher nur die Möglichkeit zum Upload oder zur Erstellung eines Ordners respektive einer Textdatei bestand, erkennen wir bereits eine Veränderung: Auch ein neues Textdokument im Open Document-Format, eine neue Tabelle oder eine neue Präsentation können nun erstellt werden.

Nextcloud Collabora Online Nextcloud neues Dokument

Nach Eingabe des Dateinamens können wir das Dokument nun direkt editieren, was auch ohne Fehlermeldung möglich sein sollte:

Nextcloud Collabora Online Nextcloud Dokument editieren

Somit können wir nun loslegen und unser Online-Office innerhalb unserer eigenen, auf Nextcloud basierten, private Cloud nutzen. Nextcloud als Lösung an sich ist – auch im kleinen Kreis – nun durch die Office-Features ergänzt worden und die Funktionen von Collabora Online runden ein bereits perfektes Produkt noch einmal final ab!

Wer eh schon viel mit Nextcloud arbeitet und sich bereits von den Cloud-Lösungen der großen Anbieter gelöst hat, wird eventuell noch die hier dargestellten Funktionen vermißt haben. Am Ende dieses Tutorials sollte dieses Manko nun abgestellt sein und wer weiß – vielleicht reichen dem ein oder anderen ja die Möglichkeiten, die ein webbasiertes Office bietet?

Viel Spaß mit Nextcloud 13 und der Collabora Online Development Edition!

Share.

About Author

Stolzer Familienvater. Digital Native und chronischer Device-Switcher. Multimedia-Freak. UK-Fan, auch mit Brexit. Blogger mit stets zu wenig Zeit. Hobbyphilosoph. Musik-Enthusiast. Querdenker. Zyniker. Hauptberuflicher IT-Consultant- & Vertriebler. Auch zu finden bei LinkedIn. Dieser Artikel hat einen Job oder zumindest Euren Seelenfrieden gerettet und gegebenenfalls sogar für Kurzweil gesorgt? Die PayPal-Kaffeekasse freut sich - dankeschön!

5 Kommentare

  1. Pingback: Tutorial: Integration von Collabora Online in Nextcloud 13 – Social Web

  2. Toller Blog – klasse Anleitung. Sehr übersichtlich und gut nachvollziehbar geschrieben. Hat prima geklappt. Vielen Dank an dieser Stelle für Deine Arbeit :-).

    LG
    Jochen

    • Hallo Jochen, vielen Dank – es hatte ein wenig gedauert, bis ich mal alle Informationen zu dem Thema zusammengetragen hatte, aber das Ergebnis scheint ja zu stimmen. Tolles Feedback, danke dafür!

  3. Super Anleitung… nur noch “eine” Frage:

    Wenn ich das richtig verstanden hab, dann lässt Du den Office-Dienst über SSL und die URL office.domain.tld nach draußen. Ist das wirklich nötig?

    Wenn NextCloud der einzige Zugang zu dem office-Dienst ist, kann ich mir doch das https und die Url sparen? Vorausgesetzt es läuft alles auf der selben lokalen Maschine und der office-Port ist über die Firewall eh nach draußen gesperrt?

    Grüße
    Clemens

    • Hallo Clemens, danke für das Feedback. Prinzipiell sollte das auch wie von Dir vorgeschlagen funktionieren. In meinem Fall laufen beide Instanzen ja auf der gleichen internen IP und die Trennung in zwei Hosts ist einfach der „Sauberkeit“ geschuldet, Port 80 und 443 sind da eh offen für Nextcloud. Hängt aber natürlich von dem jeweiligen Szenario ab – man muss natürlich nicht mehr freigeben bzw. extern verfügbar machen s unbedingt notwendig, da gebe ich Dir recht!

Leave A Reply

*

%d Bloggern gefällt das: