Zum Hauptinhalt springen

Schritt 2: Gateway-Installation & Konfiguration

Nachdem Ihr Gateway und Ihre Geräte in der SDA Console konfiguriert sind, umfasst die nächste Phase die Installation des SDA Glue-Dienstes auf der von Ihnen gewählten Gateway-Hardware. Dieser Installationsprozess unterscheidet sich zwischen Linux- und Windows-Systemen, doch beide Ansätze folgen demselben grundlegenden Prinzip: dem Herunterladen und Konfigurieren eines Dienstes, der kontinuierlich im Hintergrund läuft und bereit ist, bei Bedarf sichere Tunnel aufzubauen.

Installation​

Der Installationsprozess besteht aus zwei Hauptphasen:

  1. Installation von SDA Glue und der Abhängigkeiten auf dem Zielsystem.
  2. Konfiguration des Dienstes mit eindeutigen Anmeldedaten aus der SDA Console, die ein bestimmtes Gateway authentifizieren.

Stellen Sie vor Beginn der Installation sicher, dass Sie über administrative Rechte auf Ihrem Zielsystem verfügen. Der Installationsprozess erfordert erweiterte Berechtigungen, um den Systemdienst zu installieren. Unter Linux benötigen Sie sudo-Zugriff. Unter Windows müssen Sie PowerShell als Administrator ausführen.

warnung

Der Installationsprozess kann Proxy-Umgebungen berücksichtigen, erfordert jedoch zusätzliche Konfigurationsschritte, die wir in jedem plattformspezifischen Abschnitt beschreiben.

Linux​

Um SDA Glue auf einem Linux-System mit direktem Internetzugang zu installieren, führen Sie den folgenden Befehl in einem Terminal aus:

curl -sSL 'https://api.eu1.sdaconsole.io/glue/v1/install.sh' | bash -

Dieser Befehl verwendet curl, um das Installationsskript sicher direkt vom API-Endpunkt von SDA abzurufen, und leitet es zur unmittelbaren Ausführung an bash weiter. Die Flags -sSL stellen sicher, dass die Übertragung ohne Ausgaben erfolgt, Fehler angezeigt werden, falls sie auftreten, und Weiterleitungen sicher befolgt werden.

Details zum Linux-Installationsprozess

Die Linux-Installation verwendet ein automatisiertes Shell-Skript, das den komplexen Prozess des Erstellens und Konfigurierens des SDA Glue-Dienstes übernimmt. Dieses Skript führt mehrere wichtige Aufgaben aus: Es installiert die notwendigen Laufzeitabhängigkeiten und Build-Tools, lädt den SoftEther VPN Client aus dem sicheren Repository von SDA herunter und kompiliert ihn und installiert SDA Glue als systemd-Dienst, der automatisch mit Ihrem System startet.

Der Kompilierungsansatz gewährleistet Kompatibilität über verschiedene Linux-Distributionen hinweg und erhält gleichzeitig die Sicherheit durch das Erstellen aus verifiziertem Quellcode. Die systemd-Dienstintegration bedeutet, dass Ihr Gateway bei Problemen automatisch neu startet und unmittelbar nach dem Systemstart in Betrieb geht.

Wenn Sie das Installationsskript vor der Ausführung prüfen möchten, können Sie es separat abrufen, indem Sie entweder den Teil | bash - aus dem Befehl entfernen oder https://api.eu1.sdaconsole.io/glue/v1/install.sh direkt in Ihrem Webbrowser aufrufen. Diese Transparenz ermöglicht es Ihnen, genau nachzuvollziehen, was der Installationsprozess auf Ihrem System ausführt.

Linux mit Proxy​

Wenn Ihr Linux-System den Internetzugang über einen Proxy-Server benötigt, müssen Sie vor dem Ausführen des Installationsskripts die entsprechenden Umgebungsvariablen konfigurieren. Setzen Sie die Umgebungsvariablen http_proxy und https_proxy in Ihrer aktuellen Bash-Sitzung:

