Назад | Перейти на главную страницу

Неожиданное соединение ssh от localhost через ssh к случайному порту localhost

Я пытался выяснить, почему у меня были странные соединения в моем защищенном файле журнала. Что-то вроде этого :

Apr 23 11:35:43 li192-61 sshd[11651]: Did not receive identification string from 127.0.0.1
Apr 23 11:35:49 li192-61 sshd[11661]: Connection closed by UNKNOWN

У меня было много таких связей, каждую минуту. Так что я использовал netstat команда как netstat -ta --numeric-ports --program | grep 22 чтобы получить больше информации. Получил (я удалил собственное ssh-соединение):

tcp        0      0 localhost:56145             localhost:22             TIME_WAIT   -

Затем я попытался найти, какой из них использует этот порт, поэтому я использовал lsof -i :22 и у меня нет ничего, кроме моей собственной связи.

После того, как я запустил netstatснова команда, я получил это:

tcp        0      0 localhost:45979             localhost:22             TIME_WAIT   -  

Новый порт используется в качестве удаленного пункта назначения с localhost через порт 22. Каждую минуту одно и то же.

У меня сейчас больше нет идей. Итак, мой вопрос:

Есть ли способ получить все процессы, использующие ssh-соединение, или получить все процессы, которые пытаются подключиться к определенному порту (например, 45979)?

Спасибо за уделенное время !

Сопоставьте идентификаторы процессов всех этих попыток фиктивного подключения с теми, которые вы используете сами; идентификатор процесса вашего собственного соединения не должен меняться.

Если это так, некоторые настройки заставляют ваше соединение повторно подключаться снова и снова (это возможно в SSH без потери связи).

Если вы посмотрите на заголовки netstat:

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name

Вы увидите, что верхний «случайный» порт - это локальный адрес. Программе, установившей исходящее соединение, требуется порт, на котором можно получать ответы от удаленного сервера. Для этого он получает порт в высоком диапазоне.

Вы видите соединения SSH от локального приложения / скрипта к локальному хосту.

Однако, похоже, что соединение не может быть установлено по какой-то причине. Приложение не аутентифицируется должным образом.

Таким образом, вы ищете не приложение, которое подключается к порту 45979, а приложение, которое подключается к порту 22 на локальном хосте. Скорее всего просто ssh localhost.

Проверьте время, в которое выполняются соединения, затем проверьте расписание и / или журналы cron на это время.

Здесь есть пост что предполагает, что такого рода вещи возникают, когда у вас есть два конкурирующих процесса sshd, пытающихся привязаться к одному и тому же порту.

Вы можете получить локальную консоль и запустить service sshd stop а затем проверьте ps -ef | grep sshd для любых мошеннических серверов sshd, которые не находятся под контролем служебной оболочки.