Задачи, выполняемые сервером ssh при получении запроса?

Когда я SSH в сервер с помощью

ssh -vvv user@ip

Это дает мне всю информацию о шагах, которые конкретный client выполняет для подключения к серверу OpenSSH.

Мне было интересно, если есть способ узнать все подобные шаги, которые server (sshd daemon) будет выполняться по запросу client установить соединение?

2 ответа

Решение

Если вам просто нужно сделать это временно (например, для устранения конкретной проблемы), вы можете запустить sshd интерактивно с установленным флагом отладки.

  1. Войдите на сервер и станьте пользователем root.
  2. Остановите обычный демон SSH.
  3. Запустите sshd в интерактивном режиме с установленным флагом отладки:

    / usr / sbin / sshd -d

  4. Запустите клиент и выполните тест, который вы пытаетесь устранить.

sshd будет работать на переднем плане в вашем терминале и выводить отладочную информацию.

Если вы не хотите останавливать обычный ssh-сервер, вы можете запустить ваш сервер отладки на другом порту:

/usr/sbin/sshd -d -p 10022

Затем подключите ваш клиент к альтернативному порту.

Измените файл журнала (обычно / etc / sshd / config) для sshd, чтобы иметь максимально подробное ведение журнала. Особенности могут отличаться, но DEBUG3, вероятно, самый высокий. Как говорится на странице руководства:

 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.
Другие вопросы по тегам