[LINUX] Importieren Sie audit.log in Splunk und überprüfen Sie das Verhalten beim ersten Start von Splunk.

Einführung

Wenn Sie Splunk Enterprise zum ersten Mal starten, werden verschiedene Verarbeitungsnachrichten auf dem Bildschirm ausgegeben.

Beispiel für die erste Startnachricht (zum Vergrößern anklicken)
# /opt/splunk/bin/splunk start --accept-license --seed-passwd password

This appears to be your first time running this version of Splunk.
Copying '/opt/splunk/etc/openldap/ldap.conf.default' to '/opt/splunk/etc/openldap/ldap.conf'.
Generating RSA private key, 2048 bit long modulus
.................................+++++
...........................+++++
e is 65537 (0x10001)
writing RSA key

Generating RSA private key, 2048 bit long modulus
.............................................................................+++++
.................................................................+++++
e is 65537 (0x10001)
writing RSA key

Moving '/opt/splunk/share/splunk/search_mrsparkle/modules.new' to '/opt/splunk/share/splunk/search_mrsparkle/modules'.

Splunk> See your world.  Maybe wish you hadn't.

Checking prerequisites...
	Checking http port [8000]: open
	Checking mgmt port [8089]: open
	Checking appserver port [127.0.0.1:8065]: open
	Checking kvstore port [8191]: open
	Checking configuration... Done.
		Creating: /opt/splunk/var/lib/splunk
		Creating: /opt/splunk/var/run/splunk
		Creating: /opt/splunk/var/run/splunk/appserver/i18n
		Creating: /opt/splunk/var/run/splunk/appserver/modules/static/css
		Creating: /opt/splunk/var/run/splunk/upload
		Creating: /opt/splunk/var/run/splunk/search_telemetry
		Creating: /opt/splunk/var/spool/splunk
		Creating: /opt/splunk/var/spool/dirmoncache
		Creating: /opt/splunk/var/lib/splunk/authDb
		Creating: /opt/splunk/var/lib/splunk/hashDb
New certs have been generated in '/opt/splunk/etc/auth'.
	Checking critical directories...	Done
	Checking indexes...
		Validated: _audit _internal _introspection _metrics _telemetry _thefishbucket history main summary
	Done
	Checking filesystem compatibility...  Done
	Checking conf files for problems...
	Done
	Checking default conf files for edits...
	Validating installed files against hashes from '/opt/splunk/splunk-8.0.2.1-f002026bad55-linux-2.6-x86_64-manifest'
	All installed files intact.
	Done
All preliminary checks passed.

Starting splunk server daemon (splunkd)...  
Generating a RSA private key
...............................................+++++
...............+++++
writing new private key to 'privKeySecure.pem'
-----
Signature ok
subject=/CN=aio/O=SplunkUser
Getting CA Private Key
writing RSA key
Done
 [  OK  ]

Waiting for web server at http://127.0.0.1:8000 to be available.... Done


If you get stuck, we're here to help.  
Look for answers here: http://docs.splunk.com

The Splunk web interface is at http://aio:8000

Dem Inhalt der Nachricht nach zu urteilen, scheint es, dass Sie eine Datei erstellen. Was wird dieses Mal beim ersten Start erstellt? Ich habe das mit Splunk untersucht.

Umwelt zum Zeitpunkt der Umfrage

OS: Amazon Linux 2 (4.14.171-136.231.amzn2.x86_64) Splunk-Version: 8.0.2.1 Splunk-Installationspfad ($ SPLUNK_HOME): / opt / splunk

1. Splunk Enterprise-Installation

Installieren Sie Splunk. Ich werde das detaillierte Verfahren weglassen, aber dieses Mal werde ich es mit der tgz-Datei installieren.

Splunk Enterprise/opt/In Verzeichnis installieren


tar fvxz /tmp/splunk-8.0.2.1-f002026bad55-Linux-x86_64.tgz -C /opt/

2. Überprüfen Sie die Einstellungen für die Protokollausgabe

Ändern Sie die Betriebssystemeinstellungen, um die Änderungsinformationen des Splunk-Einstellungsverzeichnisses in das Überwachungsprotokoll auszugeben.

Richten Sie das Überwachungsprotokoll ein(Vorübergehende Änderung)


