Wie aktualisiere ich Enginsight in einem Air-Gapped-System?
- manuell über entsprechende transportable Speichermedien.
- über die Vorschaltung einer sog. demilitarisierten Zone (DMZ), die eine abgesicherte Verbindung zum Internet oder zu anderen Netzwerken hat. Die Kommunikation zwischen dem Air-Gapped-System und dem DMZ-Server erfolgt ausschließlich ausgehend vom Air-Gapped-System.
Alternativer Update-Weg für Air-Gapped-Systeme
Nimm folgende Schritte vor, um deine Enginsight Instanz zu aktualisieren:
1. Benötigte Dateipakete herunterladen
Für die Aktualisierung der Enginsight Plattform stehen drei Dateipakete zur Verfügung, die aus Sicherheitsgründen auf verschiedenen Servern liegen:
- Vollständiger Speicherabzug auf dem Content Delivery Network (CDN) von AWS: https://dls.enginsight.com/airgap.tar.gz
Dieses Dateipaket ist für die Aktualisierung von Enginsight obligatorisch.
- Speicherabzug der Prüfwerte (Hashes) im regulären Update-Repository von Enginsight: https://get.enginsight.com/airgap.tar.gz.sha1 https://get.enginsight.com/airgap.tar.gz.sha256
Diese Dateipakete sind optional.
Lade das oder die Dateipakete, die du benötigst, über die angegebenen URLs herunter. Dies kann entweder über ein transportables Speichermedium mit mind. 2 GB freiem Speicherplatz oder, bei Einsatz eines DMZ-Servers, direkt aus dem Internet geschehen (manuell oder z.B. automatisiert per Skript).
2. Dateipakete auf dem eigenen System einspielen
- Manuelles Hochladen der Dateipakete per Speichermedium in einem geeigneten Update-Verzeichnis direkt auf dem Air-Gapped-System.
- Manuelles Hochladen der Dateipakete per Speichermedium in einem geeigneten Update-Verzeichnis auf dem DMZ-Server.
- Abspeichern der aus dem Internet heruntergeladenen Dateipakete in einem geeigneten Update-Verzeichnis auf dem DMZ-Server.
3. Enginsight Konfigurationsdatei anpassen
Passe nun die Konfigurationsdatei config.json deiner Enginsight Installation an.
Achte darauf, dass du die folgenden Schritte auf dem Enginsight Applikationsserver durchführst.
- Öffne das Terminal auf deinem Linux- oder Mac-System.
- Gib den Befehl
ssh <BenutzernameApplikationsserver>@<IPAdresseApplikationsserver>ein und bestätige die Eingabe mit der Enter-Taste.
Vergiss dabei nicht, <BenutzernameApplikationsserver> mit dem Benutzernamen zu ersetzen, den du für dein Applikationsserver-Benutzerkonto angelegt hast. Ersetze <IPAdresseApplikationsserver> entsprechend mit der IP-Adresse des Applikationsservers.
3.2 Öffne mit folgendem Befehl die Enginsight Konfigurationsdatei:
sudo nano /opt/enginsight/enterprise/conf/services/config.json
3.3 Füge im Abschnitt "api" das Attribut "updateRepositoryUrl" ein und ergänze als Wert <URLUpdateVerzeichnis> die URL des Verzeichnispfads, unter dem die Dateipakete aus Schritt 2 liegen.
Bitte beachte: Die Angabe des Verzeichnispfades muss muss hier inklusive https:// oder http:// erfolgen. Es reicht nicht, nur die Domain anzugeben.
"api": {
"url": "%%API_URL%%",
"updateRepositoryUrl": "<URLUpdateVerzeichnis>",
"port": 8080,
"timeout": 5000,
"clientMaxBodySize": "50mb",
"cookies": {
"maxAge": 3600000,
"domain": "",
"path": "/",
"signed": false
},
3.4 Speichere die Änderungen in der Konfigurationsdatei (Strg+o) und bestätige den Speicherprozess. Schließe die Datei (Strg+x).
Enginsight greift nun für Aktualisierungen auf dieses Verzeichnis zu statt auf das standardmäßige Update-Repository (https://get.enginsight.com).
3.5 Navigiere nun mit folgendem Befehl zum Enginsight Installationsverzeichnis:
cd /opt/enginsight/enterprise
3.6 Führe das Enginsight Setup-Skript für den Applikationsserver mit folgendem Befehl erneut aus und bestätige alle Abfragen, damit die Änderungen wirksam werden:
sudo ./setup.sh
4. Update durchführen
Führe nun das Update der Enginsight Plattform und aller ihrer Komponenten durch.
4.1 Navigiere dazu mit folgendem Befehl wieder zum Enginsight Installationsverzeichnis:
cd /opt/enginsight/enterprise
4.2 Führe das Enginsight Update-Skript mit folgendem Befehl aus:
sudo ./update.sh