Einrichtung SOGo Groupware
Die Installation und Einrichtung der SOGo Groupware auf einem Debian-Server beinhaltet die Installation von Abhängigkeiten, das Hinzufügen des SOGo-Repositorys, die Installation der Software und die Konfiguration von Diensten wie PostgreSQL oder MySQL/MariaDB, LDAP und Apache.

Hiermit habe ich einmal zusammengefasst wie ich bei mir die Einrichtung von SOGo durchgeführt habe:
1. Systemvorbereitung
- Debian-Update und -Upgrade
Bevor wir mit der Installation beginnen, stellen wir sicher, dass das System auf dem neuesten Stand ist:sudo apt update && sudo apt upgrade -y
- Erforderliche Pakete installieren
Installiere die notwendigen Pakete für die Installation:sudo apt install gnupg2 apt-transport-https lsb-release ca-certificates -y
2. Hinzufügen des SOGo-Repositorys
Füge das SOGo-Repository hinzu, um die Software zu installieren.
- GPG-Schlüssel hinzufügen
wget -qO- https://keys.openpgp.org/vks/v1/by-fingerprint/0x810273C4DA017D99 | sudo gpg --dearmor -o /usr/share/keyrings/inverse-archive-keyring.gpg
- Repository hinzufügen
Füge das SOGo-Repository zursources.list.d
hinzu:echo "deb [signed-by=/usr/share/keyrings/inverse-archive-keyring.gpg] https://packages.inverse.ca/SOGo/nightly/5/debian/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/sogo.list
- Paketlisten aktualisieren
Aktualisiere die Paketlisten, um das neue Repository zu berücksichtigen:sudo apt update
3. Installation der SOGo Groupware
Installiere SOGo und alle benötigten Abhängigkeiten:
sudo apt install sogo sogo-activesync sope4.9-gdl1-mysql -y
4. Datenbank einrichten (PostgreSQL oder MySQL/MariaDB)
PostgreSQL
- PostgreSQL installieren:
sudo apt install postgresql postgresql-contrib -y
- Datenbank erstellen:
sudo -u postgres psql -c "CREATE DATABASE sogo;" sudo -u postgres psql -c "CREATE USER sogo WITH PASSWORD 'password';" sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE sogo TO sogo;"
MySQL/MariaDB
- MySQL/MariaDB installieren:
sudo apt install mariadb-server -y
- Datenbank erstellen:
sudo mysql -e "CREATE DATABASE sogo;" sudo mysql -e "CREATE USER 'sogo'@'localhost' IDENTIFIED BY 'password';" sudo mysql -e "GRANT ALL PRIVILEGES ON sogo.* TO 'sogo'@'localhost';" sudo mysql -e "FLUSH PRIVILEGES;"
5. SOGo konfigurieren
Die Hauptkonfigurationsdatei von SOGo befindet sich unter /etc/sogo/sogo.conf
. Diese muss entsprechend angepasst werden.
Beispielkonfiguration
{
/* Database configuration */
SOGoProfileURL = "postgresql://sogo:password@127.0.0.1:5432/sogo/sogo_user_profile";
OCSFolderInfoURL = "postgresql://sogo:password@127.0.0.1:5432/sogo/sogo_folder_info";
OCSSessionsFolderURL = "postgresql://sogo:password@127.0.0.1:5432/sogo/sogo_sessions_folder";
/* IMAP and SMTP configuration */
SOGoIMAPServer = "imaps://imap.server.tld:993";
SOGoSMTPServer = "smtp.server.tld:587";
SOGoMailDomain = "yourdomain.tld";
/* General configuration */
WOWorkersCount = 2;
SOGoLanguage = German;
SOGoTimeZone = Europe/Berlin;
}
Passe die Parameter wie SOGoProfileURL
, SOGoIMAPServer
, SOGoSMTPServer
, etc., entsprechend an.
6. Apache konfigurieren
Um SOGo über Apache verfügbar zu machen, konfiguriere den Apache-Webserver.
- Apache2 installieren:
sudo apt install apache2 apache2-suexec-custom libapache2-mod-proxy-html libapache2-mod-proxy-uwsgi -y
- Apache-Modifikationen aktivieren:
sudo a2enmod proxy proxy_http headers sudo systemctl restart apache2
- SOGo als virtuelle Host-Datei hinzufügen:
Erstelle eine neue Datei unter
/etc/apache2/sites-available/sogo.conf
:sudo nano /etc/apache2/sites-available/sogo.conf
- Beispiel für eine SOGo Apache-Konfiguration:
<VirtualHost *:80> ServerName mail.yourdomain.tld DocumentRoot /usr/lib/GNUstep/SOGo/WebServerResources/ Alias /SOGo.woa/WebServerResources/ /usr/lib/GNUstep/SOGo/WebServerResources/ Alias /SOGo/WebServerResources/ /usr/lib/GNUstep/SOGo/WebServerResources/ <Directory /usr/lib/GNUstep/SOGo/> AllowOverride None Require all granted </Directory> ProxyRequests Off ProxyPreserveHost On SetEnv proxy-nokeepalive 1 <Proxy *> AddDefaultCharset off Require all granted </Proxy> ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0 ProxyPassReverse /SOGo http://127.0.0.1:20000/SOGo ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:20000/SOGo/Microsoft-Server-ActiveSync retry=0 ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:20000/SOGo/Microsoft-Server-ActiveSync <Location /SOGo> SetEnv proxy-nokeepalive 1 ProxyPassReverse / Require all granted AddOutputFilterByType DEFLATE text/html text/plain text/xml Options FollowSymLinks </Location> ErrorLog /var/log/apache2/sogo_error.log CustomLog /var/log/apache2/sogo_access.log combined </VirtualHost>
- SOGo-Site aktivieren:
sudo a2ensite sogo.conf sudo systemctl reload apache2
7. SOGo starten und Dienste aktivieren
Starte SOGo und aktiviere es, damit es beim Systemstart mitgestartet wird:
sudo systemctl enable sogo
sudo systemctl start sogo
8. Zugriff auf die SOGo-Weboberfläche
Jetzt kann man über den Browser auf die SOGo-Weboberfläche zugreifen. Wir gehen zu http://your-server-ip/SOGo
und melden uns mit den entsprechenden Benutzeranmeldedaten an.
9. Optional: SSL/TLS aktivieren
Um SSL/TLS zu aktivieren, sollte man ein SSL-Zertifikat (z. B. von Let's Encrypt) installieren und die Apache-Konfiguration entsprechend anpassen, um HTTPS zu erzwingen. Für eine Firmeneinrichtung sollte natürlich ein kostenpflichtiges SSL-Zertifikat eingebunden werden.
Abschluss
Nach diesen Schritten sollte die SOGo Groupware vollständig auf dem Debian-Server installiert und konfiguriert sein. Nun kann man Benutzer hinzufügen und die Groupware für die geplanten Zwecke nutzen.