Кто и зачем мог отправлять данный пакет по TCP/IP?
Есть написанный мною развернутый сервис (он открыт в общий доступ через доменное имя), который принимает TCP/IP соединения и обрабатывает пакеты данных определенного формата. Сегодня к данному сервису подключился странный клиент, который с интервалом в ~ 2 минуты 50 секунд слал пакеты со следующим содержимым:
SSH-2.0-libssh2_1.8.0
Мой сервис такие пакеты естественно отбрасывает и выкидывает ошибку.
Вопрос: Что это может быть? Попытка подключения к машине через SSH? И нужно ли что-то с этим делать?
Переходя по IP-адресу этого "странного клиента" в браузере открывается default-страница Apache2 Debian Default Page.
Ответы (1 шт):
чтобы всё-таки был хоть какой-то ответ, приведу маленькую симуляцию.
запустил я процесс netcat, слушающий порт 2222 (номер выбран произвольно) и попытался осуществить подключение к этому порту по протоколу ssh с использованием библиотеки libssh2 (это имя фигурирует в вопросе).
в debian gnu/linux данная библиотека идёт в пакете libssh2-1 (версии как раз 1.8.0 — в стабильном на данный момент выпуске дистрибутива), и зависит от неё много чего (есть и php-шные биндинги, и python-овские), но у меня в системе оказался установленным только один биндинг — для программы r, идущий в r-пакете git2r (реализация работы с git-репозиториями).
вот я и запустил как бы клонирование как бы репозитория как бы находящегося по адесу localhost:2222 (где уже слушает мой «сервер» — программа netcat). здесь главное — что будет осуществляться попытка подключения именно по протоколу ssh и как раз с использованием библиотеке libssh2:
$ r -e "git2r::clone('ssh://fake@localhost:2222/fake','.')"
cloning into '.'...
и в то же мгновение netcat получил строку, идентичную полученной вашим сервером:
$ nc -l -p 2222
SSH-2.0-libssh2_1.8.0
для полноты изложения — цитата из соответствующего rfc:
4.2. Protocol Version Exchange
When the connection has been established, both sides MUST send an
identification string. This identification string MUST be
SSH-protoversion-softwareversion SP comments CR LF
вывод: скорее всего, к вашему серверу пытается подключиться (используя протокол ssh) некая программа/скрипт, либо действительно использующая libssh2, либо мимикрирующая использование этой библиотеки.