Kommunikation zwischen Lobster_data und DMZ
Allgemeine Architektur
Ein DMZ-Server ist ein eigener Lobster Integration Server, bei dem aus Sicherheitsgründen nur die benötigten Kommunikations-Dienste, wie z. B. FTP oder SMTP ausgeführt werden. Die Firewall zwischen diesem DMZ-Server und dem Internet erlaubt nur die benötigten Ports/Protokolle.
Die Verbindung zwischen DMZ-Server und Lobster_data im Intranet erfolgt über ein proprietäres Protokoll der Lobster GmbH, dem Message Service. Damit ist ein Eindringen von außen in das innere System verhindert. Beim Message Service handelt es sich um ein HTTP-getunneltes Protokoll, das ausschließlich TCP/IP nutzt. Siehe auch Abschnitt Konfiguration allgemein.
Zwischen DMZ-Server und innerem Lobster_data Server ist ebenfalls eine Firewall erforderlich. Sie muss für den angegebenen Message-Port (üblicherweise 8020, kann jedoch konfiguriert werden) den Datenverkehr in beide Richtungen erlauben. Zudem werden HTTP-Requests und -Responses in beide Richtungen durchgereicht, es muss also auch der HTTP-Port (üblicherweise 80, kann jedoch konfiguriert werden) freigegeben werden.
Der Message Service kann für sehr große Sicherheitsansprüche auch im Pushback-Modus konfiguriert werden, dann geht der Verbindungsaufbau immer vom inneren Server aus, und es werden keine eingehenden Verbindungen ins Intranet gebraucht.
Wird eine maximale Nachrichtengröße definiert oder soll Lobster_data Dateien via DMZ-Server versenden/bereitstellen, so müssen diese Dateien vom inneren System auf den DMZ-Server kopiert werden. Dazu muss in der Firewall zusätzlich FTP oder SFTP (konfigurierbar) von Lobster_data zur DMZ erlaubt sein.
Verwendung des DMZ-Servers in der Lobster_data-GUI
In einem Profil
Die Option Via DMZ muss im Eingangsagenten (Phase 1) bzw. im Antwortweg (Phase 6) gesetzt sein.
In einem Kanal
Ist die Option Keine DMZ nicht gesetzt, werden die Daten des betreffenden Kanals auf den DMZ-Server repliziert.
Ist diese Checkbox Keine DMZ gesetzt, werden die Daten dieses Kanals nicht an den DMZ-Server weitergeben. Der Kanal ist dann für den DMZ-Server sozusagen gar nicht vorhanden. Das kann benutzt werden, um Kanäle zu definieren, die von extern nicht zugänglich sein sollen und nur intern verwendet werden.
Kommunikations-Szenarien
Eingehend
Kubernetes-/Docker-Umgebung
Falls Sie einen DMZ-Server in einer Kubernetes- oder Docker-Umgebung betreiben, können Sie die System-Property -Dhub.datawizard.enableDmzIpResolving=true setzen. Das erzwingt, dass die URL des DMZ-Servers immer neu aufgelöst wird, anstatt dass nur die initiale (und gegebenenfalls nicht mehr gültige) IP des DMZ-Servers verwendet wird. Setzen müssen Sie die System-Property auf dem inneren Integration Server, bzw. auf dem Node Controller und allen Working Nodes, wenn Sie mit Load Balancing arbeiten.