Installation von grommunio – Aufbau einer eigenen Groupware-Plattform
Praxisleitfaden mit Vorab-Konfiguration, Installation, DNS-Setup, Testing und Forecast
1. Einleitung
Mit grommunio steht eine moderne Groupware-Lösung zur Verfügung, die sich bewusst als Alternative zu klassischen Cloud-Angeboten wie Microsoft 365 oder Exchange positioniert. Entwickelt in Österreich und vollständig Open Source, bietet grommunio eine modulare Plattform für E-Mail, Kalender, Kontakte und Zusammenarbeit.
Ein zentraler Vorteil liegt dabei in der Architektur: grommunio wird als Appliance ausgeliefert, basiert auf openSUSE und lässt sich vergleichsweise schnell in Betrieb nehmen. Gleichzeitig bleibt die Lösung flexibel genug, um auch in komplexeren Infrastrukturen betrieben oder vollständig automatisiert ausgerollt zu werden.
In diesem Beitrag zeigen wir den Aufbau einer grommunio-Instanz anhand der Appliance – inklusive typischer Stolpersteine, die in der Praxis tatsächlich relevant sind. Genau diese Punkte entscheiden häufig darüber, ob die Installation reibungslos funktioniert oder früh in unnötige Fehler läuft.
2. Vorbereitung der Infrastruktur
Bevor die eigentliche Installation beginnt, sollte die Umgebung sauber vorbereitet werden. In unserem Fall erfolgt der Betrieb virtualisiert, beispielsweise unter Proxmox. Zunächst wird eine virtuelle Maschine erstellt und das Netzwerk korrekt zugewiesen. Dazu gehört insbesondere die Zuordnung zum richtigen VLAN sowie die Sicherstellung, dass die VM später unter der gewünschten IP-Adresse erreichbar ist.
Anschließend wird das Appliance-ISO eingebunden und die VM gestartet. Die Installation selbst ist grundsätzlich einfach, setzt aber eine saubere Vorarbeit voraus. Gerade Netzwerk, DNS und Namensauflösung sollten vor dem Start korrekt sein.
Ein wichtiger Punkt: Wenn später Let's Encrypt für Zertifikate verwendet werden soll, müssen die DNS-Namen bereits vor der Installation bzw. vor der Zertifikatsausstellung korrekt gesetzt sein. Ohne funktionierende Namensauflösung oder ohne erreichbaren FQDN schlägt die Zertifikatsausstellung häufig fehl.
Ebenfalls relevant ist die aktuelle Einschränkung der Appliance: Eine vorab definierte LVM-Partitionierung lässt sich im Appliance-Installationspfad derzeit nicht sauber konfigurieren. Wer LVM oder ein spezielles Storage-Layout nutzen möchte, muss diese Anpassungen nachträglich manuell umsetzen.
Ein kurzer Ausblick: Neben der Appliance kann grommunio auch vollständig manuell oder automatisiert installiert werden, beispielsweise mit Ansible auf Red-Hat-, Debian- oder SUSE-basierten Systemen. Die Appliance ist jedoch der einfachste Einstieg, gerade für einen initialen Proof of Concept oder für einen schnellen Core-Betrieb.
Hier kann man als ersten Schritt schon das Passwort des Systems setzen:
Wenn erfolgreich, kann im nächsten Schritt mit der Netzwerkkonfiguration begonnen werden.
3. Vorab-Konfiguration des Netzwerks
Ein typischer Stolperstein bei der Appliance-Installation ist die Netzwerkkonfiguration. Gerade YaST2 wirkt an dieser Stelle zunächst komfortabel, kann in der Praxis aber irritieren. Man sieht zwar IP-Adresse und Subnetz, der Default Gateway ist jedoch nicht dort konfiguriert, wo viele ihn erwarten würden. Das führt schnell zu einer Situation, in der das System lokal erreichbar scheint, aber keinen funktionierenden Upstream-Zugriff hat.
Die Konfiguration erfolgt mit yast2, sollte diese nicht funktionierem vor dem eigentlichen Setup kann man diese direkt im Terminal setzen. Dadurch ist sichergestellt, dass Hostname, DNS, Routing und IP-Konfiguration konsistent sind, bevor die Installation beginnt.
Folgende Punkte sollten vor dem Start des Guided Setups vollständig eingerichtet sein:
- gültiger Hostname / FQDN
- statische IP-Adresse
- Default Gateway
- DNS-Server
- Search Domain
- funktionierende Namensauflösung
Konfiguration mit Yast2
Wir konfigurieren das Netzwerk Interface, Hostname und DNS sowie das Routing.
Die Netzwerkschnittstelle selbst wird auf statisch gesetzt:
Im nächsten Schritt setzen wir die DNS Einstellungen:
Falls notwendig, werden auch statische Routen oder das Default Gateway hinterlegt:
Nach der Anpassung einmal in das Terminal wechseln und einen ping auf eine externe ip und dns testen:
Konfiguration mit dem Terminal
Wir konfigurieren das Netzwerk Interface, Hostname und DNS sowie das Routing.
Die Netzwerkschnittstelle selbst wird auf statisch gesetzt, die Datei befindet sich unter /etc/sysconfig/network/ifcfg-eth0:
USERCONTROL='no'IPADDR='188.40.144.21/24'BOOTPROTO='static'STARTMODE='auto'ZONE='public'
Danach:
ifdown eth0ifup eth0
Im nächsten Schritt setzen wir die DNS Einstellungen /etc/resolv.conf:
search forgeone.eunameserver 9.9.9.9nameserver 149.112.112.112
Falls notwendig, werden auch statische Routen oder das Default Gateway hinterlegt in der /etc/sysconfig/network/ifroute-eth0
default 188.40.144.254 - eth0
Nach der Anpassung einmal wicked durchstarten:
systemctl restart wicked
Im Anschluss ping auf eine externe ip und dns testen:
ping 1.1.1.1PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.64 bytes from 1.1.1.1: icmp_seq=1 ttl=56 time=5.56 msping google.atPING google.at (142.251.141.163) 56(84) bytes of data.64 bytes from lcprga-ag-in-f3.1e100.net (142.251.141.163): icmp_seq=1 ttl=116 time=12.4 ms
Genau dieser Schritt ist entscheidend. Wenn Gateway, DNS oder FQDN vor dem Setup nicht sauber funktionieren, treten später häufig Fehler bei Paketquellen, Namensauflösung oder Zertifikatsausstellung auf. Das System wirkt dann installiert, ist aber operativ noch nicht sauber vorbereitet.
Egal ob in Yast2 oder direkt auf der cli, beides muss zu einer funktionierenden Netzwerkverbindung führen.
4. Start der Installation und erste Schritte
Nach der Vorbereitung kann die Appliance gestartet und das CUI-Interface verwendet werden. Dort beginnt die eigentliche Erstkonfiguration. Auch wenn dieser Weg geführt wirkt, ist es weiterhin wichtig, dass die Basiskonfiguration bereits korrekt gesetzt wurde.
Der Installer führt anschließend in die eigentliche Guided Installation. Dort können die Komponenten ausgewählt werden, die später betrieben werden sollen.
- Core – Groupware für E-Mail, Kalender und Kontakte
- Meet – adaptiertes Jitsi
- Chat – adaptiertes Mattermost
- Files – adaptierte Nextcloud
- Office – adaptiertes Collabora Online
- Archive – adaptiertes Piler
- Auth – adaptierter Keycloak (aktuell separat nachzuinstallieren)
Wichtig dabei ist, dass nur die Pakete bzw. Module unterstützt werden, für die die entsprechenden Lizenzen vorhanden sind. Eine Basic-Lizenz unterstützt beispielsweise nur die Core-Funktionen und nicht die weiteren Module. Unterstützt heißt, man kann zwar alle Module installieren, sollte es aber dort zu einem Problem kommen bzw. das dortige Problem auf das in der Lizenz supportete Modul auswirken, nur die Deinstallation hilft, da sonst nicht gedeckt.
Die Eingabe der Lizenz die man von einem grommunio Partner bekommt kann hier aktiviert werden. Wenn man die Felder leer lässt, wird die Community Edition installiert.
Hier entscheidet sich ob die public DNS Records schon vorab korrekt gesetzt wurden wenn man Letsencrypt auswählt. Optional kann man auch mit Self-Signed oder einem eigenen Zertifikat weitermachen.
Der restliche Installationsprozess ist grundsätzlich geradlinig. Sollte es bei der Zertifikatsausstellung mit certbot und Let's Encrypt Probleme geben, kann dieser Schritt später auch erneut über die CLI angestoßen werden.
certbot --nginx -d mail.forgeone.eu -d webmail.forgeone.eu -d autodiscover.forgeone.eu
5. Domain- und DNS-Konfiguration nach der Installation
Nach der erfolgreichen Installation folgt die eigentliche Konfiguration innerhalb der grommunio-Weboberfläche. Optional kann zunächst eine Organisation angelegt werden. Innerhalb dieser Organisation oder auch direkt ohne Organisation wird anschließend die gewünschte Mail-Domain eingerichtet.
Sobald die Domain angelegt ist, kann die Konfiguration der notwendigen DNS-Einträge beginnen. Dazu gehören unter anderem:
- MX Records
- SPF (TXT)
- DKIM
- DMARC
- SRV Records
Ein besonders relevanter Punkt ist DKIM. Wenn noch kein DKIM-Schlüssel vorhanden ist, kann OpenDKIM nachinstalliert und der Schlüssel manuell erzeugt werden. Die Keys werden typischerweise unter /etc/opendkim/keys/<example.com>/ abgelegt. Wir legen sie dann aber in /var/lib/grommunio-antispam/dkim/forgeone.eu/ ab.
zypper install opendkim
Erstellen der Ordner, generieren der dkim private- und pubkeys sowie das setzen der Berechtigungen:
mkdir -p /var/lib/grommunio-antispam/dkim/forgeone.eucd /var/lib/grommunio-antispam/dkim/forgeone.eu || exit 1opendkim-genkey -s mail -d forgeone.eu -b 2048chown groas:grommunio mail.private mail.txtchmod 640 mail.privatechmod 644 mail.txtchmod 750 /var/lib/grommunio-antispam/dkimchmod 750 /var/lib/grommunio-antispam/dkim/forgeone.eu
Nach der Erzeugung des Schlüssels muss der öffentliche Teil (in mail.txt) in die DNS-Zone eingetragen werden.
mail._domainkey IN TXT ( "v=DKIM1; k=rsa; ""p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnAOkWGe+4sPuzxzz8VYzet9RkmljJ6/FE1VrSvGsBYw5EbIzCriLMDPSpChzsTGudZupcq+eGcwpJXpIgMPRk8DQLAQyNAwqoSdt4RgCLe5b9CgU7eLTq5yVe+X4xYUj6So8dd0xKYKNApkjp5+T4jz+AQv7MzdWriwUfI2blBVOtObHf2ZiYJsv5J+dvUPo2IY475yvB9wVso""jX1cFqH5Spjxt+q/fZxdFTZlhkTnyAwbjF378S5zVHtg6wjgnwMBUTgimIksRUTLCVJE3Nde/+djBZsIT27Rt92puOK/hF5gmY+ub8RnQ/hOZaDP4iEOR3Ya+n6xE1tGDWnC8V8wIDAQAB" ) ; ----- DKIM key mail for forgeone.eu
Zusätzlich ist die DKIM-Signierung rspamd bekannt zu machen, damit ausgehende E-Mails für die jeweilige Domain korrekt signiert werden.
vim /etc/grommunio-antispam/override.d/dkim_signing.conf
Den folgenden Inhalt dann in die dkim_signing.conf kopieren:
enabled = true;use_domain = "header";sign_authenticated = true;sign_local = true;try_fallback = false;selector = "mail";domain {forgeone.eu {path = "/var/lib/grommunio-antispam/dkim/forgeone.eu/mail.private";selector = "mail";}}symbol = "DKIM_SIGNED";
Danach die Services neustarten und prüfen ob grommunio-antispam wieder hochgekommen ist:
systemctl restart grommunio-antispamsystemctl status grommunio-antispamjournalctl -u grommunio-antispam -f
6. Testing und erste Zustellung
Sobald Core-Betrieb, DNS und Signierung konfiguriert sind, folgt das Testing. Ein sehr nützliches Werkzeug ist in diesem Zusammenhang mail-tester.com. Dort lässt sich überprüfen, ob SPF, DKIM und DMARC korrekt greifen und wie die Zustellqualität aus Sicht externer Empfänger bewertet wird.
Gerade bei neuen Mailservern sollte außerdem berücksichtigt werden, dass manche Provider – beispielsweise t-online.de – neue Mailserver bzw. neue IP-Adressen standardmäßig blockieren. In der ersten Rückmeldung wird in solchen Fällen meist beschrieben, dass man sich aktiv melden soll, damit die Reputation des Servers bzw. der IP-Adresse freigeschaltet oder zurückgesetzt wird.
Dieser Schritt ist nicht ungewöhnlich, sollte aber bewusst eingeplant werden, damit der produktive Betrieb später sauber funktioniert.
https://mail-tester.com (die freie Version kann man eingeschränkte Tests pro Tag durchführen)
7. Aktueller Stand und manuelle Nacharbeiten
Stand 22. März 2026 gibt es einzelne Punkte, die trotz Appliance-Installation noch manuelle Nacharbeit erfordern. Dazu gehören insbesondere:
- DKIM-Konfiguration
- grommunio-auth / Keycloak-Integration
Diese Schritte sind jedoch grundsätzlich straight forward und lassen sich sauber nachziehen, wenn die Basiskonfiguration stabil steht. Danach ist der Server für den Core-Betrieb vollständig eingerichtet und einsatzbereit.
Wichtig ist, dass auch die Firewall des Hosts wenn sie frei im internet steht entsprechend konfiguriert wird. Mit firewall-cmd kann man schnell und einfach den SSH Port absichern.
8. Fazit
Mit der grommunio Appliance lässt sich innerhalb kurzer Zeit eine vollständige Groupware-Plattform aufbauen. Die eigentliche Installation ist einfach – entscheidend ist jedoch die saubere Vorbereitung, insbesondere im Bereich Netzwerk, DNS und FQDN.
Wer diese Grundlagen vor dem Start des Setups sauber vorbereitet, spart sich später viele typische Fehlerbilder. Genau deshalb lohnt es sich, die Vorab-Konfiguration nicht dem Zufall zu überlassen, sondern kontrolliert und nachvollziehbar umzusetzen.
9. Forecast
Im nächsten Beitrag zeigen wir, wie man grommunio gegen Spam härtet mit grommunio-antispam und auch wie man grommunio als Cluster bzw. in einer hochverfügbaren Architektur betreiben lässt. Dabei geht es dann um die Frage, wie man aus einer einzelnen Appliance-Installation einen robusteren, skalierbaren und produktionsnahen Aufbau entwickelt.



