Стук в порт, чтобы получить сервис и версию
У меня возникают трудности с запоминанием определенной команды, которую я буду использовать в bash, которая даст информацию о порте, в который он будет "стучать".
Я использовал ssh backdoor, чтобы получить доступ к своему домашнему компьютеру, когда меня нет дома. Это хорошо сработало как альтернатива использованию DNS-решения в ответ на непредвиденное изменение IP-адреса моего компьютера.
Я могу настроить туннель SSH без проблем, выполнив следующие
me@home$ ssh -X -R 2222:localhost:22 me@my_server
А затем с помощью этих команд следовать по туннелю домой
me@somewhere_remote$ ssh me@my_server
me@myserver password:
me@mys_erver$ ssh -p 2222 me@localhost
me@localhost's password:
me@home$
Это все работает нормально, и у меня нет проблем с этим вообще. Просто иллюстрирую мой вариант использования.
Моя проблема или, скорее, досада в том, что я помню, что раньше знал и использовал команду, которая позволяла бы мне стучать в порт, и она выводила одну строку, в которой говорилось, какая служба работала на порту.
Так что, если бы я в настоящее время вошел как я @ my_server, я мог бы сделать что-то вроде этого
me@my_server$ knock localhost:2222
me@my_server$ OpenSSH_5.8p1
Где какая-то команда вместо 'knock' распечатывает версию ssh, перенаправленную в порт my_server.
Некоторые команды, которые приходят на ум в качестве возможностей, включают netcat, netstat и nmap, но я не могу вспомнить, какие из них я использовал для получения этой функциональности. Я думаю, что это выглядело как
nc -p localhost:2222
Но это на самом деле ничего не делает, поэтому у меня должен быть какой-то неверный параметр.
Я тщательно просмотрел справочные страницы для каждой команды, но, похоже, не могу найти, как это сделать. Я перепутал свою историю и не могу найти ее, так как она слишком долго использовалась в последний раз! (Раньше я просто делал ctrl+R n___, и это подходило).
Это была очень полезная команда, так как можно было проверить, к какому порту они подключаются и какую службу прослушивает. Без этого я, конечно, могу обойтись, но у меня постоянно болит голова, и я пытаюсь вспомнить, что это было!
Кто-нибудь знает о такой команде? Возможно, я перепутал некоторые мелкие детали, но я помню, что он что-то сделал примерно так, как я объяснил.
Спасибо за любые предложения и помощь!
1 ответ
Это было вероятно nmap
,
$ nmap -sT -sV -p 80,443 www.google.com
Starting Nmap 6.01 ( http://nmap.org ) at 2012-10-18 01:36 PDT
Nmap scan report for www.google.com (74.125.224.242)
Host is up (0.015s latency).
Other addresses for www.google.com (not scanned): 74.125.224.244 74.125.224.240 74.125.224.241 74.125.224.243
rDNS record for 74.125.224.242: lax04s08-in-f18.1e100.net
Not shown: 98 filtered ports
PORT STATE SERVICE VERSION
80/tcp open http Google httpd 2.0 (GFE)
443/tcp open ssl/http Google httpd 2.0 (GFE)
Service Info: OS: Linux; CPE: cpe:/o:linux:kernel
Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 20.23 seconds
-sT
такое сканирование TCP-sV
это служба контроля версий-p
список портов для сканирования использование-F
вместо этого, чтобы сканировать только общие порты или ни для сканирования многих (но не всех) портов.
Как всегда, прочитайте инструкцию для большего.