Tarefas feitas pelo servidor ssh quando recebe uma solicitação?

2

Quando eu ssh em um servidor usando

ssh -vvv user@ip

Ele me fornece todas as informações das etapas que um determinado client está executando para se conectar a um servidor OpenSSH.

Eu estava me perguntando se existe uma maneira de saber todas as etapas similares que um server (daemon sshd) executará quando for solicitado por um client para fazer uma conexão?

    
por Krishna 30.01.2014 / 19:11

2 respostas

3

Se você só precisa fazer isso temporariamente (para depurar um problema específico, por exemplo), você pode executar sshd interativamente com o conjunto de sinalizadores de depuração.

  1. Faça login no servidor e torne-se root.
  2. Pare o daemon SSH regular.
  3. Execute o sshd interativamente com o sinalizador de depuração definido:

    / usr / sbin / sshd -d

  4. Execute o cliente e faça o teste que você está tentando solucionar.

sshd será executado em primeiro plano no terminal e gerará informações de depuração.

Se você não quiser parar o servidor ssh normal, pode executar o seu servidor de depuração em uma porta diferente:

/usr/sbin/sshd -d -p 10022

Depois, faça com que seu cliente se conecte à porta alternativa.

    
por 09.04.2014 / 16:59
1

Modifique o arquivo de registro (geralmente / etc / sshd / config ) para o sshd para ter o registro mais detalhado possível. Os detalhes podem variar, mas o DEBUG3 é provavelmente o mais alto. Como a página man afirma:

 LogLevel
     Gives the verbosity level that is used when logging messages from
     sshd.  The possible values are: QUIET, FATAL, ERROR, INFO, VER-
     BOSE, DEBUG, DEBUG1, DEBUG2 and DEBUG3.  The default is INFO.
     DEBUG and DEBUG1 are equivalent.  DEBUG2 and DEBUG3 each specify
     higher levels of debugging output.  Logging with a DEBUG level
     violates the privacy of users and is not recommended.
    
por 30.01.2014 / 19:19