Übertragen Sie Windows-Ereignisprotokolle an Linux, um die Protokollverwaltung zu zentralisieren Die Einstellung zu diesem Zeitpunkt.
Führen Sie ein Tool namens "NXlog" in Windows ein. Klicken Sie hier, um ↓ herunterzuladen https://nxlog.co/products/nxlog-community-edition/download
Wählen Sie die Windows-Version aus, platzieren Sie sie auf dem Server und installieren Sie sie.
Es gibt keine besonderen Auswahlmöglichkeiten und die Installation wird sofort abgeschlossen.
Wenn Sie fertig sind, bearbeiten Sie die Konfigurationsdatei.
C:\Program Files (x86)\nxlog\conf\nxlog.conf
Ändern Sie den Dateiinhalt wie folgt.
nxlog.conf
## This is a sample configuration file. See the nxlog reference manual about the
## configuration options. It should be installed locally and is also available
## online at http://nxlog.org/docs/
## Please set the ROOT to the folder your nxlog was installed into,
## otherwise it will not start.
#define ROOT C:\Program Files\nxlog
define ROOT C:\Program Files (x86)\nxlog
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
LogFile %ROOT%\data\nxlog.log
<Extension syslog>
Module xm_syslog
</Extension>
<Extension charconv>
Module xm_charconv
AutodetectCharsets shift_jis, utf-8
</Extension>
<Extension json>
Module xm_json
</Extension>
<Input in>
Module im_msvistalog
Query <QueryList>\
<Query Id="0">\
<Select Path="Application">*[System[(Level=1 or Level=2 or Level=3)]]</Select>\
<Select Path="System">*[System[(Level=1 or Level=2 or Level=3)]]</Select>\
<Select Path="Security">*[System[(Level=1 or Level=2 or Level=3)]]</Select>\
</Query>\
</QueryList>
Exec $raw_event = "json=" + to_json(); $SyslogFacilityValue = 21;
Exec convert_fields("utf-8", "utf-8");
</Input>
<Processor t>
Module pm_transformer
OutputFormat syslog_bsd
Exec $Message=(": "+$raw_event);
</Processor>
<Output out>
Module om_udp
Host xxx.xxx.xxx.xxx
Port 514
</Output>
<Route r>
Path in => t => out
</Route>
Geben Sie unter "Ausgabe ausgeben" die IP-Adresse und den Port des Servers an, den Sie senden möchten.
"QueryList"
von
Select Path="Application"
Select Path="System"
Select Path="Security"
Sie können jedes Ereignisprotokoll ausgeben und Level mit angeben.
Wenn Sie es ausschalten, wird das Ereignis nicht ausgespuckt. Das Niveau liegt unter dem Referenzwert
↓
Kritisch = Stufe 1
Fehler = Level2
Warnung = Stufe 3
Information = Level4
Als nächstes wird der Linux-Server für das Übertragungsziel festgelegt. Fügen Sie Folgendes zu rsyslog.conf </ font> hinzu
rsyslog.conf
## Remote host logging
:fromhost-ip, isequal, "xxx.xxx.xxx.xxx" /var/log/xxxx.log
& stop
Geben Sie die IP-Adresse des NXLOG-Servers und das Ausgabeziel des Protokolls an.
Sie können diese Datei auch bearbeiten, um die Funktion einzugrenzen oder das Ausgabeformat zu ändern.
Schließlich
Starten Sie den nxlog-Dienst unter Windows neu
Starten Sie rsyslog unter Linux neu
systemctl restart rsyslog
Die angegebene Protokolldatei sollte erstellt worden sein und der Inhalt des Ereignisprotokolls sollte ausgespuckt worden sein. So was
Jul 3 11:00:29 dango NRPE_NT[0]: [err] : json={"EventTime":"2018-07-03 11:00:28","Hostname":"dango","Keywords":36028797018963968,"EventType":"ERROR","SeverityValue":4,"Severity":"ERROR","EventID":3,"SourceName":"NRPE_NT","Task":4,"RecordNumber":8618,"ProcessID":0,"ThreadID":0,"Channel":"Application","ERROR_EVT_UNRESOLVED":true,"EventReceivedTime":"2018-07-03 11:00:29","SourceModuleName":"in","SourceModuleType":"im_msvistalo
Es ist schwer zu sehen, aber Sie können es beheben, indem Sie rsyslog.conf optimieren.
Das ist es
Recommended Posts