NginxWebUI Nginx-Konfigurationsvisualisierung generiert mit einem Klick eine nginx.conf-Konfigurationsdatei

Nginx-Konfiguration nginxWebUI ist ein visuelles grafisches Verwaltungstool für die Nginx-Konfiguration, mit dem Sie mithilfe von Webseiten schnell verschiedene Funktionen von Nginx konfigurieren können, darunter HTTP-Protokollweiterleitung, TCP-Protokollweiterleitung, Reverse-Proxy, Lastausgleich, statischer HTML-Server, automatische Beantragung, Erneuerung und Konfiguration von SSL-Zertifikaten usw. Nach der Konfiguration können Sie mit einem Klick die Datei nginx.conf generieren.

Visuelle Generierung von Konfigurationsdateien für die Nginx-Konfiguration, grafisches Verwaltungskonfigurationstool nginxWebUI

Es handelt sich um eine visuelle grafische VerwaltungSie können die Webseite verwenden, um die verschiedenen Funktionen von Nginx schnell zu konfigurieren, einschließlich HTTP-Protokollweiterleitung, TCP-Protokollweiterleitung, Reverse-Proxy, Lastausgleich, statischem HTML-Server, automatischer Beantragung, Erneuerung, Konfiguration von SSL-Zertifikaten usw. Nach der Konfiguration können Sie es mit einem Klick generierenDatei, und steuern Sie gleichzeitig nginx, um diese Datei zum Starten und Neuladen zu verwenden, wodurch die grafische Steuerungsschleife von nginx abgeschlossen wird.

nginxWebUI kann auch mehrere nginx-Servercluster verwalten. Sie können jederzeit mit einem Klick zum entsprechenden Server wechseln, um nginx zu konfigurieren. Sie können die Konfiguration eines Servers auch mit einem Klick mit anderen Servern synchronisieren, um die Clusterverwaltung zu vereinfachen.

Nginx selbst verfügt über komplexe Funktionen. NginxWebUI kann nicht alle Funktionen von Nginx abdecken, kann aber die Konfiguration der täglichen Funktionsnutzung von Nginx abdecken. Für Nginx-Konfigurationselemente, die nicht von der Plattform abgedeckt werden, können Sie benutzerdefinierte Parametervorlagen verwenden, um eindeutige Konfigurationsparameter in der Konfigurationsdatei zu generieren.

Nach der Bereitstellung dieses Projekts müssen Sie nicht mehr im Internet nach Konfigurationscodes suchen, um nginx zu konfigurieren, und Sie müssen keine SSL-Zertifikate mehr manuell beantragen und konfigurieren. Sie müssen dieses Projekt lediglich hinzufügen, löschen, ändern und einchecken, um nginx einfach zu konfigurieren und zu starten.

Github-Projektwebsite:https://github.com/cym1102/nginxWebUI

Offizielle Website von nginxWebUI:https://www.nginxwebui.cn/

Was ist Nginx

Nginx ist ein asynchroner Framework-Webserver, der auch als Reverse-Proxy, Load Balancer und HTTP-Cache eingesetzt werden kann. Die Software wurde vom russischen Programmierer Igor Sysoev entwickelt und 2004 erstmals veröffentlicht. 2011 wurde ein gleichnamiges Unternehmen gegründet, um Support-Dienstleistungen anzubieten. Am 11. März 2019 wurde Nginx von F5 Networks für 670 Millionen US-Dollar übernommen. Nginx ist kostenlose Open-Source-Software und steht unter einer BSD-ähnlichen Lizenz.

Offizielle Nginx-Website:https://nginx.org/

Nginx-Konfiguration nginxWebUI Technische Dokumentation

Bei diesem Projekt handelt es sich um ein auf Solon basierendes Websystem, und die Datenbank verwendet H2, sodass auf dem Server keine Datenbank installiert werden muss.

Dieses System beantragt Zertifikate über Let’s Encrypt und nutzt das Skript acme.sh zur automatisierten Beantragung und Erneuerung. Zertifikate mit aktivierter Erneuerung werden täglich um 2 Uhr morgens erneuert. Es werden nur Zertifikate verlängert, die älter als 60 Tage sind. Zertifikate können nur unter Linux ausgestellt werden.

