Criação de log de SFTP: existe um caminho?

84

Eu estou querendo saber se há uma maneira de registrar comandos recebidos pelo servidor. Pode ser todos os comandos SSH, desde que inclua informações sobre comandos relacionados à transferência de arquivos.

Estou tendo problemas com um cliente SFTP e o criador está solicitando logs, mas não consigo encontrar nenhum log existente.

Eu estou olhando para fazer logon tanto no CentOS quanto no OS X (embora eu suspeite que, se for possível, seria semelhante em ambos).

    
por Darryl Hein 11.10.2009 / 01:42

2 respostas

90

As versões 4.4p1 e superiores do OpenSSH (que devem incluir a versão mais recente com o CentOS 5) têm capacidade de registro SFTP - você só precisa configurá-lo.

Encontre isto no seu sshd_config (em centos, arquivo / etc / ssh / sshd_config ):

Subsystem       sftp    /usr/libexec/openssh/sftp-server

e altere para:

Subsystem       sftp    /usr/libexec/openssh/sftp-server -l INFO

INFO é apenas um nível de detalhe sobre o que você está vendo por padrão - ele fornece informações detalhadas sobre transferências de arquivos, mudanças de permissão, etc. Se você precisar de mais informações, você pode ajustar o nível de registro de acordo. Os vários níveis (em ordem de detalhes) são:

QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3

Qualquer coisa além do VERBOSE é provavelmente mais informação do que você está procurando, mas pode ser útil.

Por fim, reinicie o serviço SSH para atualizar as alterações (centos):

systemctl restart sshd
    
por 13.10.2009 / 23:21
39

Os mesmos switches em torno do log do sftp-server também funcionam para o sftp interno. Aqui está um exemplo do meu / etc / ssh / sshd_config:

Subsystem   sftp    internal-sftp -f AUTH -l INFO

Com o log de nível INFO, as mensagens ativadas começarão a aparecer em / var / log / messages (pelo menos nas Distros baseadas em Red Hat):

May 27 05:58:16 test-server sshd[20044]: User child is on pid 20049
May 27 05:58:16 test-server sshd[20049]: subsystem request for sftp by user test-user
May 27 05:58:16 test-server internal-sftp[20050]: session opened for local user test-user from [192.168.1.1]
May 27 05:58:16 test-server internal-sftp[20050]: received client version 3
May 27 05:58:16 test-server internal-sftp[20050]: realpath "."
May 27 05:58:21 test-server internal-sftp[20050]: opendir "/home/test-user/"
May 27 05:58:21 test-server internal-sftp[20050]: closedir "/home/test-user/"
May 27 05:58:21 test-server internal-sftp[20050]: lstat name "/home/test-user/upload"
May 27 05:58:21 test-server internal-sftp[20050]: realpath "/home/test-user/upload/"
May 27 05:58:21 test-server internal-sftp[20050]: stat name "/home/test-user/upload"
May 27 05:58:24 test-server internal-sftp[20050]: open "/home/test-user/upload/test-file.pdf" flags WRITE,CREATE,TRUNCATE mode 0664
May 27 05:58:25 test-server internal-sftp[20050]: close "/home/test-user/upload/test-file.pdf" bytes read 0 written 1282941
    
por 29.05.2011 / 12:42