export http_proxy=http://username:password@proxy.company.com:8080
export https_proxy=http://username:password@proxy.company.com:8080
curl -sSL 'https://api.eu1.sdaconsole.io/glue/v1/install.sh' | bash -

Ersetzen Sie die Proxy-URL durch die tatsächlichen Daten Ihres Proxy-Servers, einschließlich der Anmeldedaten, sofern Ihre Netzwerkkonfiguration dies erfordert.

Docker​

Docker bietet eine alternative Bereitstellungsmethode, die Konsistenz über verschiedene Hostsysteme hinweg sowie eine vereinfachte Verwaltung durch Containerisierung ermöglicht. Das SDA Glue Docker-Image basiert auf Debian und enthält alle erforderlichen Abhängigkeiten vorkonfiguriert, sodass keine manuelle Kompilierung oder Abhängigkeitsverwaltung erforderlich ist.

Um SDA Glue mit Docker bereitzustellen, führen Sie den folgenden Befehl mit den erforderlichen Netzwerkberechtigungen aus:

docker run -d \
--name glue \
--device=/dev/net/tun \
--cap-add=NET_ADMIN \
-v glue-data:/var/lib/sdaglue \
--restart always \
-p 8081:8080 \
public.ecr.aws/t9c5s2d1/sdaglue:latest

Dieser Befehl erstellt einen dauerhaften Container mit dem Namen „glue“, der automatisch neu startet, falls er unerwartet beendet wird. Die Volume-Einbindung bewahrt die Konfigurations- und Authentifizierungsdaten Ihres Gateways über Container-Neustarts oder -Updates hinweg.

Zudem wird der Container-Port 8080 auf den Host-Port 8081 weitergeleitet, auf dem der Glue-Webserver zur Einrichtung der Anwendung läuft. Sie können ihn dann über http://localhost:8081/ aufrufen.

Info

Wenn Sie mehrere SDA Glue-Container auf demselben Host betreiben, stellen Sie sicher, dass jeder Container eindeutige Namen und Volume-Einbindungen verwendet, um Konflikte zu vermeiden:

docker run -d --name glue-factory -v factory-data:/var/lib/sdaglue [...]

Umfassende Hinweise zur Docker-Bereitstellung, einschließlich erweiterter Netzwerkkonfigurationen, Schritten zur Fehlerbehebung und Best Practices für den Produktivbetrieb, finden Sie in der vollständigen Dokumentation:

Vollständige Bereitstellungsdetails, Konfigurationsbeispiele und Hinweise zur Fehlerbehebung.

Windows​

Öffnen Sie PowerShell als Administrator, indem Sie in der Windows-Suchleiste nach „PowerShell“ suchen, mit der rechten Maustaste auf das Ergebnis klicken und „Als Administrator ausführen“ auswählen. Sobald Sie eine PowerShell-Sitzung mit erweiterten Rechten haben, führen Sie den folgenden Befehl aus:

iwr -Uri 'https://api.eu1.sdaconsole.io/glue/v1/install.ps1' -UseBasicParsing | iex

Dieser PowerShell-Befehl verwendet Invoke-WebRequest (abgekürzt als iwr), um das Installationsskript abzurufen, und leitet es zur unmittelbaren Ausführung an Invoke-Expression (abgekürzt als iex) weiter. Der Parameter -UseBasicParsing stellt die Kompatibilität mit verschiedenen Windows-Versionen und -Konfigurationen sicher.

Erfolgreiche Installation von SDA Glue mit PowerShell

Details zum Windows-Installationsprozess

Der Windows-Installationsprozess verwendet PowerShell, um ein Installationsskript herunterzuladen und auszuführen, das Ihr System für die SDA-Konnektivität konfiguriert. Anders als beim Linux-Ansatz, bei dem die Software aus dem Quellcode kompiliert wird, lädt das Windows-Installationsprogramm vorkompilierte Binärdateien des OpenVPN Community Client und des SDA Glue-Dienstes herunter und registriert SDA Glue anschließend als Windows-Dienst.