Beim Hinzufügen der TCP/IP-Weiterleitungskonfiguration müssen einige niedrigere Versionen von nginx möglicherweise neu kompiliert werden. Das Stream-Modul kann durch Hinzufügen des Parameters --with-stream installiert werden. In Ubuntu 18.04 verfügt nginx jedoch bereits über ein Stream-Modul in der offiziellen Softwarebibliothek und muss nicht neu kompiliert werden. Wenn das System mit TCP-Weiterleitungselementen konfiguriert ist, werden die Konfigurationselemente von ngx_stream_module.so automatisch eingeführt. Ist es nicht aktiviert, wird es nicht eingeführt, um die ngnix-Konfigurationsdatei maximal zu optimieren.

jar-Installationsanweisungen

Installieren Sie die Java-Laufzeitumgebung und nginx am Beispiel des Ubuntu-Betriebssystems:

Ubuntu

apt update apt install openjdk-11-jdk apt install nginx

Centos

Yum install java-11-openjdk Yum install nginx

Windows

Laden Sie das JDK-Installationspaket herunter: https://www.oracle.com/java/technologies/downloads/
Laden Sie nginx herunter: http://nginx.org/en/download.html

  • Konfigurieren der JAVA-Laufzeitumgebung
  • JAVA_HOME: JDK-Installationsverzeichnis
  • Pfad: JDK-Installationsverzeichnis\bin
  • Starten Sie Ihren Computer neu

Laden Sie die neueste Version des nginxWebUI-Release-Pakets JAR herunter

Linux

mkdir /home/nginxWebUI/ wget -O /home/nginxWebUI/nginxWebUI.jar http://file.nginxwebui.cn/nginxWebUI-3.4.4.jar

Windows

Laden Sie es direkt über Ihren Browser herunter http://file.nginxwebui.cn/nginxWebUI-3.4.4.jar Nach D:/home/nginxWebUI/nginxWebUI.jar

Wenn es eine neue Version gibt, müssen Sie nur die Version im Pfad ändern

Starten Sie das nginxWebUI-Programm

Linux

nohup java -jar -Dfile.encoding=UTF-8 /home/nginxWebUI/nginxWebUI.jar --server.port=8080 --project.home=/home/nginxWebUI/ > /dev/null &

Windows

java -jar -Dfile.encoding=UTF-8 D:/home/nginxWebUI/nginxWebUI.jar --server.port=8080 --project.home=D:/home/nginxWebUI/

Parameterbeschreibung

--server.port belegt den Port und beginnt standardmäßig mit Port 8080
--project.home Projektkonfigurationsdateiverzeichnis, in dem Datenbankdateien, Zertifikatsdateien, Protokolle usw. gespeichert werden. Der Standardwert ist /home/nginxWebUI/
--spring.database.type=mysql Andere Datenbanken verwenden. Wenn dieses Feld nicht ausgefüllt ist, wird die lokale h2-Datenbank verwendet. MySQL ist optional.
--spring.datasource.url=jdbc:mysql://ip:port/nginxwebui-Datenbank-URL
--spring.datasource.username=Root-Datenbankbenutzer
--spring.datasource.password=Datenbankkennwort
Beachten Sie, dass der Linux-Befehl mit einem &-Zeichen endet, was darauf hinweist, dass das Projekt im Hintergrund ausgeführt wird

Docker-Installationsanweisungen

Dieses Projekt hat ein Docker-Image erstellt, das x86_64/arm64/arm v7-Plattformen unterstützt und nginx und nginxWebUI für die integrierte Verwaltung und den Betrieb von nginx enthält.

Installieren Sie die Docker-Containerumgebung:

Ubuntu

apt install docker.io

Centos

yum installiere Docker

Ziehen Sie das Bild

Docker Pull Cym1102/nginxwebui:neueste

Starten Sie den Container

docker run -itd \ -v /home/nginxWebUI:/home/nginxWebUI \ -e BOOT_OPTIONS="--server.port=8080" \ --privileged=true \ --net=host \ cym1102/nginxwebui:latest

