
Ich möchte SSH-Sitzungen überwachen, einschließlich Anmelde- und Abmeldeereignissen. Wenn ich journalctl
ohne Flags laufe, sehe ich beide Anmeldeereignisse wie:
Accepted publickey for root from 192.168.1.24 port 56464
und Abmeldeereignisse wie:
Disconnected from user root 192.168.1.24 port 56464
sshd
Wenn ich aber die Ausgabe reduzieren und nur die von mir ausgeführten Ereignisse filtern möchte journalctl -u sshd
, werden mir nur die Ereignisse angezeigt Accepted publickey
, nicht jedoch die Disconnected from user
Ereignisse selbst.
Antwort1
TL;DR: Anstelle von journalctl -u sshd
sollten Sie verwenden journalctl -t sshd
.
Um das herauszufinden, habe ich journalctl -o json-pretty
Anmelde- und Abmeldeereignisse ausgeführt und analysiert. Die Anmeldeereignisse haben "_SYSTEMD_UNIT" : "sshd.service"
in ihrer JSON-Ausgabe , sodass sie angezeigt werden, wenn Sie die Einheit mit angeben -u sshd
. Aber die Abmeldeereignisse haben "_SYSTEMD_UNIT" : "session-27.scope"
, und deshalb werden sie für nicht angezeigt -u sshd
. Natürlich ist die Sitzungsnummer für jede SSH-Sitzung unterschiedlich.
WasIstFür Abmelde- und Anmeldeereignisse gleich ist, was bedeutet, dass wir das Flag (oder die Langform ) "SYSLOG_IDENTIFIER" : "sshd"
verwenden müssen, um die Kennung anzugeben.-t
--identifier
Dies ist auf Fedora und RHEL. Ich habe es noch nicht auf Debian/Ubuntu getestet. Bitte kommentieren Sie, wenn es dort anders ist.
Ich hoffe, das hilft jemandem.