¿Dónde están mis registros sshd?


58

No puedo encontrar mis registros sshd en los lugares estándar.

Lo que probé:

  • No en /var/log/auth.log
  • No en /var/log/secure
  • ¿Un sistema buscó 'auth.log'y no encontró nada?
  • He puesto /etc/ssh/sshd_configa utilizar de forma explícita SyslogFacility AUTHy LogLevel INFOy sshd reinicia y todavía no puede encontrarlos.

Estoy usando OpenSSH 6.5p1-2 en Arch Linux.

Respuestas:


51

Pruebe este comando para ver el registro desde systemctl:

journalctl -u sshd |tail -100

20
Esto no parece funcionar, pero lo journalctl _COMM=sshdhace.
— wingedsubmariner

3
Ah, sí, systemctl es completamente consistente y predecible como de costumbre.
— g33kz0r

3
Puede usar la -fopción para seguir el registro:journalctl -fu sshd
— bzeaman

wingedsubmariner - Sé que han pasado casi 4 años, pero ... ¿recuerdas en qué distribución estabas en ese momento? Sospecho que el archivo de la unidad en su distribución se llamaba "openssh" o simplemente "ssh" en lugar de "sshd". Lo que pasa con el proyecto systemd es que consideran que las distribuciones son sus usuarios, y las distribuciones son libres de usar los nombres que quieran para los archivos de la unidad (como Debian llama al servidor web de Apache apache2mientras RedHat lo llama httpd).
— bobpaul

26

Una mejor manera de ver la última parte del registro es:

journalctl -u sshd -n 100

El uso tailen la salida de journalctlpuede ser muy lento. Me tomó 5 minutos en una máquina donde lo probé, mientras que el comando anterior regresa al instante.


3
¡Y no pierdes el color de la línea! Debería ser la mejor solución imo
— kuzyn


7

Debería poder filtrar los mensajes sshdusando:

journalctl -u ssh

o (según su distribución)

journalctl -u sshd

que mostrará registros en un lessformato de estilo (puede buscar /, navegar a través de PgUp, PgDown, etc.).

  • -e te lleva al final de los registros.
  • -uEl parámetro se filtra a través del metacampo _SYSTEMD_UNITque está (al menos en Debian) configurado ssh.service, por sshdlo que no coincidirá.
  • -f sigue registros en tiempo real
  • -n 100muestra un número dado de líneas (útil con -f)

Alternativamente, puede utilizar el filtrado de metacampos:

journalctl _COMM=sshd

Puede mostrar el registro de diario completo con todos los metacampos exportando a JSON:

journalctl -u ssh -o json-pretty

eso te daría algo como:

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

En caso de que se pregunte cómo mostrar solo los mensajes del núcleo:

journalctl -k -f

¿Tiene una explicación para esta extraña sintaxis ( journalctl _COMM=sshd)?
— Ortomala Lokni

@OrtomalaLokni -ufiltra a través del campo de metadatos _SYSTEMD_UNITque está en Debian configurado en ssh.service. Todos los parámetros que comienzan con guión bajo están accediendo a metafiels. De manera similar, puede filtrar a través de _PIDo _TRANSPORT.
— Tombart

1

Eche un vistazo a su configuración de syslog. La mayoría de probalby /etc/syslog.confo /etc/rsyslog.conf debe buscar líneas con, authpor ejemplo, en mi configuración:

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

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


44
Ninguno de esos archivos existe. Creo que esos archivos son creados por syslog-ng, mientras que Arch lo reemplazó con systemd
— HXCaine

En Scientific Linux authpriv. * Señale authpriv.* /var/log/securedentro del archivo /etc/rsyslog.conf
— Salem F
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.