Die Integration als Windows-Dienst stellt sicher, dass SDA Glue automatisch mit Ihrem System startet und bei Problemen automatisch neu startet. Dies bietet dieselben Zuverlässigkeitsvorteile wie der systemd-Ansatz unter Linux, nutzt jedoch die native Dienstverwaltungsinfrastruktur von Windows.

Ähnlich wie beim Linux-Ansatz können Sie das Installationsskript vor der Ausführung prüfen, indem Sie den Teil | iex entfernen oder https://api.eu1.sdaconsole.io/glue/v1/install.ps1 direkt in Ihrem Webbrowser aufrufen.

Windows mit Proxy​

Wenn Ihr Windows-System hinter einem Proxy-Server betrieben wird, erfordert der Installationsprozess einen zweistufigen Ansatz. Zunächst konfigurieren Sie die Proxy-Einstellungen und laden das Installationsskript herunter. Anschließend führen Sie das Skript mit der entsprechenden Proxy-Konfiguration aus.

Beginnen Sie damit, PowerShell-Variablen für Ihre Proxy-Konfiguration zu setzen:

# Configure your specific proxy details
$ProxyHost="proxy.company.com:8080"
$ProxyUser="your-username"

# Download the installation script through the proxy
iwr -Uri 'https://api.eu1.sdaconsole.io/glue/v1/install.ps1' -UseBasicParsing -OutFile .\glue-install.ps1 -Proxy http://$ProxyHost -ProxyCredential $ProxyUser

# Execute the script with proxy configuration
.\glue-install.ps1 -Proxy $ProxyHost -ProxyCredential $ProxyUser

