docs

Secure Mail Gateway

Ab Relution 26.4.0 ist der Secure Mail Gateway Standalone-Dienst eine Pflichtkomponente, wenn das SMG-Feature genutzt wird. Dieser Artikel beschreibt die Einrichtung für On-Premise-Installationen.

Zur Konfiguration des Secure Mail Gateway in Relution: Secure Mail Gateway →

Migration – Was ist zu tun?

InstallationHandlungsbedarf
Relution Cloud – Shared HostingKein Handlungsbedarf. Relution übernimmt die Migration des SMG-Dienstes.
Relution Cloud – Dedicated Server (Bestandskunden)Relution wird den SMG-Dienst für Sie hosten. Wir melden uns bei Ihnen, um die Migration zu koordinieren.
Relution Cloud – Dedicated Server (Neukunden)Der SMG-Dienst muss eigenständig als On-Premise-Komponente betrieben werden. Folgen Sie der Einrichtungsanleitung weiter unten in diesem Artikel.
On-PremiseDer vollständige Einrichtungsablauf ist weiter unten in diesem Artikel beschrieben.

Feature-Toggle für On-Premise-Installationen (26.3)

In Relution 26.3 können On-Premise-Installationen den neuen Modus bereits vorab aktivieren. Ergänzen Sie dazu den Feature-Toggle SMG_STANDALONE in der application.yml des Relution Servers:

relution:
  featuretoggle:
    enabledPreviewFeatures:
      - SMG_STANDALONE

Mit Version 26.4.0 entfällt der Toggle – der Standalone-Dienst ist dann ohne weitere Konfiguration aktiv.

Solange der Toggle aktiv ist, wird der neue Standalone-Dienst verwendet. Wird er entfernt, kehrt Relution automatisch zum bisherigen Verhalten zurück. Das macht Relution 26.3 geeignet, um den neuen Dienst vorab in der eigenen Umgebung zu testen, bevor das Update auf 26.4.0 den Wechsel verbindlich macht.

Einrichtung

1. Dynamische Rolle erstellen

Laden Sie die vorgefertigte Rollenvorlage herunter und importieren Sie diese in der globalen Organisation unter Einstellungen > Benutzerverwaltung > Berechtigungen:

SMG-Rollenvorlage herunterladen →

Alternativ können Sie die Rolle manuell anlegen:

  1. Navigieren Sie in der globalen Organisation zu Einstellungen > Benutzerverwaltung > Berechtigungen
  2. Fügen Sie eine neue Dynamische Rolle hinzu
  3. Aktivieren Sie die Berechtigung Secure Mail Gateway (service account)
  4. Speichern Sie die Rolle

2. Technischen Benutzer und API-Zugriffsschlüssel anlegen

  1. Erstellen Sie in der globalen Organisation einen neuen Benutzer und weisen Sie ihm die oben erstellte Dynamische Rolle zu
  2. Navigieren Sie zur Detailseite des Benutzers und erstellen Sie einen neuen API-Zugriffsschlüssel
  3. Kopieren Sie den generierten Schlüssel – er wird nur einmal angezeigt

3. Dienst bereitstellen

Fügen Sie den folgenden Dienst zu Ihrer bestehenden compose.yml hinzu. Dies ist nur erforderlich, wenn das Secure Mail Gateway verwendet wird.

Auch wenn auf Docker Hub neuere Versions-Tags erscheinen, empfehlen wir dringend, latest zu behalten. Neue Builds durchlaufen mehrere zusätzliche Quality Gates, bevor sie als latest bereitgestellt werden – eine fest eingetragene Versionsnummer kann auf einen Build verweisen, der noch nicht für den Produktiveinsatz freigegeben ist.

  smg:
    image: relution/relution-smg-standalone:latest
    restart: always
    container_name: smg
    networks:
      - reverse-proxy
    volumes:
      - ./smg/application.yml:/opt/app/config/application.yml:ro
#      - ./smg/ca-certs:/opt/app/ca-certs:ro   # siehe „Vertrauenswürdiges CA-Zertifikat hinterlegen" weiter unten
#    environment:
#      - JAVA_TOOL_OPTIONS=...                 # siehe „Proxy für ausgehende Verbindungen" weiter unten

smg muss sich wie relution und traefik im Netzwerk reverse-proxy befinden – sonst kann Traefik/nginx nicht zu diesem Dienst weiterleiten.

Erstellen Sie smg/application.yml neben Ihrer compose.yml:

relution:
  server:
    url: https://ihr-relution-server    # URL Ihres Relution Servers
    api-key: ihr-api-schluessel         # Oben erstellter API-Zugriffsschlüssel
#    honor-proxy-settings: true        # siehe „Proxy für ausgehende Verbindungen" weiter unten

Starten oder starten Sie Ihre Dienste neu:

docker compose up -d

Wenn Sie zuvor relution.smg.*-Eigenschaften in der Konfiguration Ihres Relution Servers angepasst haben, übertragen Sie diese unverändert in diese Datei – die Eigenschaftsnamen sind identisch.

Reverse-Proxy-Konfiguration

Der SMG-Dienst stellt den Endpunkt /Microsoft-Server-ActiveSync auf Port 8093 bereit. Ihr Reverse-Proxy muss alle Anfragen für diesen Pfad an den SMG-Dienst weiterleiten – die folgenden Beispiele zeigen die Konfiguration für Traefik und nginx.

Traefik

Folgen Sie der Traefik-Konfiguration → und ergänzen Sie neben dem bestehenden relution-Router einen zusätzlichen Router für den SMG-Pfad:

http:
  routers:
    smg:
      rule: Host(`external.url`) && Path(`/Microsoft-Server-ActiveSync`)
      service: smg
  services:
    smg:
      loadBalancer:
        servers:
          - url: "http://smg:8093"

nginx Alternative zu Traefik

Fügen Sie folgenden Location-Block zu Ihrer nginx-Konfiguration hinzu:

location ~ /Microsoft-Server-ActiveSync {
    proxy_read_timeout 2100;
    proxy_pass http://smg:8093;
}

Bei einer Docker-Installation bezeichnet smg den Docker-Dienstnamen und ist innerhalb des Docker-Netzwerks erreichbar. Bei einer nativen Linux-Installation ersetzen Sie smg:8093 durch 127.0.0.1:8093.

Vertrauenswürdiges CA-Zertifikat hinterlegen

Wenn Exchange ein Zertifikat präsentiert, das von einer internen oder selbstsignierten CA signiert wurde, mounten Sie ein Verzeichnis mit PEM-kodierten Zertifikatsdateien genau unter /opt/app/ca-certs in den Container:

    volumes:
      - ./smg/application.yml:/opt/app/config/application.yml:ro
      - ./smg/ca-certs:/opt/app/ca-certs:ro

Diese Zertifikate werden bei der Kommunikation mit Ihrem Exchange- und Relution-Server verwendet – eine Konfigurationseigenschaft ist dafür nicht erforderlich. Ist nichts gemountet, hat das Feature keine Auswirkung und ausgehendes TLS verhält sich wie zuvor. Zum Hinzufügen, Entfernen oder Ändern eines Zertifikats muss der Container neu gestartet werden; das Verzeichnis wird nur einmal beim Start gelesen.

Proxy für ausgehende Verbindungen

Anfragen an Exchange berücksichtigen die Proxy-Systemeigenschaften der JVM. Setzen Sie diese über JAVA_TOOL_OPTIONS:

    environment:
      - JAVA_TOOL_OPTIONS=-Dhttp.proxyHost=proxy.example.com -Dhttp.proxyPort=3128 -Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=3128

Mit -Dhttp.nonProxyHosts (eine mit | getrennte Liste von Host-Mustern, *-Platzhalter werden unterstützt) können Sie bestimmte Hosts vom Proxy ausschließen – typischerweise Exchange selbst, wenn dieser direkt erreichbar ist, ohne über den Unternehmens-Proxy zu gehen.

Standardmäßig werden Anfragen an Ihren Relution Server nicht über den Proxy geleitet – er ist normalerweise direkt erreichbar. Wenn Ihre Umgebung Relution über denselben Proxy wie Exchange erreicht, setzen Sie honor-proxy-settings: true in smg/application.yml:

relution:
  server:
    url: https://ihr-relution-server
    api-key: ihr-api-schluessel
    honor-proxy-settings: true   # Standard false; nur erforderlich, wenn Relution ebenfalls hinter dem Proxy liegt

Changelog

Aktuell unter latest verfügbare Version: 26.0.2 (Stand 01.07.2026)

VersionÄnderung
26.0.3Unterstützung für selbstsignierte Zertifikate und Proxy-Einstellungen
26.0.2Fehlerhafte Behandlung von 404-Antworten behoben
26.0.1Health-Endpunkt freigegeben
26.0.0Erstveröffentlichung – Code aus Relution ausgelagert
Top