Hinweis: Verwenden Sie beim Starten des Containers den Parameter --net=host, um den lokalen Port direkt zuzuordnen. Da der interne Nginx jeden beliebigen Port verwenden kann, müssen alle lokalen Ports zugeordnet werden.
Der Container muss den Pfad /home/nginxWebUI:/home/nginxWebUI abbilden. In diesem Pfad werden alle Projektdatendateien gespeichert, einschließlich Daten, Nginx-Konfigurationsdateien, Protokolle, Zertifikate usw. Dieses Verzeichnis stellt sicher, dass Projektdaten beim Upgrade des Images nicht verloren gehen. Bitte achten Sie auf die Sicherung.
Mit dem Parameter -e BOOT_OPTIONS können die Java-Startparameter ausgefüllt werden. Mit diesem Parameter können Sie die Portnummer ändern. --server.port belegt den Port. Wird dieser Parameter nicht ausgefüllt, wird standardmäßig mit Port 8080 gestartet.
Protokolle werden standardmäßig in /home/nginxWebUI/log/nginxWebUI.log gespeichert
Außerdem: Bei der Verwendung von Docker-Compose sieht die Konfigurationsdatei wie folgt aus:

Version: „3.2“ Dienste: nginxWebUi-Server: Image: cym1102/nginxwebui:latest Volumes: - Typ: Bind-Quelle: „/home/nginxWebUI“ Ziel: „/home/nginxWebUI“ Umgebung: BOOT_OPTIONS: „--server.port=8080“ Privileg: true Netzwerkmodus: „Host“

Kompilierungshinweise

Kompilieren und Verpacken mit Maven

mvn clean-Paket

Erstellen eines Images mit Docker

docker build -t nginxwebui:latest.

Start hinzufügen

Dienstkonfiguration bearbeiten

vim /etc/systemd/system/nginxwebui.service
[Einheit] Beschreibung=NginxWebUI Nach=syslog.target Nach=network.target [Dienst] Typ=einfach Benutzer=root Gruppe=root Arbeitsverzeichnis=/home/nginxWebUI ExecStart=/usr/bin/java -jar /home/nginxWebUI/nginxWebUI.jar Neustart=immer [Installieren] Gesucht von=multi-user.target

Dann ausführen

systemctl daemon-reload systemctl enable nginxwebui.service systemctl start nginxwebui.service

Nginx-Konfiguration nginxwebui-Nutzungsanweisungen

Videoanleitung: https://www.bilibili.com/video/BV18A4y1D7GZ
Demo-Adresse: http://test.nginxwebui.cn:7070
Benutzername: admin
Passwort: admin

Offen http://xxx.xxx.xxx.xxx:8080 Zur Startseite

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-1

Anmeldeseite, wenn Sie sie zum ersten Mal öffnen, werden Sie aufgefordert, das Administratorkonto zu initialisieren

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-2

Nach dem Aufrufen des Systems können Sie Administratorkonten in der Administratorverwaltung hinzufügen und ändern

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-3

In der HTTP-Parameterkonfiguration können Sie das HTTP-Projekt von nginx konfigurieren und HTTP-Weiterleitungen durchführen. Mehrere gängige Konfigurationen sind standardmäßig vorhanden, weitere erforderliche Konfigurationen können beliebig hinzugefügt, gelöscht, geändert und überprüft werden. Sie können die Protokollverfolgung aktivieren und Protokolldateien generieren.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-4

In der TCP-Parameterkonfiguration können Sie die Stream-Projektparameter von nginx konfigurieren, in den meisten Fällen ist dies jedoch nicht erforderlich.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-5

Im Reverse-Proxy können Sie den Reverse-Proxy von nginx konfigurieren, d. h. die Serverfunktion, die SSL-Funktion aktivieren, die PEM-Datei und die Schlüsseldatei direkt von der Webseite hochladen oder das im System angewendete Zertifikat verwenden, die http-zu-https-Funktion direkt aktivieren und das http2-Protokoll aktivieren

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-6

