Ab Elasticsearch 6.8 dürfen kostenlose Benutzer die Sicherheitsfunktionen von X-Pack verwenden. Zuvor war die Installation von es ein nackter Prozess. Als Nächstes zeichnen wir auf, wie die Sicherheitsauthentifizierung konfiguriert wird. Um den physischen Installationsprozess zu vereinfachen, verwenden wir Docker, um unseren Dienst zu installieren. Einige grundlegende Konfigurationen es müssen einige Parameter von Linux geändert werden. Setzen Sie sudo vim /etc/sysctl.conf vm.max_map_count=262144 Kein Neustart, sondern sofortige Wirkung des aktuellen Befehls sysctl -w vm.max_map_count=262144 Die Daten- und Protokollverzeichnisse von es müssen für 1000 Benutzer autorisiert werden. Wir gehen davon aus, dass drei es-Cluster installiert sind und erstellen zuerst die entsprechenden Datenspeicherdateien. mkdir -p es01/data mkdir -p es01/logs mkdir -p es02/data mkdir -p es02/logs mkdir -p es03/data mkdir -p es03/logs ## die Benutzer-ID von es ist 1000, also autorisieren wir sie vorübergehend für alle sudo chmod 777 es* -R Informationen zu Versionen und Docker-Images Elasticsearch verfügt über mehrere Lizenzen, von denen Open Source und Basic kostenlos sind. Sicherheitsfunktionen wurden erst ab Version 6.8 in die Basic-Lizenz integriert. Das entsprechende Docker-Image von Basic ist Docker-Pull docker.elastic.co/elasticsearch/elasticsearch:7.6.2 Gleichzeitig wird Dockerhub mit Elasticsearch synchronisiert. Wir können Start Die Installationsdateien befinden sich alle auf GitHub: https://github.com/Ryan-Miao/docker-china-source/tree/master/docker-elasticsearch Erstellen Sie zunächst docker-compose.yml Version: '2.2' Leistungen: es01: Bild: elasticsearch:7.6.2 Containername: es01 Umfeld: - Knotenname=es01 – cluster.name=es-docker-cluster – discovery.seed_hosts=es02,es03 – cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true – „ES_JAVA_OPTS=-Xms512m -Xmx512m“ uGrenzwerte: Speichersperre: weich: -1 schwer: -1 Bände: - ./es01/data:/usr/share/elasticsearch/data - ./es01/logs:/usr/share/elasticsearch/logs - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 Häfen: 9200:9200 Netzwerke: - elastisch es02: Bild: elasticsearch:7.6.2 Containername: es02 Umfeld: - Knotenname=es02 – cluster.name=es-docker-cluster – discovery.seed_hosts=es01,es03 – cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true – „ES_JAVA_OPTS=-Xms512m -Xmx512m“ uGrenzwerte: Speichersperre: weich: -1 schwer: -1 Bände: - ./es02/data:/usr/share/elasticsearch/data - ./es02/logs:/usr/share/elasticsearch/logs - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 Häfen: 9201:9200 Netzwerke: - elastisch es03: Bild: elasticsearch:7.6.2 Containername: es03 Umfeld: - Knotenname=es03 – cluster.name=es-docker-cluster – discovery.seed_hosts=es01,es02 – cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true – „ES_JAVA_OPTS=-Xms512m -Xmx512m“ uGrenzwerte: Speichersperre: weich: -1 schwer: -1 Bände: - ./es03/data:/usr/share/elasticsearch/data - ./es03/logs:/usr/share/elasticsearch/logs - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 Häfen: - 9202:9200 Netzwerke: - elastisch kib01: hängt ab von: -es01 Bild: kibana:7.6.2 Containername: kib01 Häfen: -5601:5601 Umfeld: ELASTICSEARCH_URL: http://es01:9200 ELASTICSEARCH_HOSTS: http://es01:9200 Bände: - ./kibana.yml:/usr/share/kibana/config/kibana.yml Netzwerke: - elastisch Netzwerke: elastisch: Treiber: Brücke Über elasticsearch.yml Der Inhalt ist wie folgt Netzwerkhost: 0.0.0.0 xpack.security.enabled: wahr xpack.security.transport.ssl.enabled: wahr xpack.security.transport.ssl.keystore.type: PKCS12 xpack.security.transport.ssl.verification_mode: Zertifikat xpack.security.transport.ssl.keystore.path: elastische-Zertifikate.p12 xpack.security.transport.ssl.truststore.path: elastische-Zertifikate.p12 xpack.security.transport.ssl.truststore.type: PKCS12 xpack.security.audit.enabled: wahr
Über das Zertifikat elastic-certificates.p12 es bietet ein Tool zum Generieren von Zertifikaten Führen Sie zuerst die es-Instanz aus sudo docker run -dit --name=es elasticsearch:7.6.2 /bin/bash Geben Sie die Instanz ein sudo docker exec -it es /bin/bash CA generieren: elastic-stack-ca.p12 [root@25dee1848942 elasticsearch]# ./bin/elasticsearch-certutil ca Dieses Tool unterstützt Sie bei der Generierung von X.509-Zertifikaten und Zertifikats Signierungsanforderungen zur Verwendung mit SSL/TLS im Elastic-Stack. Der Modus „ca“ generiert eine neue „Zertifizierungsstelle“ Dadurch werden ein neues X.509-Zertifikat und ein privater Schlüssel erstellt, die verwendet werden können um das Zertifikat zu signieren, wenn im „Cert“-Modus gearbeitet wird. Verwenden Sie die Option „ca-dn“, wenn Sie den „Distinguished Name“ konfigurieren möchten. der Zertifizierungsstelle Standardmäßig erzeugt der Modus „ca“ eine einzelne PKCS#12-Ausgabedatei, die Folgendes enthält: * Das CA-Zertifikat * Der private Schlüssel der Zertifizierungsstelle Wenn Sie Zertifikate im PEM-Format generieren möchten (die Option -pem), wird die Ausgabe eine ZIP-Datei sein, die einzelne Dateien für das CA-Zertifikat und den privaten Schlüssel enthält Bitte geben Sie die gewünschte Ausgabedatei [elastic-stack-ca.p12] ein: Geben Sie das Passwort für elastic-stack-ca.p12 ein: Zertifikat neu generieren: elastic-certificates.p12 [root@25dee1848942 elasticsearch]# ./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 Dieses Tool unterstützt Sie bei der Generierung von X.509-Zertifikaten und Zertifikats Signierungsanforderungen zur Verwendung mit SSL/TLS im Elastic-Stack. Der Modus „Cert“ generiert X.509-Zertifikate und private Schlüssel. Wir müssen die generierten elastic-certificates.p12 verwenden. Kopieren Sie das Zertifikat und drücken Sie Strg+D, um den Container zu verlassen. sudo docker cp es:/usr/share/elasticsearch/elastic-certificates.p12 . # Schließen Sie diesen Container sudo docker kill es sudo docker rm es Damit ist das Zertifikat erteilt. Passwort generieren Wir müssen zuerst den es-Cluster starten und darin ein Passwort generieren. sudo docker-compose up Geben Sie dann eine der sudo docker exec -it es01 /bin/bash Verwenden Sie die automatische Generierung von Passwörtern und [root@cfeeab4bb0eb elasticsearch]# ./bin/elasticsearch-setup-passwords -h Legt die Passwörter für reservierte Benutzer fest Befehle -------- auto - Verwendet zufällig generierte Passwörter interaktiv - Verwendet vom Benutzer eingegebene Passwörter Nicht optionale Argumente: Befehl Option Beschreibung ------ ----------- -E <KeyValuePair> Eine Einstellung konfigurieren -h, --help Hilfe anzeigen -s, --silent Minimale Ausgabe anzeigen -v, --verbose Ausführliche Ausgabe anzeigen [root@cfeeab4bb0eb elasticsearch]# ./bin/elasticsearch-setup-passwords auto Die Einrichtung der Passwörter für die reservierten Benutzer elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user wird gestartet. Die Passwörter werden zufällig generiert und auf der Konsole ausgegeben. Bitte bestätigen Sie, dass Sie fortfahren möchten [j/N]j Passwort für Benutzer apm_system geändert PASSWORT apm_system = YxVzeT9B2jEDUjYp66Ws Passwort für Benutzer kibana geändert PASSWORT kibana = 8NnThbj0N02iDaTGhidU Passwort für Benutzer logstash_system geändert PASSWORT logstash_system = 9nIDGe7KSV8SQidSk8Dj Passwort für Benutzer beats_system geändert PASSWORT beats_system = qeuVaf1VEALpJHfEUOjJ Passwort für Benutzer remote_monitoring_user geändert PASSWORT remote_monitoring_user = DtZCrCkVTZsinRn3tW3D Passwort für Benutzer elastic geändert PASSWORT elastic = q5f2qNfUJQyvZPIz57MZ Passwort verwenden Der Browser greift auf localhost:9200/9201/9202 zu und muss das Konto eingeben Geben Sie einfach das entsprechende Elastic/Passwort ein Navigieren Sie zu localhost:5601 Passwort vergessen Was passiert, wenn Sie das Passwort nach der Generierung vergessen? Sie können sich am Computer anmelden, um es zu ändern. Betreten Sie die ES-Maschine sudo docker exec -it es01 /bin/bash Erstellen Sie einen temporären Superuser RyanMiao ./bin/elasticsearch-users useradd ryan -r superuser Neues Passwort eingeben: FEHLER: Ungültiges Passwort...Passwörter müssen mindestens [6] Zeichen lang sein [root@cfeeab4bb0eb elasticsearch]# ./bin/elasticsearch-users useradd ryan -r superuser Neues Passwort eingeben: Neues Passwort wiederholen: Verwenden Sie diesen Benutzer, um das Kennwort von Elastic zu ändern: curl -XPUT -u ryan:ryan123 http://localhost:9200/_xpack/security/user/elastic/_password -H "Inhaltstyp: application/json" -d ' { "Passwort": "q5f2qNfUJQyvZPIz57MZ" }' siehe http://codingfundas.com/setting-up-elasticsearch-6-8-with-kibana-and-x-pack-security-enabled/index.html Dies ist das Ende dieses Artikels über die Installation des Elasticsearch 7.6-Clusters mit Docker und das Festlegen von Kennwörtern. Weitere Informationen zur Installation des Elasticsearch-Clusters mit Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung zur Verwendung des Arguments-Objekts in JavaScript
>>: Probleme bei der Verwendung mehrerer einfacher und dreifacher Anführungszeichen in MySQL concat
Beschreibung der Installationsumgebung •Systemver...
Inhaltsverzeichnis Vorwort Text 1. Panel 2. Huaro...
In der Welt der Webentwicklung sind Frameworks wei...
1. Experimentelle Umgebung Seriennummer Projekt S...
Wenn Sie MySQL 5.7 verwenden, werden Sie feststel...
In diesem Artikel wird der spezifische JavaScript...
【SQL】 Zusammenfassung der SQL-Paging-Abfragen Wäh...
Sublimieren Sublime Text ist ein Code-Editor (Sub...
Als ich den Aufsatz zum ersten Mal verwendete, füh...
HTML5 ist die nächste Version des HTML-Standards....
Inhaltsverzeichnis 1. Tabellenmethode umbenennen ...
Im vorherigen Artikel wurde der Installationsproz...
Vorwort Ab MySQL-Version 3.23.44 unterstützen Inn...
Inhaltsverzeichnis 1. Installation 2. Ins Projekt...
Nginx kann seine Reverse-Proxy-Funktion zum Imple...