Windows Server 2019
Einleitung
Folgen Sie diesen Anweisungen, um Relution 5 auf Windows Server 2019 einzurichten. Diese Anleitung verwendet MariaDB als Datenspeicher und NginX als Reverse Proxy.
Für zusätzliche Sicherheit und Performance empfehlen wir, Relution, MariaDB und NginX auf getrennten Rechnern zu installieren. Die Installation auf einer einzelnen Maschine oder auf einer oder mehreren virtuellen Maschinen ist ebenfalls möglich.
Diese Anleitung behandelt die Installation und Konfiguration einer einfachen Relution-Instanz.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass:
- Die Maschinen sich mit dem Internet verbinden können
- Sie administrative Rechte haben
- Sie haben ein gültiges SSL-Zertifikat für Ihren externen Hostnamen haben
Selbst signierte Zertifikate funktionieren nicht, da mobile Geräte ihnen nicht vertrauen. Sie können Ihr Root-Zertifikat manuell auf einem Gerät installieren, damit es Ihrem Zertifikat vertraut. Diese Vorgehensweise wird nicht empfohlen.
Zertifikate von Let’sEncrypt → sind getestet und funktionieren. Beachten Sie, dass ältere Geräte diesen Zertifikaten möglicherweise nicht vertrauen, da Let’s Encrypt erst vor kurzem als Zertifizierungsstelle (CA) eingerichtet wurden.
MariaDB installation
Gehen Sie zu MariaDB → und laden Sie eine LTS Version minimum 10.11 in 64-Bit-Version für Windows herunter.
Folgen Sie den Bildschirmanweisungen für die Installation.
MariaDB konfiguration
Aktualisieren Sie die Konfiguration von MariaDB mit den von Relution benötigten Optionen:
- Gehen Sie zu
"%ProgramFiles%\MariaDB 10.11\data"
- Öffnen Sie “my.ini” in einem Texteditor als Administrator (z.B. Notepad)
- Suchen Sie den Abschnitt “[mysqld]”
Fügen sie diese Einstellungen in den Bereich “[mysqld]” hinzu:
collation-server=utf8mb4_general_ci
character-set-server=utf8mb4
max_allowed_packet=1G
innodb_file_per_table=1
## No longer needed/supported for MariaDB >= 10.2.2
## If you have an older version please update or enable this
#innodb_large_prefix=on
#innodb_file_format=Barracuda
Der Abschnitt “[mysqld]” kann bereits eine “Zeichensatz-Server”-Einstellung enthalten. Entfernen Sie diese Einstellung und ersetzen Sie sie durch die obige.
Wenn Sie von einer älteren Version von MariaDB aktualisieren, haben Sie möglicherweise noch
die Einstellungen innodb_large_prefix
und innodb_file_format
in Ihrer
my.ini-Datei. Diese Einstellungen werden nicht mehr benötigt und ihr Vorhandensein kann
den MariaDB-Dienst daran hindern, korrekt zu starten.
Starten Sie den MariaDB-Dienst neu, indem Sie entweder den Dienste-Manager
(services.msc
) oder über die Eingabeaufforderung. Beachten Sie, dass der Dienst aus Gründen der Abwärtskompatibilität den Namen
“MySQL” hat.
net stop MySQL
net start MySQL
Installation überprüfen
Sie sollten nun in der Lage sein, sich mit dieser MariaDB-Instanz zu verbinden. Sie können die die Verknüpfung “MySQL Client (MariaDB 10.11 (x64))”, die das Installationsprogramm in Ihrem Startmenü angelegt haben sollte. Nachdem Sie eine Verbindung hergestellt haben, sollten Sie eine eine ähnliche Ausgabe wie diese sehen:
Enter password: ********
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 10.11.5-MariaDB mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> exit
Bye
Alternativ können Sie auch den HeidiSQL
-Client verwenden, der ein optionaler
Teil des Installationsprogramms ist, oder die MySQL Workbench
um sich mit der Instanz zu verbinden.
Datenbank anlegen
Als nächstes erstellen Sie die Datenbank relution
und einen zugehörigen
Datenbank-Benutzer. Dieser Benutzer wird vom Relution-Dienst verwendet, um sich
mit der Datenbank verbinden.
Stellen Sie eine Verbindung zur Datenbank mit einem SQL-Client her. Die Verwendung einer GUI-Anwendung wie
HeidiSQL
oder MySQL Workbench
wird für diese Aufgabe empfohlen. Führen Sie die folgenden SQL-Anweisungen aus:
CREATE DATABASE relution CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
CREATE USER 'relution'@'localhost' IDENTIFIED BY '$PASSWORD';
GRANT ALL PRIVILEGES ON relution.* TO 'relution'@'localhost' IDENTIFIED BY '$PASSWORD';
CREATE USER 'relution'@'%' IDENTIFIED BY '$PASSWORD';
GRANT ALL PRIVILEGES ON relution.* TO 'relution'@'%' IDENTIFIED BY '$PASSWORD';
FLUSH PRIVILEGES;
Ersetzen Sie $PASSWORD durch ein sicheres Zufallspasswort. Wir empfehlen die Verwendung eines Passwort-Managers, um ein langes Zufallspasswort zu erzeugen (z.B. 32 Zeichen oder mehr). Dieses Passwort wird vom Relution-Dienst verwendet und muss nicht von einem Administrator manuell eingegeben werden. Daher können Sie auf jeden Fall ein langes, sicheres Kennwort verwenden.
Dadurch wird eine neue Datenbank namens relution
und ein neuer Datenbankbenutzer
mit dem Namen relution
, der volle Rechte für diese Datenbank hat, erzeugt. Dieser
Benutzer wird vom Relution-Dienst für den Zugriff auf die Datenbank verwendet. Wenn
administrativer Zugriff auf die Datenbank zu Wartungszwecken benötigt wird,
wird empfohlen, einen separaten Datenbankbenutzer für diesen Zweck anzulegen.
Stellen Sie sicher, dass Sie das Passwort speichern. Es wird später für die Konfiguration der Datenbankverbindung von Relution benötigt.
Vergewissern Sie sich, dass Sie sich als dieser Benutzer mit der Datenbank verbinden können. Öffnen Sie die Verknüpfung “Command Prompt (MariaDB 10.6 (x64))” aus dem Startmenü und geben Sie den folgenden Befehl ein:
mysql -u relution -p relution
Geben Sie das Passwort ein, wenn Sie dazu aufgefordert werden. Sie sollten die MariaDB-Eingabeaufforderung wie
oben sehen. Geben Sie exit
ein und drücken Sie die Eingabetaste um die Sitzung zu beenden.
Firewall Konfiguration
Wenn Sie Relution auf einem anderen Rechner installieren, müssen Sie den Port 3306
auf diesem Rechner öffnen, damit Relution mit MariaDB kommunizieren kann. Wenn Relution
auf demselben Rechner installiert werden soll, können Sie diese Schritte überspringen.
- Öffnen Sie
Windows Defender Firewall mit erweiterter Sicherheit
- Wählen Sie
Eingehende Regeln
- Klicken Sie auf
Neue Regel...
auf der rechten Seite - Wählen Sie
Programm
- Klicken Sie auf
Weiter
- Wählen Sie
Dieser Programmpfad
- Nutzen Sie
Durchsuchen...
Um die Exe-Datei des MariaDB Diensts zu wählen (C:\Program Files\MariaDB 10.6\bin\mysqld.exe
) * Klicken Sie aufWeiter
* Wählen SieVerbindung zulassen
* Klicken Sie aufWeiter
* Aktivieren SieDomäne
und/oderPrivat
- abhängig von Ihrer Infrastruktur * Klicken Sie aufWeiter
* geben Sie der Regel einen Namen * Klicken Sie aufBeenden
Relution Installation
Java Runtime installieren
Laden Sie eine unterstützte Java-Version herunter und installieren Sie sie. Wenn das Installationsprogramm fragt
ob JAVA_HOME
konfiguriert werden soll, wählen Sie Ja
.
Wir empfehlen derzeit die Verwendung von OpenJDK 17 (JRE). Die meisten Anbieter behandeln diese Version als Long Term Support (LTS) Release. Lesen Sie unbedingt unseren change log → für aktuelle Informationen
Es gibt mehrere Anbieter von OpenJDK, darunter Eclipse Temurin, Oracle, RedHat und andere. Für Windows empfehlen wir Eclipse Temurin →.
Umgebung konfigurieren
Die folgenden Schritte sind nur notwendig, wenn das Installationsprogramm nicht das JAVA_HOME` gesetzt hat. Das AdoptOpenJDK-Installationsprogramm kann dies für Sie tun. Wenn Sie diese Option aktiviert haben, können Sie diese Schritte überspringen.
- Klicken Sie auf
Start
und suchen Sie nachUmgebungsvariablen
- Öffnen Sie
Systemumgebungsvariablen bearbeiten
- Klicken Sie auf den
Erweitert
Tab - Wählen Sie
Umgebungsvariablen
- Klicken Sie auf
Neu...
in denSystemvariablen
- Geben Sie
JAVA_HOME
als Namen der Variable ein - Geben Sie das Installationsverzeichnis des JRE/JDK als Wert für die Variable ein
- Klicken Sie auf
OK
Prüfen ob JAVA_HOME gesetzt ist
Wenn Sie ein Eingabeaufforderungsfenster schon vorher geöffnet hatten, müssen Sie es schließen bevor die Änderungen wirksam werden. Öffnen Sie eine neue Windows-Eingabeaufforderung und geben Sie den folgenden Befehl ein, gefolgt von der Eingabetaste.
echo %JAVA_HOME%
Sie sollten den Wert sehen, den Sie oben in den Umgebungsvariablen eingegeben haben. Andernfalls überprüfen Sie bitte Ihre Einstellungen.
Relution installieren
Laden Sie das aktuelle Relution Paket → herunter. Klicken Sie mich rechts auf die Datei und wählen Sie Alle extrahieren...
.
Beachten Sie, dass
Windows standardmäßig ein neues Verzeichnis für die extrahierten Dateien anlegt, also
relution
sich innerhalb des Verzeichnisses relution-package
befindet.
Basiskonfiguration von Relution
Öffnen Sie einen Texteditor (z.B. Notepad) als Administrator und fügen Sie folgenden Inhalt dort ein:
relution:
system:
admin:
password: %SYSTEM_ADMIN_PASSWORD%
email: %SYSTEM_ADMIN_EMAIL%
server:
externalURL: %EXT_HOSTNAME_URL%
database:
type: mysql
url: jdbc:mariadb://<db-hostname>/relution?useServerPrepStmts=true
username: relution
password: %MYSQL_PASSWORD%
mongodb:
enabled: false
Stellen Sie sicher, dass Sie die Datei bearbeiten und an Ihre Umgebung anpassen. Die folgenden Parameter müssen ersetzt werden:
Platzhalter | Beschreibung |
---|---|
%EXT_HOSTNAME_URL% | Die externe Adresse des Relution-Servers, z.B.https://mdm.example.com |
%MYSQL_PASSWORD% | Das Passwort des Relution-Datenbank-Benutzers |
%SYSTEM_ADMIN_PASSWORD% | Das initiale Passwort des Systemadministrator. Ändern Sie dies nach dem ersten Login und entfernen Sie danach diese Zeile. |
%SYSTEM_ADMIN_EMAIL% | Die Mailadresse des Systemadministrators |
Erwägen Sie die Verwendung eines Kennwortgenerators zur Erstellung des ersten Kennworts für Ihr Verwaltungskonto. Wir empfehlen, das Kennwort zu ändern, nachdem Sie sich zum ersten Mal angemeldet haben.
Speichern Sie die Datei als application.yml
im Relution Installationsverzeichnis (z.B. "%ProgramFiles%\relution\application.yml"
).
Installation prüfen
Um zu überprüfen, ob die Einrichtung bis zu diesem Punkt korrekt ist, starten Sie Relution im Vordergrund. Öffnen Sie ein Konsolenfenster als Administrator und führen Sie die folgenden Befehle aus:
cd "%ProgramFiles%\relution"
windows-bin\relution-foreground.bat
Warten Sie, bis der Relution gestartet ist. Sobald die Terminalausgabe aufgehört hat, sich zu aktualisieren, sollten Sie in der Lage sein, eine Verbindung zu Relution mit einem Browser zu verbinden:
http://localhost:8080
Wenn alles funktioniert, sollten Sie das Relution-Portal sehen und sich mit dem
administrativen Konto anmelden können, das in der Datei
application.yml
definiert haben. Aus Sicherheitsgründen sollten Sie das
Passwort des Administrators nach der Anmeldung ändern. Erwägen Sie aus Sicherheitsgründen das Entfernen der Organisation und der Administratorkonfiguration aus der
application.yml
.
Wenn Sie Fehler erhalten, überprüfen Sie, ob Sie alle oben genannten Schritte durchgeführt haben. Verwenden Sie Strg+C", um Relution anzuhalten, und warten Sie, bis der Relution heruntergefahren ist. Wenn Relution nicht beendet wird, verwenden Sie erneut die Tastenkombination “Strg+C”, um das Beenden des Dienstes zu erzwingen.
Relution als Dienst einrichten
Installieren Sie Relution als Windows-Dienst, mit dem Batch-Script install_service.bat
. Öffnen Sie als Administrator ein Konsolenfenster und führen Sie die folgenden Befehle aus:
cd "%ProgramFiles%\relution"
windows-bin\install_service.bat
Der Dienst sollte nach der Installation automatisch gestartet werden.
Andernfalls können Sie den Dienstmanager verwenden oder net start relution
.
In der Eingabeaufforderung eingeben, um den Dienst zu starten.
Firewall konfigurieren
Wenn Sie NginX auf einem anderen Rechner installieren, müssen Sie den Port 8080
öffnen, damit NginX mit Relution kommunizieren kann. Wenn Relution auf dem gleichen Rechner installiert wird, können Sie diese Schritte überspringen.
Öffnen Sie
Windows Defender Firewall mit erweiterter Sicherheit
Klicken Sie auf
eingehende Regeln
Wählen Sie
Neue Regel...
im AktionsmenüWählen Sie
Programm
Klicken Sie auf
Weiter
Wählen Sie bei
Dieser Programmpfad
das
Durchsuchen...
und wählen Sie die Service Datei von Relution(
C:\Program Files\relution\windows-bin\nssm.exe
) * Klickken Sie aufWeiter
* Wählen SieVerbindung zulassen
* Klicken Sie aufWeiter
* Wählen SieDomäne
und/oderPrivat
, abhängig von Ihrer Infrastruktur * Klicken Sie aufWeiter
* geben Sie der Regel einen Namen * Klicken Sie aufFertig stellen
Nginx Installation
Vorbereitung
Sie haben ein gültiges SSL-Zertifikat und einen Zertifikatsschlüssel von Ihrem SSL-Anbieter (Certificate Authority, CA) erhalten. Wenn Sie OCSP Stapling verwenden wollen, sollten Sie auch eine Datei für die Zertifikatskette haben.
OCSP stapling →
Kopieren Sie diese Dateien auf den Server, auf dem Sie nginx einrichten werden. Verschieben Sie diese Dateien in geeignete Verzeichnisse und sichern Sie sie nach Bedarf.
Der private Schlüssel darf nur für den Administrator lesbar sein. Achten Sie darauf, diese Datei sicher aufzubewahren. Jeder, der Zugang zu diesem Schlüssel hat, kann Daten in Ihrem Namen signieren und an Sie gesendete private Informationen entschlüsseln.
Wenn Sie Let’s Encrypt verwenden, lesen Sie bitte ACME Client Implementations für mögliche Clients, die für Windows verfügbar sind. Der offizielle Certbot ist nur für UNIX-ähnliche Betriebssysteme verfügbar.
ACME Client Implementations →
Certbot →
nginx installieren
Laden Sie die neueste stabile Version von nginx für Windows → in Ihr Download-Verzeichnis.
Klicken Sie mit der rechten Maustaste auf die Datei nginx-x.xx.zip
und klicken Sie auf Alles extrahieren...
.
Verschieben Sie das extrahierte Verzeichnis nginx-x.xx
nach %ProgramFiles%
und benennen Sie es um in
es in nginx
um.
move "%HOMEPATH%\Downloads\nginx-1.14.0\nginx-1.14.0" "%ProgramFiles%\nginx"
Anpassen des Quellverzeichnisses nach Bedarf.
Standardmäßig erstellt Windows ein neues Verzeichnis für die extrahierten Dateien, so dass
das eigentliche nginx-x.xx
-Verzeichnis sich innerhalb eines anderen nginx-x.xx
Verzeichnis befinden kann. Stellen Sie sicher, dass Sie das Verzeichnis, das die Datei nginx.exe
enthält, verschieben.
nginx für Relution konfigurieren
Kopieren Sie Ihr SSL-Zertifikat und Ihren privaten Schlüssel nach
%ProgramFiles%\nginx\server.pem
und %ProgramFiles%\nginx\server.key
.
Kopieren Sie %ProgramFiles%\relution\proxy\nginx_windows_sample.conf
nach
%ProgramFiles%\nginx\conf\nginx.conf
(überschreibt ggf. die vorhandene Datei).
copy "%ProgramFiles%\relution\proxy\nginx_windows_sample.conf" "%ProgramFiles%\nginx\conf\nginx.conf"
Öffnen Sie die Datei in einem Texteditor, der mit Linux-Zeilenenden arbeiten kann
(z. B. Notepad++) und passen Sie die Datei nach Bedarf an Ihre Umgebung an. Wenn
Sie Relution auf einem anderen Server installiert haben, stellen Sie sicher, dass Sie die
IP-Adresse in proxy_pass http://127.0.0.1:8080;
entsprechend anpassen.
Überprüfen Sie Ihre nginx-Konfiguration mit dem folgenden Befehl:
"%ProgramFiles%\nginx\nginx.exe" -t
Sie sollten die Meldungen syntax is okay
und test is successful
erhalten.
Wenn Sie Fehler erhalten, überprüfen Sie Ihre nginx-Konfiguration auf Tippfehler usw., wie in der
wie in der Fehlermeldung angegeben.
nginx als Windows-Dienst installieren
Kopieren Sie nssm.exe
und install_service.bat
aus dem Proxy-Verzeichnis von Relution in das nginx-Installationsverzeichnis
cd "%ProgramFiles%\nginx"
kopieren Sie "%ProgramFiles%\relution\proxy\nssm.exe" .
Kopieren Sie "%ProgramFiles%\relution\proxy\install_service.bat" .
Führen Sie das Batch-Skript install_service.bat
als Administrator aus, um
nginx als einen Windows-Dienst zu installieren.
"%ProgramFiles%\nginx\install_service.bat"
Firewall
Öffnen Sie die Ports 80 und 443 in der Firewall, um den Zugriff auf HTTP und HTTPS von der Außenwelt zu ermöglichen.
- Öffnen Sie
Windows Firewall mit erweiterter Sicherheit
- Navigieren Sie zu
Eingehende Regeln
- Klicken Sie im Bereich
Aktionen
aufNeue Regel...
- Wählen Sie
Programm
- Klicken Sie auf
Weiter
- Wählen Sie
Dieser Programmpfad
- Verwenden Sie
Durchsuchen...
, um die ausführbare Datei des Relution-Dienstes auszuwählenC:\Programme\nginx\nginx.exe
. Klicken Sie aufWeiter
- Wählen Sie
Verbindung zulassen
. Klicken Sie aufWeiter
- Wählen Sie
Öffentlich
. Klicken Sie aufWeiter
- Geben Sie einen Namen für die Regel ein und klicken Sie auf
Fertigstellen