
Einführung
Wir werden den Flottenserver so konfigurieren, dass er #logstash als Ausgabe verwendet.
Diese Dokumentation setzt voraus, dass Sie Elasticsearch und Kibana bereits eingerichtet haben. Wenn nicht, können Sie hier klicken für Öffentlich signierte Zertifikate Setup. Wenn Sie verwenden möchten Selbstsignierte Zertifikate, hier klicken Wird noch bekannt gegeben.
Diese Dokumentation setzt voraus, dass Sie sich frühere Videos zu Elastic Agents, Agent Policies und Fleet Server angesehen haben.
Anforderungen
- Eine neue Instanz einer Linux-Maschine wie Ubuntu 20.04, die als Server fungiert
- Ausgabezuweisung pro Richtlinie
Logstash-Ausgabeserver [05:40]
Öffnen Sie das Terminal des Elasticsearch-Servers. Erstellen Sie eine Datei mit dem folgenden Befehl:
cd /usr/share/elasticsearch/bin
vi make-certs.sh
und fügen Sie den folgenden Befehl hinzu, ersetzen Sie die DNS Variable mit dem Serverdomänennamen:
./elasticsearch-certutil cert \
--name logstash \
--ca-cert /etc/elasticsearch/certs/ca/ca.crt \
--ca-key /etc/elasticsearch/certs/ca/ca.key \
--dns <your.host.name.here> \
--pem
Speichern Sie die Datei und führen Sie den folgenden Befehl aus:
chmod 755 make-certs.sh
./make-certs.sh
SSL-Zertifikat für Logstash generieren
und drücken Sie die Eingabetaste, wenn Sie zur Eingabe der gewünschten Ausgabe aufgefordert werden. Gehen Sie nun in das Verzeichnis, in dem das Zertifikat komprimiert wurde, und entpacken Sie es:
cd ..
unzip certificate-bundle.zip
Zertifikat für Logstash entpacken
Gehen Sie zum Logstash-Server-Terminal und führen Sie die folgenden Befehle aus:
mkdir -p /etc/certs/logstash
cd /etc/certs/logstash/
Kopieren Sie dann den Inhalt vom Elasticsearch-Server mit dem folgenden Befehl:
scp root@<IP ADDRESS OR SERVER DNS>:/usr/share/elasticsearch/logstash/* ./
unten ist ein Beispielbefehl:
scp root@es.evermight.net:/usr/share/elasticsearch/logstash/* ./
Kopieren Sie dann auch die Zertifizierungsstelle auf den Logstash-Server:
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Führen Sie dann den folgenden Befehl aus, um den Logstash-Schlüssel in pkcs8 zu konvertieren:
openssl pkcs8 -inform PEM -in logstash.key -topk8 -nocrypt -outform PEM -out logstash.pkcs8.key
Lassen Sie uns nun Logstash auf dem Logstash-Server installieren:
apt-get update && apt dist-upgrade -y && apt-get install vim curl gnupg gpg;
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic-keyring.gpg;
sudo apt-get install apt-transport-https;
echo "deb [signed-by=/usr/share/keyrings/elastic-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list;
sudo apt-get update && sudo apt-get install logstash
Öffnen Sie eine Datei zur Konfiguration
vi fleet-output.conf
und fügen Sie den folgenden Inhalt in die Datei ein:
input {
elastic_agent {
port => 5044
ssl_enabled => true
ssl_certificate_authorities => ["/etc/certs/ca/ca.crt"]
ssl_certificate => "/etc/certs/logstash/logstash.crt"
ssl_key => "/etc/certs/logstash/logstash.pkcs8.key"
ssl_client_authentication => "required"
}
}
output {
file {
path => "fleet-output.txt"
}
}
und speichern. Führen Sie nun den folgenden Befehl aus:
/usr/share/logstash/bin/logstash -f /root/fleet-output.conf
Lassen Sie uns nun eine Pipeline-Konfiguration für Logstash erstellen:
mkdir config;
cd config/;
vi pipelines.yml
Und fügen Sie den folgenden Inhalt ein:
- pipeline.id: elastic-agent-pipeline
path.config: "/root/fleet-output.conf"
und speichern. Jetzt erneut ausführen
cd ~;
/usr/share/logstash/bin/logstash
Testlizenz aktivieren [19:40]
Melden Sie sich in Ihrem Browser bei Kibana an. Gehen Sie zu Stack-Management > Lizenzverwaltung, und klicken Sie auf Starten Sie eine 30-tägige Testversion.
30 Tage kostenlos testen
und es sollte einen Erfolg wie diesen anzeigen:
30 Tage kostenlose Testversion Erfolgreich aktiviert
Fleet Server: Wichtige Hinweise [21:00]
Wir werden zwei Ausgaben für Fleet Server konfigurieren, und zwar:
- Elasticsearch-Ausgabe
- Logstash-Ausgabe
Fleet Server: Elasticsearch-Ausgabe [25:00]
Gehe zu Fleet > settings, und klicken Sie auf das Stiftsymbol zum Bearbeiten. Siehe das Bild unten.
Fleet-Server-Ausgabe bearbeiten
Gehen Sie nun zum Elasticsearch-Server und führen Sie den folgenden Befehl aus, um den Fingerabdruck des Zertifikats abzurufen.
cd /etc/elasticsearch/certs/ca
openssl x509 -fingerprint -sha256 -noout -in ca.crt | awk -F"=" {' print $2 '} | sed s/://g
Erstellen Sie ein Skript.
ca.sh
und fügen Sie den folgenden Inhalt hinzu
echo 'ssl:';
echo ' certificate_authorities:';
echo ' - |';
cat ca.crt | sed 's/^/ /'
und speichern Sie es. Führen Sie nun die Datei aus
chmod 755 ca.sh
./ca.sh
Es sollte ähnlich wie der Screenshot unten aussehen;
Certificate in YML style
Kopieren Sie die Ausgaben und fügen Sie sie in Ihr Kibana auf der Erweiterter YML-Konfigurationsbereich
Es sollte ungefähr wie der Screenshot unten aussehen:
Fleet Server-Konfiguration
Klicken Sie dann auf Einstellungen speichern und anwenden, und klicken Sie dann auf Speichern und bereitstellen.
Flottenserver: Logstash-Ausgabe [27:43]
Klicken Sie auf Add Output im Flotte > Agent, um die Ausgabe für Logstash hinzuzufügen.
Geben Sie einen Namen wie logstash, und wählen Sie für den Typ logstash, geben Sie die IP-Adresse oder den DNS des Logstash-Servers ein, z. B.lg.evermight.net:5044
, für die Server-SSL-Zertifizierungsstellen einfügen in ca.crt
Dateiinhalte beim Ausdrucken und Sie können einen Befehl wie
cat ca.crt
Erstellen Sie auf Ihrem Elastcsearch-Server-Terminal eine Datei und befolgen Sie die folgenden Schritte, um das Client-SSL-Zertifikat zu erhalten:
cd /usr/share/elasticsearch/bin
vi client-cert.sh
und fügen Sie den folgenden Inhalt ein:
./elasticsearch-certutil cert \
--name client \
--ca-cert /etc/elasticsearch/ca/ca.crt \
--ca-key /etc/elasticsearch/ca/ca.key \
--pem
und führen Sie den folgenden Befehl aus
chmod 755 client-cert.sh
Wenn Sie dazu aufgefordert werden, geben Sie ihm den Namen client.zip
Gehen Sie nun in das Verzeichnis, in dem das Zertifikat komprimiert wurde, und entpacken Sie es:
cd ..
unzip client.zip
Gehen Sie nun in das entpackte Verzeichnis und kopieren Sie den Inhalt der client.crt
Datei:
cd client
cat client.crt
und fügen Sie es in das Client-SSL-Zertifikat Abschnitt. Für die Client-SSL-Zertifikatschlüssel, kopieren Sie den Inhalt der client.key
und fügen Sie es ein.
cat client.key
Then click on Einstellungen speichern und anwendenDie beiden gespeicherten Ausgaben sehen ähnlich aus wie im folgenden Screenshot:
Fleet-Server-Ausgaben
Fleet Server: Installieren [32:01]
Gehen Sie zum Flottenserver-Terminal und führen Sie den folgenden Befehl aus:
apt-get update && apt dist-upgrade -y && apt-get install -y vim curl gnupg gpg;
und erstellen Sie einige Verzeichnisse:
cd /etc/;
mkdir certs;
cd certs/;
mkdir ca;
mkdir fl.evermight.net;
cd ca
Führen Sie nun diesen Befehl auf dem Fleet-Server-Terminal aus, um die Zertifikate vom Elastic-Server auf den Fleet-Server zu kopieren
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Gehen Sie nun zurück zum Elastic-Server und führen Sie die folgenden Befehle aus:
cd ~
vi fleet-cert.sh
Fügen Sie den folgenden Inhalt in die Datei ein
mkdir /root.ft.evermight.net/
/usr/share/elasticsearch/bin/elasicsearch-certutil cert \
--out /root/ft.evermight.net/fleet.zip \
--name fleet \
--ca-cert /etc/elasticsearch/certs/ca/ca.crt \
--ca-key /etc/elasticsearch/certs/ca/ca.key \
--dns ft.evermight.net \
--pem
und speichern Sie die Datei. Führen Sie nun die folgenden Befehle aus:
chmod +x fleet-cert.sh;
./fleet-cert.sh
Gehen Sie nun in das Verzeichnis, in dem das Zertifikat komprimiert wurde, und entpacken Sie es:
cd ft.evermight.net/;
unzip fleet.zip;
Gehen Sie nun zurück zum Flottenserver-Terminal und führen Sie den folgenden Befehl aus:
mv fl.evermight.net ft.evermight.net;
cd ft.evermight.net
Führen Sie nun diesen Befehl auf dem Fleet-Server-Terminal aus, um die Zertifikate vom Elastic-Server auf den Fleet-Server zu kopieren
scp root@es.evermight.net:/root/ft.evermight.net/fleet/* ./
Kehren Sie nun zu Ihrem Kibana zurück und erstellen Sie die Flottenserverrichtlinie. Klicken Sie auf Flottenserver hinzufügen wie im folgenden Screenshot gezeigt:
Einen Flottenserver hinzufügen
Gehe zu Fortschrittlich, und klicken Sie auf Richtlinie erstellen wie im Bild unten gezeigt:
Flottenserverrichtlinie erstellen
Für die Auswählen eines Bereitstellungsmodus für die Sicherheit, klicken Sie auf production.
Für die Fügen Sie Ihren Fleet Server-Host hinzu, geben Sie im Abschnitt „Name“ Folgendes ein:fleet, und im URL-Abschnitt,https://ft.evermight.net:8220
.
Then click on Host hinzufügen. Klicken Sie dann auf Generieren eines Service-Tokens. Kopieren Sie die Befehle auf der Installieren Sie Fleet Server auf einem zentralen Host Abschnitt:
Installieren Sie Fleet Server auf einem zentralen Host-Befehl
und erstellen Sie auf dem Flottenserver-Terminal eine Datei:
cd ~
vi install.sh
und fügen Sie den kopierten Inhalt ein und nehmen Sie die entsprechenden Änderungen vor, wie im folgenden Screenshot gezeigt:
Bearbeiteter Befehl „Fleet Server auf einem zentralen Host installieren“
Ändern Sie dann die Berechtigung der Datei und führen Sie sie aus.
chmod +x install.sh
./install.sh
Klicken Sie bei der entsprechenden Aufforderung auf „Ja“.
Gehen Sie jetzt in Kibana zu Flotte > Agent, und aktualisieren Sie die Seite. Sie sollten eine ähnliche Ausgabe wie im folgenden Screenshot sehen:
Elastic Agent erfolgreich installiert
Elastic Agent: Website unter Linux [40:33]
Gehen Sie zum Server-Terminal der Website. Installieren Sie Apache dort:
apt-get install -y apache-2
Rufen Sie die IP-Adresse des Computers in Ihrem Browser auf. Falls Sie sie vergessen haben, können Sie sie mit dem folgenden Befehl abrufen:
ip a
Gehen Sie in Kibana zu Integrationen > Integrationen durchsuchen, und suchen Sie nach Apache, und klicken Sie auf das Ergebnis, wie im folgenden Screenshot gezeigt:
Apache-Suche
Klicken Sie auf Apache-HTTP-Server hinzufügen in der oberen rechten Ecke.
Apache hinzufügen
Auf der Wo kann diese Integration hinzugefügt werden? Abschnitt unter Neue Gastgeber, klicken Sie auf Erweiterte Optionen. Scrollen Sie nach unten zu Ausgabe für Integrationen und ändern von Standard Zu logstash. Scrollen Sie nach unten zu Ausgabe für die Agentenüberwachung und ändern von Standard Zu logstash.
Then click on save and continue, und wählen Sie dann Fügen Sie Elastic Agent zu Ihren Hosts hinzu.
Kopieren Sie dann den Befehl, damit er vom Flottenserver verwaltet wird, wie im folgenden Screenshot gezeigt:
Befehl zur Verwaltung durch die Flotte
Gehen Sie zum Website-Server-Terminal und führen Sie diesen Befehl aus, um die Zertifikate vom Elastic-Server auf den Website-Server zu kopieren
mkdir -p /etc/certs/ca;
cd /etc/certs/ca/;
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Erstellen Sie eine Datei zum Ausführen der Installation
cd ~
vi install-agent.sh
und fügen Sie den kopierten Inhalt ein und nehmen Sie die entsprechenden Änderungen vor, wie im folgenden Screenshot gezeigt:
Bearbeiteter Befehl
Ändern Sie dann die Berechtigung der Datei und führen Sie sie aus.
chmod 755 install-agent.sh
./install-agent.sh
Und geben Sie „Ja“ ein, wenn Sie dazu aufgefordert werden.
Elastic Agent: Ereignisprotokolle unter Windows [47:50]
Öffnen Sie ein Bash-ähnliches Terminal auf dem Windows-Rechner/Server und kopieren Sie die Zertifikatsdatei
mkdir certs
cd certs
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Gehen Sie zur Windows-Suchleiste und suchen Sie nach Ereignisanzeige und führen Sie es als Administrator aus, wie im folgenden Screenshot gezeigt:
Führen Sie die Ereignisanzeige als Administrator aus
Wenn es geöffnet wird, gehen Sie zu Anwendungs- und Dienstprotokolle > Microsoft > WMI-Aktivität > Betriebsbereit.
Gehen Sie in Kibana zu Integrationen > Integrationen durchsuchen, und suchen Sie nach windows, und klicken Sie auf das Ergebnis, wie im folgenden Screenshot gezeigt:
Benutzerdefinierte Suche im Windows-Ereignisprotokoll
Klicken Sie auf Benutzerdefiniertes Windows-Ereignisprotokoll hinzufügen in der oberen rechten Ecke.
Benutzerdefiniertes Windows-Ereignisprotokoll hinzufügen
Gehen Sie zurück zur Ereignisanzeige auf Ihrem Windows-Computer und kopieren Sie die Protokollname wie im Screenshot unten gezeigt, und fügen Sie es in das Benutzerdefinierte Windows-Ereignisprotokolle Abschnitt auf Ihrer Kibana-Seite.
Ereignisanzeige-Protokollnamen kopieren
Auf der Wo kann diese Integration hinzugefügt werden? Abschnitt unter Neue Gastgeber, klicken Sie auf Erweiterte Optionen.
Scrollen Sie nach unten zu Ausgabe für Integrationen und ändern von Standard Zu logstash. Scrollen Sie nach unten zu Ausgabe für die Agentenüberwachung und ändern von Standard Zu logstash.
Then click on save and continue, und wählen Sie dann Fügen Sie Elastic Agent zu Ihren Hosts hinzu.
Kopieren Sie dann den Befehl, damit er vom Flottenserver verwaltet wird, wie im folgenden Screenshot gezeigt:
Befehl für das Windows-Ereignisprotokoll zur Verwaltung durch die Flotte
Gehen Sie zu einem Texteditor auf Ihrem Windows-Computer und bearbeiten Sie den kopierten Befehl wie im folgenden Screenshot gezeigt:
Bearbeiteter Befehl
Öffnen und ausführen Powershell Führen Sie den Befehl als Administrator aus, fügen Sie ihn ein und führen Sie ihn aus. Geben Sie bei der entsprechenden Aufforderung „Ja“ ein.