Me pregunto si hay una manera de registrar los comandos recibidos por el servidor. Pueden ser todos los comandos SSH, siempre que incluya información sobre los comandos relacionados con la transferencia de archivos.
Tengo problemas con un cliente SFTP y el creador está solicitando registros, pero no puedo encontrar ningún registro existente.
Estoy buscando iniciar sesión tanto en CentOS como en OS X (aunque sospecho que si es posible, sería similar en ambos).
Respuestas:
Las versiones de OpenSSH 4.4p1 y posteriores (que deberían incluir la última versión con CentOS 5) tienen la capacidad de registro SFTP incorporada, solo necesita configurarla.
Encuentre esto en su sshd_config (en centos, archivo / etc / ssh / sshd_config ):
y cámbielo a:
INFO es solo un nivel de detalle sobre lo que está viendo de forma predeterminada: proporciona información detallada sobre transferencias de archivos, cambios de permisos, etc. Si necesita más información, puede ajustar el nivel de registro en consecuencia. Los distintos niveles (en orden de detalle) son:
Cualquier cosa sobre VERBOSE es probablemente más información de la que está buscando, pero puede ser útil.
Finalmente reinicie el servicio SSH para actualizar los cambios (centos):
fuente
/var/log/auth.log
. Agregue-f USER
a esaSubsystem
línea de configuración para enviarlos/var/log/syslog
.Los mismos cambios en el registro para sftp-server también funcionan para sftp interno. Aquí hay un ejemplo de mi / etc / ssh / sshd_config:
Con el registro de nivel INFO habilitado, los mensajes comenzarán a aparecer en / var / log / messages (al menos en las distribuciones basadas en Red Hat):
fuente
/dev/log
en tu área de chroot. Algo así comosudo mkdir /chrooted/area/dev
,sudo touch /chrooted/area/dev/log
,sudo chmod 511 /chrooted/area/dev
,sudo chattr +i /chrooted/area/dev
,sudo mount --bind /dev/log /chrooted/area/dev/log
. Los usuarios aún tendrán acceso de escritura a ese / dev / log, pero como es un socket, no pueden hacer mucho daño si todo lo que tienen acceso essftp
.Para aclarar los comentarios anteriores:
Si ha configurado sftp utilizando una cárcel (entorno chroot), no puede iniciar sesión sin una configuración adicional. El registro no se puede escribir en el entorno chroot, debe crear un enlace de montaje o un socket. Recomendaría usar un socket, ya que es una característica entregada por syslog-ng y rsyslog (y tal vez muchos más).
Para aquellos que usan syslog-ng, eche un vistazo a https://wiki.archlinux.org/index.php/SFTP_chroot#Logging . Para aquellos que usan rsyslog, https://wiki.kairaven.de/open/os/linux/sftpssh es tu amigo.
Espero que ayude.
fuente