Почему Nmap выдает сообщение «Хост, кажется, не работает», когда простой пинг успешен?
me@computer:~$ ping 123.45.67.89
PING 123.45.67.89 (123.45.67.89) 56(84) bytes of data.
64 bytes from 123.45.67.89: icmp_req=1 ttl=45 time=91.1 ms
64 bytes from 123.45.67.89: icmp_req=2 ttl=45 time=102 ms
64 bytes from 123.45.67.89: icmp_req=3 ttl=45 time=100 ms
^C
--- 123.45.67.894 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 91.136/98.182/102.417/5.022 ms
me@computer:~$ nmap 123.45.67.89
Starting Nmap 5.21 ( http://nmap.org ) at 2014-04-02 14:23 EDT
Note: Host seems down. If it is really up, but blocking our ping probes, try -PN
Nmap done: 1 IP address (0 hosts up) scanned in 3.04 seconds
Отличаются ли «пинговые зонды» Nmap от командного пинга?
Ответы:
Nmap отправляет много разных проб, чтобы определить, работает ли хост. В вашем конкретном случае, поскольку вы запускаете Nmap без привилегий root, он не может отправлять эхо-запросы ICMP, которыми пользуется
ping
утилита. В этом случае он пытается подключиться к порту 80 и порту 443, сообщая хосту о том, что он работает, если соединение открыто или отклонено. У вашей цели должен быть межсетевой экран, который сбрасывает весь трафик на эти порты.Чтобы Nmap мог найти систему, попробуйте запустить ее с правами root. Команда sudo часто используется для этой цели, например
sudo nmap 123.45.67.89
ping
может отправлять пакеты ICMP, потому что он установлен setuid для пользователя root, что означает, что его может запустить любой пользователь, но когда он это сделает, он будет работать от имени пользователя root. Программы Setuid должны быть очень осторожны, чтобы не дать обычным пользователям получить оболочку через это дополнительное разрешение. В частности, Nmap не может предотвратить повышение привилегий, поэтому его нельзя устанавливать setuid.источник
/bin/ping
- это setuid-root. Независимо от того, кто его запускает, он запускается с привилегиями root. Программы Setuid должны быть тщательно протестированы, чтобы гарантировать, что они не могут использоваться для запуска произвольных команд. Nmap не может быть безопасно установлен setuid-root, поэтому вы должны использовать другой механизм: пароль root или sudo.Да, они отличаются по умолчанию, ping - это ICMP, и nmap ping отправляет пакет syn на порт 80, если я правильно помню, попробуйте использовать флаги -PE, -PM, -PP, чтобы заставить его выполнять пинг ICMP
источник
без привилегий вы можете сканировать порт с помощью netcat:
ответ 1, если не удалось, в противном случае ответ:
Соединение с портом hostname 22 [tcp / ssh] успешно завершено!
0
источник
Простое исправление для меня (Windows 10). Я просто отключил свой беспроводной адаптер, который не использовался, так как я использовал основной сетевой адаптер. Я бы рекомендовал отключить все, кроме вашего основного адаптера.
источник