Beachten Sie den wichtigen Unterschied bei der Formatierung der Proxy-URL: Der Befehl Invoke-WebRequest erfordert das vollständige URL-Schema (http://proxy.company.com:8080), während das Installationsskript nur Hostnamen und Port erwartet (proxy.company.com:8080).

Wie die Protokolleinträge am Ende zeigen, müssen wir den Proxy-Server in SDA Glue über die CLI konfigurieren

Authentifizierung und Anmeldung​

Nach der erfolgreichen Installation der SDA Glue-Software müssen Sie Ihr physisches Gateway bei den SDA Cloud-Diensten authentifizieren. Dieser Authentifizierungsprozess verwendet eindeutige Anmeldedaten, die von der SDA Console für Ihr spezifisches Gateway generiert werden. Diese Anmeldedaten bestehen aus einer kurzen Gateway-Kennung und einem Einmalpasswort, das zur Erhöhung der Sicherheit periodisch wechselt.

Gateway-Einrichtungsbefehle aus der SDA Console

Kehren Sie zur SDA Console zurück und suchen Sie den zweiten Befehl im Einrichtungsdialog Ihres Gateways. Dieser Befehl sieht ähnlich wie die folgenden Beispiele aus:

Linux​

sudo sdaglue login -e eu1 G1ABCD 123456

Docker​

docker exec glue sdaglue login -e eu1 G1ABCD 123456

Windows​

sdaglue.exe login -e eu1 G1ABCD 123456

Die Befehlsstruktur enthält das Flag -e eu1, das den europäischen Regions-Endpunkt angibt, gefolgt von der eindeutigen Kennung Ihres Gateways (etwa G1ABCD) und dem Einmalpasswort (etwa 123456). Diese Werte sind spezifisch für Ihr Gateway und unterscheiden sich von den gezeigten Beispielen.

Info

Das Einmalpasswort wird aus Sicherheitsgründen periodisch aktualisiert. Falls Authentifizierungsfehler auftreten, kehren Sie zur SDA Console zurück, um das aktuelle Passwort aus dem Gateway-Einrichtungsdialog abzurufen.

Dienststatus​

Überprüfen Sie nach Abschluss der Installation und Authentifizierung, ob der SDA Glue-Dienst auf Ihrem System korrekt läuft.

Linux​

Prüfen Sie den Dienststatus mit systemd-Befehlen:

sudo systemctl status sdaglue

Um die Live-Protokollausgabe zu überwachen und Probleme zu beheben:

sudo journalctl -efu sdaglue -n 100

Docker​

Die Dienstprotokolle können aus Docker-Containern folgendermaßen abgerufen werden:

docker logs -n 100 --follow glue # tracks the latest 100 logs from the service

Windows​

Sie können den Dienst über die Windows-Anwendung „Dienste“ überprüfen. Suchen Sie in der Windows-Suchleiste nach „Dienste“ und suchen Sie in der Dienstliste nach „SDA Glue“. Der Dienst sollte als „Wird ausgeführt“ mit dem Starttyp „Automatisch“ angezeigt werden.

Darstellung aktiver Dienste unter Windows

Windows-Dienste erzeugen Ereignisprotokolle, die in der Ereignisanzeige unter Windows-Protokolle → Anwendung abgerufen werden können. Verwenden Sie die Suchleiste, um die Ereignisanzeige zu öffnen.

Zugriff auf SDA Glue-Protokolle in der Ereignisanzeige

Konfiguration​

SDA Glue ermöglicht es Ihnen, sein Verhalten so anzupassen, dass es optimal in Ihrer spezifischen Netzwerkumgebung funktioniert. Diese Konfigurationsanpassungen gewährleisten eine zuverlässige Konnektivität unabhängig von den besonderen Eigenschaften Ihres Industrienetzwerks – ob Sie es mit Proxy-Servern, Firewall-Einschränkungen oder verschiedenen Kommunikationsprotokollen zu tun haben.

Wir verwenden Umgebungsvariablen zur Steuerung des Dienstes. Konfigurationsänderungen erfordern einen Neustart des Dienstes, um wirksam zu werden. Umgebungsvariablen behalten dieselbe Namenskonvention für Konfigurationsparameter bei, verwenden jedoch das Präfix GLUE und werden durch Unterstriche getrennt:

log.level -> GLUE_LOG_LEVEL
webui.enabled -> GLUE_WEBUI_ENABLED

Aktuelle Konfigurationsparameter anzeigen:

# Linux & Windows
sdaglue config describe

# Docker
docker exec glue sdaglue config describe

Parameter setzen:

# Linux & Windows
sdaglue config set --log.level debug --webui.enabled true --webui.port 8080

# Docker
docker exec sdaglue config set --log.level debug --webui.enabled true --webui.port 8080

Parameter abrufen:

# Linux & Windows
sdaglue config list

# Docker
docker exec sdaglue config list

Dienst nach Änderungen neu starten:

# Linux & Windows
sdaglue service restart

# Docker
docker exec glue sdaglue service restart # or
docker restart glue

MQTT-Transportprotokoll​

Eine der wichtigsten Konfigurationsentscheidungen betrifft die Wahl, wie Ihr Gateway mit den SDA Cloud-Diensten kommuniziert. SDA Glue unterstützt zwei Transportprotokolle, die jeweils für unterschiedliche Netzwerkumgebungen ausgelegt sind:

TransportProtokollPortAnwendungsfall
MQTTSSL / TCP443Standardnetzwerke mit direktem Internetzugang
MQTT über WebSocketWebSocket Secure (TCP)443Netzwerke mit transparenten Proxys oder SSL-Inspektion

Für WebSocket-Transport:

# Linux & Windows
sdaglue config set --iot.transport websocket

# Docker
docker exec glue sdaglue config set --iot.transport websocket

Für Standard-MQTT-Transport:

# Linux & Windows
sdaglue config set --iot.transport mqtt

# Docker
docker exec glue sdaglue config set --iot.transport mqtt
Info

Wenn der Dienst bereits angemeldet und verbunden ist, wird das neue Transportprotokoll erst nach dem nächsten Neustart des Dienstes wirksam.

Wann WebSocket-Transport zu verwenden ist

Transparente Proxys: Einige Unternehmensnetzwerke verwenden transparente Proxys, die den Netzwerkverkehr abfangen und analysieren. Diese Proxys können Standard-MQTT-SSL-Verbindungen beeinträchtigen, lassen WebSocket-Verbindungen jedoch üblicherweise problemlos passieren.

Restriktive Firewalls: Netzwerke mit Deep Packet Inspection oder strenger Protokollfilterung können MQTT-Verkehr blockieren, während WebSocket-Verbindungen zugelassen werden, da diese dem Standard-Webverkehr ähneln.

Unternehmensnetzwerkrichtlinien: Manche Organisationen haben Richtlinien, die Nicht-HTTP-Protokolle einschränken, wodurch der WebSocket-Transport zur bevorzugten Wahl für die Einhaltung dieser Vorgaben wird.

Proxy-Server​

Wenn Ihr Netzwerk erfordert, dass der gesamte Internetverkehr über einen bestimmten Proxy-Server läuft, muss SDA Glue mit den Proxy-Daten konfiguriert werden, um Verbindungen zu den SDA Cloud-Diensten aufzubauen. Dies ist besonders in Unternehmensumgebungen verbreitet, in denen der direkte Internetzugang aus Sicherheitsgründen eingeschränkt ist.

Proxy-Adressen folgen dem Standardformat: scheme://username:password@hostname:port

  • Schema: Üblicherweise http:// oder https://
  • Benutzername/Passwort: Anmeldedaten (sofern von Ihrem Proxy gefordert)
  • Hostname: Die Adresse des Proxy-Servers
  • Port: Die Portnummer des Proxy-Servers

Sie müssen sowohl die HTTP- als auch die HTTPS-Proxy-Einstellungen konfigurieren, um alle Kommunikationsanforderungen von SDA Glue vollständig abzudecken.

Info

Wenn Ihr Proxy-Server keine Authentifizierung erfordert, lassen Sie Benutzername und Passwort einfach weg:

proxy_server="http://proxy.company.com:8080"

Linux​

proxy_server="http://username:password@proxy.company.com:8080"
sdaglue config set --proxy.http=$proxy_server --proxy.https=$proxy_server

# Restart the service to apply changes
sdaglue service restart

Docker​

proxy_server="http://username:password@proxy.company.com:8080"
docker exec glue sdaglue config set --proxy.http=$proxy_server --proxy.https=$proxy_server

# Restart the container to apply changes
docker restart glue

Windows​

$ProxyServer="http://username:password@proxy.company.com:8080"
sdaglue.exe config set --proxy.http=$ProxyServer --proxy.https=$ProxyServer

# Restart the service to apply changes
sdaglue.exe service restart

Häufige Probleme​

Unternehmensnetzwerk mit transparentem Proxy​

Problem: Das Gateway verbindet sich zunächst, trennt die Verbindung jedoch häufig oder zeigt eine instabile Konnektivität.

Lösung: Wechseln Sie zum WebSocket-Transportprotokoll.

Restriktive Firewall-Umgebung​

Problem: Das Gateway kann keine initiale Verbindung zu den SDA Cloud-Diensten aufbauen.

Lösung: Konfigurieren Sie den WebSocket-Transport und stellen Sie sicher, dass ausgehende HTTPS-Verbindungen über Port 443 zugelassen sind.

Authentifizierter Proxy-Server​

Problem: Das Gateway kann sich nicht über den Unternehmens-Proxy verbinden, der eine Authentifizierung erfordert.

Lösung: Konfigurieren Sie beide Proxy-Einstellungen mit den korrekten Anmeldedaten und starten Sie den Dienst neu.

Wenn diese Konfigurationsoptionen richtig gesetzt sind, passt sich Ihr SDA Glue-Dienst an Ihre Netzwerkumgebung an und hält eine zuverlässige Verbindung zu den SDA Cloud-Diensten aufrecht, was den sicheren Zugriff auf Ihre Industriegeräte ermöglicht.