#Geprüftes Verzeichnis hinzufügen
auditctl -w /opt/splunk/etc/ -p wa -k etc_changes
#Bestätigen Sie, dass die Einstellungen hinzugefügt wurden
auditctl -l
#OK, wenn das Befehlsergebnis ausgegeben wird."No rules"Wird angezeigt, überprüfen Sie bitte, ob die Einstellungen korrekt sind.

3. Starten Sie Splunk Enterprise

Starten Sie Splunk Enterprise.

Starten Sie Splunk Enterprise


/opt/splunk/bin/splunk start --accept-license --seed-passwd password

4. Überprüfen Sie die Ausgabe des Überwachungsprotokolls

Überprüfen Sie, ob die in Schritt 2 festgelegten Änderungsinformationen des Überwachungszielverzeichnisses in das Protokoll ausgegeben werden.

Überprüfen Sie, ob die Änderungsinformationen des überwachten Verzeichnisses in das Protokoll ausgegeben werden


grep /opt/splunk/etc/ /var/log/audit/audit.log | tail
#Es ist in Ordnung, wenn ein oder mehrere Protokolle ausgegeben werden.

5. Erfassen Sie das Überwachungsprotokoll

Stellen Sie das Überwachungsprotokoll so ein, dass es dauerhaft in Splunk enthalten ist.

Stellen Sie ein, dass Überwachungsprotokolle dauerhaft erfasst werden


/opt/splunk/bin/splunk add monitor /var/log/audit/audit.log -auth admin:password

6. Bestätigung des Importergebnisses

Nach Abschluss der obigen Einstellungen sollte das Überwachungsprotokoll in Splunk importiert worden sein. Melden Sie sich daher bei Splunk Enterprise an und überprüfen Sie das Importergebnis mit der Suchanweisung.

Durchsuchen Sie die Überwachungsprotokolle


sourcetype="linux_audit" type="PATH" nametype!="PARENT"
| rex field=name "^(?<directory>.*\/)?(?<file>.*)"
| eval directory=if(len(mode)==6,directory+file,directory),file=if(len(mode)==6,"",file)
| table _time,msg,nametype,mode,directory,file
| sort msg

Erklärung des Suchtextes

Zeile 1 ... Suche nach ** Ereignissen im Überwachungsprotokoll, wobei das Typfeld PATH und das Feld nametype nicht PARENT ** ist. Zeilen 2 und 3 ... Der Verzeichnisname und der Dateiname werden in den neuen Feldern (Verzeichnis, Datei) aus den im Namensfeld aufgezeichneten Pfadinformationen festgelegt. 4. Zeile: Nur die zur Visualisierung erforderlichen Felder werden formatiert und in den Suchergebnissen angezeigt. 5. Zeile: Da der Zeitstempel und die ID-Informationen im Nachrichtenfeld aufgezeichnet werden, werden sie sortiert und in der Reihenfolge des Nachrichtenfelds angezeigt.

7. Ergebnis

Hier sind einige Auszüge der Ergebnisse der Suche in dieser Umgebung.

Klicken Sie hier, um es zu erweitern und anzuzeigen. ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/170600/82fcdf32-b546-403d-597d-60a2544235c8.png) ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/170600/9fce088f-930a-1539-eabb-1e0326bb064f.png) ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/170600/1c040d09-7e04-7ccc-93b7-178f2b2733e4.png) ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/170600/e5f649dd-6183-aabf-d278-d7ec10c424fa.png)

8. Analyse

Nach der Analyse der Suchergebnisse wurde festgestellt, dass Splunk den Datei- / Verzeichniserstellungsprozess im Verzeichnis / opt / splunk / etc / in der folgenden Reihenfolge ausführt, wenn es zum ersten Mal gestartet wird.

