Dove sono i miei registri sshd?


58

Non riesco a trovare i miei log sshd nei posti standard.

Cosa ho provato:

  • Non in /var/log/auth.log
  • Non in /var/log/secure
  • Un sistema ha cercato 'auth.log'e non ha trovato nulla
  • Ho impostato /etc/ssh/sshd_configutilizzare in modo esplicito SyslogFacility AUTHed LogLevel INFOe sshd rimesso in moto e ancora non riesce a trovare loro.

Sto usando OpenSSH 6.5p1-2 su Arch Linux.

Risposte:


51

Prova questo comando per visualizzare il registro da systemctl:

journalctl -u sshd |tail -100

20
Questo non sembra funzionare, ma journalctl _COMM=sshdfunziona.
wingedsubmariner,

3
Ah, sì - systemctl è completamente coerente e prevedibile come al solito.
g33kz0r,

3
È possibile utilizzare l' -fopzione per seguire il registro:journalctl -fu sshd
bzeaman

wingedsubmariner - So che sono passati quasi 4 anni, ma ... ti ricordi su quale distro facevi in ​​quel momento? Sospetto che il file di unità sulla tua distribuzione sia stato chiamato "openssh" o semplicemente "ssh" anziché "sshd". Il problema con il progetto systemd è che considerano le distribuzioni come i loro utenti e le distribuzioni sono libere di usare qualsiasi nome desiderino per i file di unità (come Debian chiama il webserver di apache apache2mentre RedHat lo chiama httpd).
bobpaul,

26

Un modo migliore per visualizzare l'ultima parte del registro è:

journalctl -u sshd -n 100

L'uso tailsull'output di journalctlpuò essere molto lento. Ci sono voluti 5 minuti su una macchina in cui l'ho provato, mentre il comando sopra riportato ritorna istantaneamente.


3
E non perdi la colorazione delle linee! Dovrebbe essere la soluzione migliore imo
kuzyn il


7

Dovresti essere in grado di filtrare i messaggi sshddall'uso:

journalctl -u ssh

o (a seconda della distribuzione)

journalctl -u sshd

che mostrerà i log in un lessformato di stile (è possibile cercare /, navigare tramite PgUp, PgDown ecc.).

  • -e ti porta alla fine dei registri.
  • -uil parametro filtra attraverso il meta campo _SYSTEMD_UNITche è (almeno su Debian) impostato su ssh.service, quindi sshdnon corrisponderà.
  • -f segue i log in tempo reale
  • -n 100visualizza il numero di righe indicato (utile con -f)

In alternativa puoi utilizzare il filtro dei metacampi:

journalctl _COMM=sshd

È possibile visualizzare l'intero record del journal con tutti i meta-campi esportando in JSON:

journalctl -u ssh -o json-pretty

che ti darebbe qualcosa del tipo:

    ...
    "_PID" : "7373",
    "_COMM" : "sshd",
    "_EXE" : "/usr/sbin/sshd",
    "_SYSTEMD_CGROUP" : "/system.slice/ssh.service",
    "_SYSTEMD_UNIT" : "ssh.service",
    ...

Nel caso ti chiedi come visualizzare solo i messaggi del kernel:

journalctl -k -f

Hai una spiegazione per questa strana sintassi ( journalctl _COMM=sshd)?
Ortomala Lokni,

@OrtomalaLokni -ufiltra attraverso il campo dei metadati _SYSTEMD_UNITsu Debian impostato su ssh.service. Tutti i parametri che iniziano con il trattino basso accedono ai metafiel. Allo stesso modo è possibile filtrare tramite _PIDo _TRANSPORT.
Tombart,

1

Dai un'occhiata alla tua configurazione syslog. Più probalby /etc/syslog.confo /etc/rsyslog.conf dovresti cercare le righe con authad esempio nella mia configurazione:

auth,authpriv.* /var/log/auth.log

*.*;auth,authpriv.none -/var/log/syslog


4
Nessuno di questi file esiste. Credo che quei file siano creati da syslog-ng mentre Arch ha sostituito quello con systemd
HXCaine

In Scientific Linux authpriv. * Punta authpriv.* /var/log/secureall'interno del file /etc/rsyslog.conf
Salem F
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.