Im Load Balancing können Sie den Load Balancing von Nginx, also die Upstream-Funktion, konfigurieren. Im Reverse-Proxy-Management können Sie das Proxy-Ziel als konfigurierten Load Balancing auswählen.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-7

Beim Hochladen statischer HTML-Dateien können Sie das komprimierte HTML-Paket direkt in den angegebenen Pfad hochladen. Nach dem Hochladen können Sie es direkt im Reverse-Proxy verwenden, wodurch der Schritt des Hochladens von HTML-Dateien unter Linux entfällt.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-8

In der Zertifikatsverwaltung können Sie Zertifikate hinzufügen, ausstellen und erneuern. Nach Aktivierung der geplanten Erneuerung erneuert das System die bald ablaufenden Zertifikate automatisch. Hinweis: Das Zertifikat wird im DNS-Modus von acme.sh ausgestellt, der mit Alibaba Clouds aliKey und aliSecret verwendet werden muss. Bitte beantragen Sie zuerst aliKey und aliSecret.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert mit einem Klick die Konfigurationsdatei nginx.conf-9

Verwaltung von Sicherungsdateien. Hier können Sie die Version des Sicherungsverlaufs von nginx.cnf sehen. Wenn bei nginx ein Fehler auftritt, können Sie ein Rollback auf eine bestimmte Verlaufsversion durchführen.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-10

Abschließend wird die Conf-Datei generiert, die manuell weiter bearbeitet werden kann. Nach der Bestätigung der korrekten Änderung kann die lokale Conf-Datei überschrieben und die Validierung sowie der Neustart durchgeführt werden. Sie können entweder eine einzelne nginx.conf-Datei generieren oder jede Konfigurationsdatei nach Domänennamen unter conf.d trennen.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-11

Remote-Serververwaltung: Wenn mehrere Nginx-Server vorhanden sind, können Sie nginxWebUI auf allen bereitstellen, sich dann bei einem davon anmelden, die IP-Adresse sowie den Benutzernamen und das Kennwort anderer Server in der Remote-Verwaltung hinzufügen und alle Nginx-Server auf einer Maschine verwalten.

Bietet eine Ein-Klick-Synchronisierungsfunktion, mit der die Datenkonfigurations- und Zertifikatsdateien eines Servers mit anderen Servern synchronisiert werden können

Schnittstellenentwicklung

Dieses System bietet einen HTTP-Schnittstellenaufruf. Öffnen Sie http://xxx.xxx.xxx.xxx:8080/doc.html, um die Smart-Doc-Schnittstellenseite anzuzeigen.

Der Schnittstellenaufruf muss im HTTP-Anforderungsheader ein Token hinzufügen. Um das Token zu erhalten, müssen Sie zunächst die Berechtigung zum Aufrufen der Benutzeroberfläche in der Administratorverwaltung öffnen und dann die Schnittstelle zum Abrufen des Tokens mit dem Benutzernamen und dem Kennwort aufrufen, um das Token abzurufen.

NginxWebUI Nginx-Konfigurationsvisualisierung generiert nginx.conf-Konfigurationsdatei mit einem Klick-12

Passwort wiederherstellen

Wenn Sie Ihr Anmeldekennwort vergessen oder die Zwei-Schritt-Verifizierung nicht speichern, können Sie dem folgenden Tutorial folgen, um Ihr Kennwort abzurufen und die Zwei-Schritt-Verifizierung zu deaktivieren.

1. Stoppen Sie nginxWebUI

pkill java

2. Führen Sie nginxWebUI.jar mit dem Parameter zum Abrufen des Kennworts aus

java -jar nginxWebUI.jar --project.home=/home/nginxWebUI/ --project.findPass=true

--project.home ist das Verzeichnis, in dem sich die Projektdateien befinden

--project.findPass, ob Benutzername und Passwort gedruckt werden sollen

Nach erfolgreichem Vorgang können Sie alle Benutzernamen und Passwörter ausdrucken und die Zwei-Schritt-Verifizierung deaktivieren

 

1/5 (2 Stimmen)

Ein Kommentar

Das ist eine gute Idee

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * Mark