Seq Datei Bemerkungen
1 /opt/splunk/etc/splunk-launch.conf splunk-lanch.conf.Erstellt durch Kopieren von Standard.
2 /opt/splunk/etc/licenses/download-trial/enttrial.lic Testlizenzdatei./opt/splunk/splunk-enttrial.Erstellt durch Kopieren von lic.
3 /opt/splunk/etc/auth/splunk.secret Vertrauliche Informationen, die in der Splunk-Konfigurationsdatei gespeichert sind(Passwort etc.)Verschlüsselung/Schlüsseldatei zur Entschlüsselung.
4 /opt/splunk/etc/system/local/user-seed.conf Erstverwaltungsdatei für Benutzer und Kennwort(Version 7.1 oder später)In der nachfolgenden Verarbeitung/opt/splunk/etc/Es wird gelöscht, sobald das Passwort erstellt wurde.
5 /opt/splunk/etc/system/local/inputs.conf Der Standardwert wird festgelegt, wenn das Hostfeld in den Datenerfassungseinstellungen nicht angegeben ist.
6 /opt/splunk/etc/system/local/server.conf
7 /opt/splunk/etc/system/local/migration.conf
8 /opt/splunk/etc/openldap/ldap.conf ldap.conf.Erstellt durch Kopieren von Standard.
9 /opt/splunk/etc/auth/audit/private.pem
10 /opt/splunk/etc/auth/audit/public.pem
11 /opt/splunk/etc/auth/distServerKeys/private.pem Privater Schlüssel für die verteilte Suchkommunikation.
12 /opt/splunk/etc/auth/distServerKeys/trusted.pem Öffentlicher Schlüssel für die verteilte Suchkommunikation.
13 /opt/splunk/etc/auth/ca.pem Stammzertifizierungsstellenzertifikat. ca..pem.Erstellt durch Kopieren von Standard.
14 /opt/splunk/etc/auth/cacert.pem Stammzertifizierungsstellenzertifikat. cacert.pem.Erstellt durch Kopieren von Standard. Der Inhalt des Zertifikats ist ca..Wie pem, jedoch wird der private Schlüssel mit der Passphrase in die Datei eingefügt.
15 /opt/splunk/etc/myinstall/splunkd.xml
16 /opt/splunk/etc/users/users.ini
17 /opt/splunk/etc/auth/serverkey.pem SplunkInterne KommunikationsverschlüsselungDer private Schlüssel, der zum Erstellen des in verwendeten Serverzertifikats erforderlich ist.Wird beim ersten Startvorgang gelöscht.
18 /opt/splunk/etc/auth/serverreq.pem SplunkInterne KommunikationsverschlüsselungCSR, der die Stammzertifizierungsstelle auffordert, ein Serverzertifikat zu erstellen, in dem verwendet werden soll.Beim ersten Startvorgang gelöscht.
19 /opt/splunk/etc/auth/servercert.pem SplunkInterne KommunikationsverschlüsselungServerzertifikat verwendet in. Ausgestellt von der Stammzertifizierungsstelle von Splunk.Beim ersten Startvorgang gelöscht.
20 /opt/splunk/etc/auth/server.pem SplunkInterne KommunikationsverschlüsselungServerzertifikat verwendet in.**Dieses Serverzertifikat ist ab dem ersten Start 3 Jahre lang gültig, und der CN ist immer auf SplunkServerDefaultCert festgelegt.**Zusätzlich zum Serverzertifikat werden dieser Datei die Informationen zum privaten Serverschlüssel und zum Zertifikat der Stammzertifizierungsstelle hinzugefügt.
21 privKeySecure.pem Splunk**Webbildschirm verschlüsselte Kommunikation(https)**Der private Schlüssel, der zum Erstellen des in verwendeten Serverzertifikats erforderlich ist.Beim ersten Startvorgang gelöscht.
22 req.pem Splunk**Webbildschirm verschlüsselte Kommunikation(https)**CSR, der die Zertifizierungsstelle auffordert, ein Serverzertifikat zu erstellen, in dem verwendet werden soll.Beim ersten Startvorgang gelöscht.
23 /opt/splunk/etc/auth/splunkweb/cert.pem Splunk**Webbildschirm verschlüsselte Kommunikation(https)**Serverzertifikat verwendet in. Ausgestellt von der Stammzertifizierungsstelle von Splunk.Dieses Serverzertifikat ist ab dem ersten Start 3 Jahre lang gültig, und der CN wird auf den Hostnamen des Servers festgelegt.
24 ca.srl Eine Datei mit der Seriennummer des von der Stammzertifizierungsstelle ausgestellten Serverzertifikats.
25 /opt/splunk/etc/auth/splunkweb/privkey.pem Splunk**Webbildschirm verschlüsselte Kommunikation(https)**Der private Schlüssel des in verwendeten Serverzertifikats.
26 /opt/splunk/etc/instance.cfg Splunk eindeutige ID(GUID)Die Datei, in der aufgezeichnet wird.
27 /opt/splunk/etc/passwd Nutzerinformation. Beim ersten Start wird nur der Administratorbenutzer aufgezeichnet.
28 /opt/splunk/etc/apps/learned/metadata/local.meta
29 /opt/splunk/etc/apps/learned/local/props.conf

Beiseite

Der Grund für diese Zeit war zu sehen, "wie das Serverzertifikat, das standardmäßig im verschlüsselten Kommunikationsprozess von Splunk verwendet wird, beim ersten Start von Splunk erstellt wird", aber als Ergebnis andere Einstellungsdateien Ich konnte den Ablauf des Erstellungsprozesses verstehen. Ich möchte die Umfrage auch organisieren und auf dem Standardzertifikat veröffentlichen.

Vielen Dank, dass Sie so weit gelesen haben.

Folge

Ich habe eine Fortsetzung geschrieben. Importieren Sie audit.log in Splunk und überprüfen Sie das Verhalten beim erstmaligen Anmelden bei Splunkweb

Referenz

6.6. Über die AUDIT-Protokolldatei Dies ist das offizielle Redhat-Handbuch, enthält jedoch die Spezifikationsinformationen des Audit-Protokolls. Obwohl Amazon Linux2 auf Rhel7 basiert, scheint das Protokollformat (Feld) leicht angepasst zu sein.

Manipulation von Linux-Dateien an auditd erkennen

What is the splunk.secret file, and is it possible to change it? Was ist splunk.secret? Dies ist die Qualitätssicherung der offiziellen Community-Website von Spunk zu dieser Frage.

Recommended Posts

Importieren Sie audit.log in Splunk und überprüfen Sie das Verhalten beim ersten Start von Splunk.
Impressionen und Memorandum bei der ersten Arbeit mit VScode
Importieren Sie sie vorerst in jupyter
Was ich zum ersten Mal in Python bekommen habe
Erster Kaggle (Kaggle ①)
Kaguru zum ersten Mal
Was ist ein Hund? Django - Versuchen Sie zum ersten Mal, Form zu verwenden. POST-Übertragungsvolumen
Überprüfen Sie das Verhalten beim Zuweisen von Python
Verhalten, wenn 0, 1, False, True für die Diktiertaste verwendet wird
Unterschiede, die C # -Ingenieure beim ersten Erlernen von Python verspürten
Siehe Python zum ersten Mal
Starten Sie Django zum ersten Mal
Ein nützlicher Hinweis, wenn Sie Python nach langer Zeit verwenden
Ich habe zum ersten Mal Tensorflow ausprobiert
MongoDB mit Python zum ersten Mal
Versuchen wir zum ersten Mal Linux
[Für Anfänger] Unerwartetes Verhalten, wenn beim Festlegen des Pfads in Python "\" enthalten ist
Lassen Sie uns eine einfache Vorlage anzeigen, die ideal für den ersten Django ist
So verwenden Sie MkDocs zum ersten Mal
Ich habe zum ersten Mal versucht, Python zu programmieren.
Ich habe Mind Meld zum ersten Mal ausprobiert
virtualenv Das ist vorerst alles!
Versuchen Sie zum ersten Mal, in Qiita zu posten
Überprüfen Sie die Verarbeitungszeit und die Anzahl der Aufrufe für jeden Prozess mit Python (cProfile).
Ich habe Python zum ersten Mal auf dem Mac ausprobiert.
[Python] Misst und zeigt die für die Verarbeitung erforderliche Zeit an
Registrieren Sie zum ersten Mal eine Aufgabe in cron
Ich habe Python zum ersten Mal mit Heroku ausprobiert
Zum ersten Mal habe ich etwas über Unix (Linux) gelernt.
Einbetten in datetime, wenn nur die Zeit bekannt ist
Erstellen einer Liste, wenn die Nomenklatur für einen bestimmten Zeitraum gültig ist
AI Gaming Ich habe es zum ersten Mal versucht
Überprüfen Sie den Zeichencode für alle Dateien im Verzeichnis Python und geben Sie ihn aus