Как просканировать сеть на наличие устройств
Перейти к содержимому

Как просканировать сеть на наличие устройств

  • автор:

Как использовать команду nmap

Nmap — это мощный инструмент сетевого сканирования для аудита безопасности и тестирования на проникновение. Это один из основных инструментов, используемых администраторами сети для устранения проблем с подключением к сети и сканирования портов .

Nmap также может определять Mac-адрес, тип ОС , версию службы и многое другое.

В этой статье объясняются основы того, как использовать команду nmap для выполнения различных сетевых задач.

Установка Nmap

Nmap — это многоплатформенная программа, которую можно установить во всех основных операционных системах. Первоначально он был выпущен как инструмент только для Linux, а позже был перенесен на другие системы, такие как BSD, Windows и macOS.

Если вы предпочитаете графический интерфейс, а не командную строку, Nmap также имеет графический пользовательский интерфейс под названием Zenmap.

Официальные бинарные пакеты доступны для загрузки со страницы загрузки Nmap.

Процедура установки проста и зависит от вашей операционной системы.

Установка Nmap в Ubuntu и Debian

Nmap доступен из репозиториев Ubuntu и Debian по умолчанию. Чтобы установить его, запустите:

sudo apt update sudo apt install nmap

Установка Nmap на CentOS и Fedora

На CentOS и других производных от Red Hat запускаются:

sudo dnf install nmap

Установка Nmap на macOS

Пользователи macOS могут установить Nmap, загрузив установочный пакет «.dmg» с сайта Nmap или через Homebrew:

brew install nmap

Установка Nmap в Windows

Версия Nmap для Windows имеет некоторые ограничения и, как правило, немного медленнее, чем версия для UNIX.

Самый простой вариант установки Nmap в Windows — это загрузить и запустить самоустанавливающийся exe-файл.

Вы можете запустить Nmap в Windows либо из командной строки, либо запустив программу Zenmap. Для получения дополнительной информации о том, как использовать Nmap в Windows, ознакомьтесь с инструкциями по использованию после установки.

Использование Nmap

Nmap обычно используется для аудита сетевой безопасности, отображения сети, определения открытых портов и поиска сетевых устройств.

Упрощенный синтаксис команды nmap выглядит следующим образом:

nmap [Options] [Target. ]

Самый простой пример использования Nmap — сканирование одной цели от имени обычного пользователя без указания каких-либо параметров:

nmap scanme.nmap.org

При вызове от имени пользователя без полномочий root, у которого нет прав на использование сырых пакетов, nmap запускает сканирование TCP-соединения. Параметр -sT по умолчанию включен в непривилегированном режиме.

Вывод будет выглядеть примерно так, включая основную информацию о сканировании и список открытых и отфильтрованных TCP-портов.

Starting Nmap 7.91 ( https://nmap.org ) at 2020-12-16 20:19 CET Nmap scan report for cast.lan (192.168.10.121) Host is up (0.048s latency). Not shown: 981 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 25/tcp open smtp 53/tcp open domain 80/tcp open http 110/tcp open pop3 143/tcp open imap 443/tcp open https 587/tcp open submission 993/tcp open imaps 995/tcp open pop3s 1025/tcp open NFS-or-IIS 1080/tcp open socks 8080/tcp open http-proxy 8081/tcp open blackice-icecap Nmap done: 1 IP address (1 host up) scanned in 1.78 seconds

Самым популярным вариантом сканирования является TCP SYN scan ( -sS ), который быстрее, чем вариант подключения, и работает со всеми совместимыми стеками TCP.

-sS включается по умолчанию, когда nmap вызывает пользователь с административными привилегиями:

sudo nmap 192.168.10.121

Для более подробного вывода используйте увеличение детализации с помощью -v или -vv :

sudo nmap -vv 192.168.10.121

Чтобы выполнить сканирование UDP, вызовите команду с параметром ( -sU) от имени пользователя root:

sudo nmap -sU 192.168.10.121

Для получения полного списка методов сканирования портов посетите страницу документации Nmap.

Nmap также поддерживает адреса IPv6. Чтобы указать хост IPv6, используйте опцию -6 :

sudo nmap -6 fd12:3456:789a:1::1

Указание целевых хостов

Nmap рассматривает все аргументы, которые не являются опциями, как целевые хосты.

Аргументы считаются вариантами, если они начинаются с одинарного или двойного тире ( — , — ).

Самый простой вариант — передать один или несколько целевых адресов или доменных имен:

nmap 192.168.10.121 host.to.scan

Вы можете использовать нотацию CIDR, чтобы указать диапазон сети:

nmap 192.168.10.0/24

Чтобы указать диапазон октетов, используйте символ тире. Например, для сканирования 192.168.10.1, 192.168.11.1и 192.168.12.1:

nmap 192.168.10-12.1

Другой символ, который вы можете использовать для указания целей, — это запятая. Следующая команда нацелена на те же хосты, что и предыдущая:

nmap 192.168.10,11,12.1

Вы можете комбинировать все формы:

nmap 10.8-10.10,11,12.0/28 192.168.1-2.100,101

Чтобы убедиться, что вы указали правильные хосты перед сканированием, используйте параметр сканирования списка ( -sL ), который перечисляет только цели без запуска сканирования:

nmap -sL 10.8-10.10,11,12.0/28 192.168.1-2.100,101

Если вы хотите исключить цели, которые включены в указанный вами диапазон, используйте опцию —exclude :

nmap 10.8-10.10,11,12.0/28 --exclude 10.10.12.12

Указание и сканирование портов

По умолчанию Nmap выполняет быстрое сканирование 1000 самых популярных портов. Это не первые 1000 последовательных портов, а 1000 наиболее часто используемых портов в диапазоне от 1 до 65389.

Для поиска всех портов с 1 по 65535 используйте опцию -p :

nmap -p- 192.168.10.121

Каждый порт может находиться в одном из следующих состояний:

  • open — программа, запущенная на порту, отвечает на запрос.
  • closed — на порту не работает ни одна программа, и хост отвечает на запросы.
  • filtered — хост не отвечает на запрос.

Порты и диапазоны портов указываются с помощью опции -p .

Например, чтобы просканировать только порт 443, вы должны использовать следующую команду:

nmap -p 443 192.168.10.121

Чтобы указать более одного порта, разделите целевые порты запятой:

nmap -p 80,443 192.168.10.121

Диапазоны портов можно указать с помощью символа тире. Например, чтобы просканировать все порты UDP в диапазоне от 1 до 1024, вы должны запустить:

sudo nmap -sU -p 1-1024 192.168.10.121
nmap -p 1-1024,8080,9000 192.168.10.121

Порты также можно указать с помощью имени порта. Например, для поиска порта 22, ssh, вы можете использовать:

nmap -p ssh 192.168.10.121

Ping сканирование

Чтобы выполнить ping-сканирование или обнаружение хоста, вызовите команду nmap с опцией -sn :

sudo nmap -sn 192.168.10.0/24

Эта опция указывает Nmap только на обнаружение сетевых хостов, а не на сканирование портов. Это полезно, когда вы хотите быстро определить, какой из указанных хостов запущен и работает.

Отключение разрешения DNS-имен

По умолчанию Nmap выполняет обратное разрешение DNS для каждого обнаруженного хоста, что увеличивает время сканирования.

При сканировании больших сетей рекомендуется отключить разрешение обратного DNS и ускорить сканирование. Для этого вызовите команду с опцией -n :

sudo nmap -n 192.168.10.0/16

Определение ОС, служб и версий

Nmap может обнаружить операционную систему удаленного хоста с помощью снятия отпечатков стека TCP/IP. Чтобы запустить обнаружение ОС, вызовите команду с опцией -O :

sudo nmap -O scanme.nmap.org

Если Nmap может обнаружить ОС хоста, он напечатает что-то вроде следующего:

. Device type: general purpose Running: Linux 5.X OS CPE: cpe:/o:linux:linux_kernel:5 OS details: Linux 5.0 - 5.4 Network Distance: 18 hops OS detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 26.47 seconds

Обычно системные службы прослушивают стандартные порты, которые хорошо известны и зарезервированы для них. Например, если порт 22, соответствующий службе SSH, открыт, вы предполагаете, что на хосте работает SSH-сервер. Однако вы не можете быть абсолютно уверены, потому что люди могут запускать службы на любых портах, которые им нужны.

Благодаря обнаружению службы и версии Nmap покажет вам, какая программа прослушивает порт и версию программы.

Для поиска службы и версии используйте опцию -sV :

sudo nmap -sV scanme.nmap.org
. PORT STATE SERVICE VERSION 19/tcp filtered chargen 22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.13 (Ubuntu Linux; protocol 2.0) 80/tcp open http Apache httpd 2.4.7 ((Ubuntu)) 135/tcp filtered msrpc 139/tcp filtered netbios-ssn 445/tcp filtered microsoft-ds 9929/tcp open nping-echo Nping echo 31337/tcp open tcpwrapped Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel .

Вы также можете сканировать ОС, версии и запускать traceroute с помощью одной команды, используя параметр -A :

sudo nmap -A 192.168.10.121

Вывод Nmap

По умолчанию Nmap выводит информацию на стандартный вывод (stdout).

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

Nmap предоставляет несколько типов вывода. Чтобы сохранить вывод в нормальном формате, используйте параметр, за которым следует имя файла -oN :

sudo nmap -sU -p 1-1024 192.168.10.121 -oN output.txt

Самый популярный вариант — сохранить вывод в формате XML. Для этого воспользуйтесь опцией -oX :

sudo nmap -sU -p 1-1024 192.168.10.121 -oX output.xml

Еще один полезный формат — вывод grepable, который можно анализировать с помощью стандартных инструментов Unix, таких как grep , awk и cut . Вывод grepable указывается с опцией -oG :

sudo nmap -sU -p 1-1024 192.168.10.121 -oG output

Механизм сценариев Nmap

Одна из самых мощных функций Nmap — это скриптовый движок. Nmap поставляется с сотнями скриптов , и вы также можете писать свои собственные скрипты на языке Lua.

Вы можете использовать скрипты для обнаружения вредоносных программ и бэкдоров, выполнения атак методом перебора и т.д.

Например, чтобы проверить, скомпрометирован ли данный хост, вы можете использовать:

nmap -sV --script http-malware-host scanme.nmap.org

Заключение

Nmap — это инструмент с открытым исходным кодом, который в основном используется администраторами сети для обнаружения узлов и сканирования портов.

Обратите внимание, что в некоторых странах сканирование сетей без разрешения является незаконным.

Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка / 5. Количество оценок:

Оценок пока нет. Поставьте оценку первым.

Программы для сканирования сети

Для получения различной информации об IP-сетях — подключенных устройствах, открытых/закрытых сетевых портах, общедоступных файлов/папок и т.д. — широко используются программные IP-сканеры. Эти специализированные утилиты помогают системным администраторам тонко настраивать и устранять ошибки в работе сетей, специалистам по кибербезопасности — обнаруживать уязвимые места («дыры») в системах защиты компьютерных сетей.

Простым пользователям IP-сканеры могут пригодиться для настройки небольших проводных и беспроводных локальных сетей, управления подключенными к сети устройствами, организации общего доступа к файлам и папкам. Далее мы рассмотрим популярные программы для сканирования IP-сетей для компьютеров под управлением Windows.

Advanced IP Scanner

Advanced IP Scanner — один из самых простых в управлении IP-сканнеров, позволяющих достаточно быстро собрать и представить в удобном виде информацию о сканируемом IP-адресе или диапазоне IP-адресов. Программа бесплатная, имеет русскоязычный интерфейс, подходит для запуска в Windows XP/7/8/8.1/10.

Основные функции программы Advanced IP Scanner:

  • Обнаружение сетевых устройств при сканировании диапазона IP-адресов с определением производителя и MAC-адреса.
  • Пингование (PING) и трассировка маршрута (Tracert) до выбранного устройства (используются стандартные средства Windows).
  • Отображение списка общедоступных папок (если таковые имеются на устройстве) с возможностью быстрого перехода в любую из них.
  • Определение возможности подключения к сканируемым устройства по HTTP, HTTPS, FTP, SSH или Telnet протоколам. Сама программа не дает возможности выполнить подключения, однако может автоматически запускать внешние программные средства, указываемые пользователем в настройках.

Advanced IP Scanner

  • Подключение и управление удаленными компьютерами под управлением Windows посредством RDP-протокола (если на удаленном ПК были произведены соответствующие настройки через системную программу «Подключение к удалённому рабочему столу»).
  • Утилита Advanced IP Scanner также может работать в связке с программой удаленного доступа Radmin (устанавливается отдельно). Посредством Advanced IP Scanner удобно отправлять команды в Radmin (управление, просмотр экрана, передача файлов, чат и пр.) — соответствующие функции можно запустить из контекстного меню, вызванного над любым обнаруженным в сети компьютером. На удаленном ПК также должна быть установлен серверный модуль Radmin, наличие которого Advanced IP Scanner может определить автоматически при сканировании.

Advanced IP Scanner

  • Возможность удаленного выключения и включения компьютеров. Для выключения используется стандартная технология Windows, предполагающая отправку специальной команды на ПК (требуется иметь доступ к учетной записи, т.е. логин и пароль). Включение производится с использованием технологии «Wake-on-LAN», для чего в настройках BIOS удаленного компьютера должна быть задействована соответствующая функция (поддерживается не всеми BIOS).

Free IP Scanner

Free IP Scanner — простая в использовании утилита, основная функция которой заключается в обнаружении открытых сетевых портов у сканируемых IP-адресов (любые устройства, сайты и т.д.). Программа не имеет перевода на русский язык, распространяется бесплатно, может использоваться из-под любой версии Windows, начиная с Win 9x.

Free IP Scanner — узкоспециализированная утилита, которая может стать хорошим дополнением к предыдущему IP-сканеру Advanced IP Scanner или любой другой подобной программе, не имеющей функции сканирования сетевых портов. По сути, у Free IP Scanner всего две основные функции:

  1. Сканирование диапазона IP-адресов с построением списка доступных («живых») и недоступных («мертвых») хостов с выводом их MAC-адреса и имени хоста (если возможно).

Free IP Scanner

  1. Определение открытых для подключения к сканируемым IP-адресам сетевых портов. Программа не сканирует все существующие порты (эта заняло бы очень много времени), а лишь те, что были указаны пользователем в настройках (можно указать любое количество номеров портов, разделив их запятыми).

Free IP Scanner

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

10-Страйк: Сканирование Сети

«10-Страйк: Сканирование Сети» — а это программа, включающая в себя функции двух предыдущих утилит. Т.е. с ее помощью можно не только получать различные сведения об устройствах и сетевых хостах, но и определять номера открытых портов. Программа «10-Страйк: Сканирование Сети» распространяется по условно-бесплатной модели (некоторые «экзотические» функции заблокированы в бесплатной версии), она полностью русифицирована, работает в системах Windows XP и выше.

10-Страйк: Сканирование Сети

Основные функциональные возможности программы «10-Страйк: Сканирование Сети»:

  • Получение различных сведений обо всех видах сетевых устройств — компьютеры, мобильные устройства, маршрутизаторы (проводные/беспроводные роутеры), принтеры и др. Программа способна получать информацию по SNMP, NetBios и UPnP протоколам.

10-Страйк: Сканирование Сети

  • Встроенные инструменты для пингования (1) и трассировки (2) хостов:

10-Страйк: Сканирование Сети

  • Встроенный инструмент сканирования TCP и UDP-портов.

10-Страйк: Сканирование Сети

  • Удаленное управление устройствами посредством SNMP-протокола (на удаленном устройстве должно быть установлено соответствующее программного обеспечение — SNMP-агент).

10-Страйк: Сканирование Сети

Отдельно следует отметить наличие в программе «10-Страйк: Сканирование Сети» удобного «Мастера сканирования сети», с помощью которого задаются настройки для последующего сканирования:

  • Задаем диапазон IP-адресов для сканирования (можно несколько диапазонов)

10-Страйк: Сканирование Сети

  • Выбираем протоколы и порты для сканирования.

10-Страйк: Сканирование Сети

  • Видим список обнаруженных сетевых устройств в указанном диапазоне IP-адресов.

10-Страйк: Сканирование Сети

Кроме того, в программе «10-Страйк: Сканирование Сети» присутствует полезная функция мониторинга локального сетевого трафика. Откуда конкретно приходит трафик и уходит исходящий трафик функция не отображает, зато помогает понять, через какой из сетевых интерфейсов Windows осуществляется прием/передача данных и с какой скоростью все это происходит.

10-Страйк: Сканирование Сети

Все остальные функции программы «10-Страйк: Сканирование Сети» на самом деле являются функциями других — платных — программ от того же разработчика.

MyLanViewer

MyLanViewer — довольно мощный IP-сканер, обладающий множеством вспомогательных функций. От предыдущих программ MyLanViewer отличается, в т.ч., наличием функционала по сканированию и мониторингу беспроводных (Wi-Fi) сетей. Утилита распространяются по условно-бесплатной модели (бесплатное использование возможно в течение 15 дней с момента установки без функциональных ограничений), интерфейс выполнен на английском языке, работает во всех версиях Windows, начиная с Win 2000.

MyLanViewer

Основные функциональные возможности программы MyLanViewer:

  • Сканирование одного/диапазона IP-адресов с определением MAC-адресов устройств/сетевых карт компьютеров и всех общедоступных ресурсов на хосте — файлы, папки, развернутые FTP-серверы, доступные для подключения веб-интерфейсы и т.д.

MyLanViewer

  • Отправка на удаленный компьютер/хост различных сетевых команд и подключение к ним по различным сетевым протоколам при использовании внешних программ. В настройках MyLanViewer можно самостоятельно создать собственный список команд, привязав их к любым внешним приложениям. Доступные по умолчанию сетевые команды выполняются при использовании стандартных средств Windows.

MyLanViewer

  • Отображение всех открытых для общего доступа папок и файлов со всех обнаруженных в процессе сканирования устройств/хостов. Также возможен поиск файлов по имени с использованием маски («*.mp3»). Кроме того, программа позволяет управлять доступам к общим ресурсам компьютера, где выполняется MyLanViewer. Пользователь может открывать/закрывать доступ к общедоступным папкам/файлам с указанных IP/MAC-адресов.

MyLanViewer

  • Сканирование и мониторинг локальной Wi-Fi-сети. Программа MyLanViewer способна отображать список всех подключенных к Wi-Fi-роутеру устройств (включая компьютеры, подключенные к роутеру по сетевому кабелю), выводя на экран всю доступную информацию о них. Если задействовать функцию автоматического мониторинга сети, тогда программа будет оповещать при обнаружении новых подключенных устройств (это поможет, к примеру, выявить случаи подключения к Wi-Fi-сети «непрошенных» пользователей и заблокировать их через роутер).

MyLanViewer

  • Наличие встроенного TCP/UDP-мессенджера с функцией передачи файлов. Чат работает только между пользователями программы MyLanViewer. Собеседников можно добавлять по IP-адресу (возможен их поиск в указанном IP-диапазоне).

MyLanViewer

Из дополнительных функций программы MyLanViewer отметим:

  • Просмотр различных сетевых параметров компьютера и сетевой статистики (вывод списка запущенных на компьютере процессов, использующих активное сетевое подключение).

MyLanViewer

  • Функция поиска доступных в локальной сети DHCP-серверов с выводом DNS-серверов, использующихся активным интернет-подключением.

MyLanViewer

  • Многофункциональный «Wake-on-LAN-менеджер», позволяющий отправлять различные сетевые команды посредством NetBIOS на удаленные компьютеры: включение/выключение/перезагрузка, блокировка учетной записи, гибернация/сон и другие.

MyLanViewer

Для снятия 15-дневного ограничения на использование программы MyLanViewer требуется приобрести лицензию. Ее стоимость на момент написания обзора составляла $29.

LizardSystems Network Scanner

LizardSystems Network Scanner — еще один IP-сканнер с расширенным функционалом по работе с общедоступными сетевыми ресурсами. Но в отличие от MyLanViewer, данная программа способна также «прозванивать» интересующие пользователя сетевые порты удаленного устройства/хоста. Network Scanner — условно-бесплатная программа с пробным периодом использования в течение 10 дней. Интерфейс приложения частично русифицирован (отсутствует перевод некоторых элементов интерфейса). Программа поддерживается операционными системами Windows 7/8/8.1/10, а также полностью совместима с серверными ОС Windows Server 2008R2/ 2012/2012R2/2016.

В число основных функций программы LizardSystems Network Scanner входят:

  • Возможность добавления IP-адресов для сканирования разными способами. Программа поддерживает конструкции типа «192.168.0.1-254» или «192.168.0,10,50-60». Можно также импортировать список IP-адресов из заранее подготовленного (наполненного IP-адресами) текстового файла. Можно также задать диапазон для сканирования по имени хоста (например, адреса сайта) — программа сама получит IP-адрес, пользователю останется лишь указать конечный IP. Созданные подобным образом списки IP-диапазонов можно сохранить для быстрого запуска процедуры сканирования в будущем.

LizardSystems Network Scanner

  • Обнаружение открытых TCP-портов. Функцию следует включить в настройках программы, указав номера «прозваниваемых» сетевых портов через запятую.

LizardSystems Network Scanner

  • Фильтрация обнаруженных в сети компьютеров/устройств/хостов по различным критериям: по состоянию, типу доступных ресурсов, правам доступа.

LizardSystems Network Scanner

  • Вывод списка общедоступных сетевых ресурсов со всех просканированных устройств/хостов с возможностью поиска папок/файлов по имени и/или их фильтрации путем применения пользовательских фильтров (наборы ключевых слов).

LizardSystems Network Scanner

  • Возможность экспорта всех обнаруженных при сканировании общедоступных ресурсов (имена каталогов, файлов и т.д.) в текстовые файлы различных форматов для последующего изучения.

LizardSystems Network Scanner

  • Вызов стандартных средств администрирования Windows и отправка различных сетевых команд (поддерживаются команды «Wake-on-LAN») применительно к выбранным сетевым устройствам/хостам. Пользователь также может создать свой собственный список инструментов/сетевых команд с использованием внешних программ.

LizardSystems Network Scanner

  • Возможность подключения к удаленным компьютерам/хостам по HTTP и FTP-протоколам, параметры которых (порты, данные для авторизации и др.) можно настроить вручную.

LizardSystems Network Scanner

По истечению 10-дневного пробного периода для продолжения использования программы потребуется приобрести лицензию. На момент написания обзора ее стоимость составляла $79,95.

Lansweeper

И последняя программа в нашем обзоре — Lansweeper . Это IP-сканер нового поколения с множеством удобных сетевых функций. Вообще, Lansweeper нельзя назвать просто IP-сканером — это целый большой набор административных сетевых инструментов. И работает программа не как обычная Windows-программа.

Управление приложением осуществляется через веб-консоль (веб-интерфейс), в которую можно попасть из любого современного браузера. Войти в веб-интерфейс можно не только с локального компьютера (на котором установлена программа), но и удаленно — из любой точки мира через интернет.

При всем этом приложение не требует мощного компьютера, а его размер после установки не превышает 400 Мб. Для нормальной работы достаточно мощностей ПК, который справляется с запуском Windows 7. Русский язык на данный момент не поддерживается. Программу можно использовать бесплатно, но с ограничениями по количеству сканируемых IP-адресов/хостов (максимум 1000 единиц).

У системы администрирования Lansweeper довольно обширные функциональные возможности. Вот лишь их малая часть:

  • Многофункциональный сканер с гибкими настройками (вкладка «Scanning»). Среди множества режимов сканирования присутствует и нужный нам — сканирование IP-адресов в заданном диапазоне. Процедура (как, впрочем, и большинство других) может быть запущена немедленно либо в заданное пользователем время (по дням недели, по часам или рекурсивно — каждые несколько минут/часов).

Lansweeper

  • Получение всей доступной информации об обнаруженных в процессе сканирования устройствах/хостах, вывод списка общедоступных сетевых ресурсов и многое другое. Эти сведения размещаются во вкладке «Assets» после завершения сканирования.

Lansweeper

  • Информация обо всех обнаруженных устройствах/хостах автоматически сохраняется во внутренней базе данных программы. Пользователь может прикреплять к устройствам/хостам файлы, группировать их по своему усмотрению, оставлять комментарии или даже расставлять их на виртуальной карте квартиры, офиса и т.д. (планировку можно загрузить отдельно).

Lansweeper

  • Наличие множества сетевых функций, применяющихся непосредственно к устройствам/хостам. Большинство доступных по умолчанию функций выполняются при использовании стандартных средств администрирования Windows. Если и несколько самостоятельных функций, а при необходимости пользователь может доустанавливать дополнительные инструменты (доступны для скачивания с официального сайта). Среди таких функций можно отметить, к примеру, сетевое тестирование устройства при использовании различных сетевых протоколов/инструментов: TCP, UDP, SIP, HTTP, SNMP, VPRO RMCPPing, DNS-SD, UPNP и др. Эта функция сканирования позволяет, к примеру, изучить номера открытых и закрытых TCP-портов на устройстве/хосте:

Lansweeper

Таким образом, Lansweeper можно назвать одним из самых мощных бесплатных IP-сканеров. Недостатком системы является, разве что, относительная сложность управления для пользователей, мало знакомых с администрированием сетей. Тем не менее, приложением несложно научиться пользоваться — все же это не такой уж и узкоспециализированный программный продукт для профессиональных системных администраторов.

  • Инструкции
  • Лучшие программы
  • Полезные советы

Сканирование и обнаружение устройств в сети

Как произвести сканирование сетевых устройств: пошаговое руководство.

В этой статье мы рассмотрим функционал сканера программы Total Network Inventory, разберемся как сканировать сеть на наличие устройств, как произвести анализ сетевого оборудования, а главное получить полезную информацию о всех процессах в сети вашей организации.

1. Для чего нужно сканировать компьютеры и устройства в сети?

2. Какими методами можно сканировать локальную сеть с помощью TNI?

3. Сканирование сети с помощью Сканера IP адресов.

3.1. Сканирование устройств на базе MS Windows;

3.2. Сканирование устройств Linux, а также других Unix подобных ОС и macOS;

4. Как сканировать устройства в сети по протоколу SNMP.

1. Для чего нужно сканировать компьютеры и устройства в сети?

Прежде, чем приступить непосредственно к сканированию, стоит разобраться, для чего рекомендуют проводить эту процедуру. Любая организация обладает большим количеством техники, без которой ряд рабочих процессов был бы невозможным. Помимо компьютеров на базе различных ОС (Windows, Linux, macOS), серверов, ноутбуков, нас окружают камеры видеонаблюдения, маршрутизаторы, роутеры, принтеры, VOIP-телефония, устройства ИБП и т.п. У всех них есть одна общая деталь — наличие сетевого интерфейса. Для корректного функционирования каждой единицы техники важны не только правильно выполненные первоначальные настройки, но и дальнейшее поддержание оборудования в рабочем состоянии. К тому же, достаточно часто встречается такая ситуация, когда системный администратор (старый уволился, новый приступил к работе, и т.п.), не отслеживал изменения в сети и, как следствие, не ориентируется в рабочих процессах: не владеет информацией об IP адресах, не знает когда последний раз проводилось сканирование, не ориентируется в инструментах, которые применяются или применялись для проверки работоспособности сети и т.п. В таких случаях, сканирование сетевых устройств является обязательной процедурой для получения необходимой информации.

Помимо вышеописанных процессов, важно знать и архитектуру вашей сети. Эти данные необходимы, если вы собираетесь сделать апгрейд технического парка, провести аудит, подключить дополнительный канал связи (запасной или ускоренный). Также, достаточно часто, корпоративная сеть может стать мишенью для различных кибер-угроз. В этом случае, своевременное выявление сторонних устройств в сети помогает предотвратить вмешательство в работу и хищение важных данных.

2. Какими методами можно сканировать локальную сеть с помощью TNI?

Эффективным инструментом для сканирования сети на наличие устройств, который широко используют администраторы является Total Network Inventory. Он имеет множество встроенных полезных функций и высокие показатели информативности. Основные методы сканирования, которые поддерживает программа:

сканирование с использованием WMI – представляет собой стандартный набор интерфейсов доступа к устройствам, приложениям и параметрам операционной системы Windows;

удаленное сканирование по протоколу SMB – для сбора наиболее полной информации о сканируемой системе. Метод позволяет удаленно запускать агент сканирования с необходимыми локальными привилегиями для проверки и удаленного доступа к файлам, загрузки данных реестра и сбора дополнительных данных от системных утилит.

удаленное сканирование по протоколу RPC – проверка клиент-серверных приложений на базе ОС Windows;

удаленное сканирование с использованием протокола SSH – подходит для Unix систем и macOS;

удаленное сканирование с использованием протокола SNMP — сетевые принтеры, управляемые коммутаторы, маршрутизаторы, xDLS-модемы, IP-телефоны, беспроводные точки доступа и т.п. Чаще всего именно эти устройства поддерживают данный протокол, а TNI, в свою очередь, позволит их просканировать;

низкоуровневое сканирование оборудования — TNI загружает и устанавливает драйвер для сбора данных об оборудовании на низком уровне, например: информация из SPD о модулях памяти, данные жестких дисков и т.п.;

3. Сканирование сети с помощью Сканера IP адресов.

Рассмотрим работу Сканера IP адресов, который подходит для работы с такими ОС как Windows и Unix – системы. Также доступно сканирование нестандартного сетевого оборудования, которое использует сетевые протоколы, не принадлежащие к семействам вышеупомянутых систем.

Стоит уточнить, что программа позволяет работать с таким оборудованием как: сетевые хранилища устройств (NAS), принтеры, роутеры, коммутаторы, UPS устройства, VOIP телефоны, веб-серверы на базе различных ОС. Для всего оборудования, алгоритм сканирования практически одинаковый (отличается только протоколом, который использует техника в своей работе).

Базовый алгоритм сканирования:

  • После запуска TNI, необходимо выбрать закладку Сканер, укзать диапазон IP адресов для сканирования, работчую группу или домен Active Directory.
  • Ввести пароль администратора и запустить сканирование.
  • Программа быстро просканирует сеть и предоставит информацию в виде дерева. Во вкладке «Просмотр и Отчеты» вы увидите полную информацию о любом из выбранных устройств.
  • Данные можно просматривать, строить отчеты и экспортировать в разных форматах.

3.1 Сканирование устройств на базе MS Windows.

Существует 3 типа сканирования для этого типа ОС. Рассмотрим первый — удаленное сканирование по протоколу SMB:

  • на удаленный ПК в администраторскую общую папку admin$ загрузите исполняемый файл tniwinagent.exe.
  • главный модуль TNI соединится с Диспетчером служб удаленного компьютера, инсталлирует и запустит агент как службу.
  • агент просканирует оборудование, сохранит собранную информацию в сжатый файл и остановится.
  • главный модуль импортирует полученный файл в хранилище.
  • служба-агент деинсталлируется, исполняемый файл удалится.

Удаленное сканирование по протоколу RPC — не имеет преимуществ перед вышеописанным и рекомендуется к использованию только тогда, когда по тем или иным причинам использование протокола SMB невозможно:

  • главный модуль TNI подключается напрямую к службе WMI целевого компьютера;
  • через протокол RPC осуществляется подключение и сбор информации удаленно.

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

3.2. Сканирование устройств Linux, а также других Unix подобных ОС и macOS.

Сканирование компьютеров под управлением macOS (только 64 бит), Linux, FreeBSD и ESX/ESXi осуществляется при помощи исполняемого файла, который, через протоколы SSH и SCP/SFTP загружается на удаленный ПК и собирает информацию. Есть определенные особенности, которые нужно принять во внимание перед началом сканирования:

  • на удаленном компьютере должен быть запущен сервер SSH-2 (TCP на 22 порт, либо в настройках приложения задать «Особый порт SSH») с поддержкой SFTP или SCP, и сетевой экран должен разрешать к нему доступ;
  • пользователю, от имени которого производится сканирование, разрешен доступ к SSH-серверу (опция сервера AllowUsers). Если сканирование производится от пользователя root, то для него должна быть также выставлена опция PermitRootLogin — yes;
  • пользователь, должен иметь права администратора (для ОС Linux, если он не root — должен находиться в списке sudoers).

Удаленное сканирование с использованием протокола SSH.

  • TNI производит подключение к удаленному компьютеру по указанному протоколу — в домашней папке пользователя, от имени которого производится сканирование, создается временная папка, в которую по протоколу SFTP или SCP передается агент сканирования.
  • агент сканирования запускается и по завершении работы создает файл с собранной о сети информацией.
  • файл с информацией передается по протоколу SFTP или SCP обратно в TNI, который, в свою очередь, добавляет его в открытое хранилище.
  • временная папка с агентом и созданным им файлом удаляется.

4. Как сканировать устройства в сети с помощью SNMP.

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

Алгоритм запуска и сканирования такой же, как и у вышеописанной функции за исключением того, что выбрать нужно функцию «SNMP».

В завершение.

Чтобы сканировать устройства в сети, стоит использовать проверенное программное обеспечение. Вы забудете о ручном вводе команд в консоль, сможете провести детальное сканирование любого сетевого оборудования в сети под управленим самых различных ОС. Загрузите Total Network Inventory и получите всю необходимую информацию всего за пару кликов в любое удобное для вас время.

Обнаружение сетевых устройств

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

Disclaimer
Автор не имеет профильного образования, связанного с администрированием сетей, поэтому наверняка имеются неточности и упомянуто не всё, что можно.

Обнаружение

Для обнаружения устройства, т.е. определения есть ли на выбранном ip-адресе что-либо, можно применить следующие методы:

  • ping сканирование
    Как ни странно, это самый простой и распространенный способ.
  • Проверка открытых TCP-портов
    Если на устройстве отключен ответ на ping, то можно попробовать установить соединение по какому-либо TCP-порту. В виду того, что портов много и проверка каждого занимает значительное время, обычно проверяются только самые распространенные, напр. 80 или 443, используемые для веб-интерфейса устройства.
  • Проверка работы UDP служб
    UDP протокол не отправляет подтверждения о получении запроса и поэтому в общем виде сканирование UDP-портов невозможно. Однако можно попробовать опросить службы, прослушивающие UDP-порт и отправляющие ответ на запрос, напр. SNMP (порт 161) или IPMI (порт 623). В случае, если получен ответ, отличный от таймаута, то устройство обнаружено.
  • ARP сканирование
    Помимо обычных ICMP запросов, которые используют утилиты ping, для устройств в том же широковещательном L2-домене можно воспользоваться более быстрым arping: по диапазону ip-адресов рассылаются широковещательные ARP пакеты вида «компьютер с IP-адресом XXX, сообщите свой MAC-адрес компьютеру с МАС-адресом запросившего», и если ответ получен, то устройство считается обнаруженным.
  • CDP/LLDP
    Если в сети используется протокол LLDP (или аналог CDP), то устройства могут собирать сведения о своих соседях, которые можно считать обнаруженными. Эти данные доступны по SNMP.

Сбор сведений

После того, как устройство обнаружено, можно переходить к сбору сведений о нем.
Используя ARP протокол, по ip можно получить MAC-адрес, а по нему вероятного производителя (часть оборудования допускает смену адреса, так что метод не очень надежен). Далее можно воспользоваться утилитой nmap, которая сканируя открытые порты, сверяется со своей базой отпечатков и делает предположение об используемой операционной системе, её версии и типе устройства.

Получение типа устройства и используемой ОС при помощи nmap

nmap -O -v 192.168.0.1 Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-04 01:17 RTZ 2 (ceia) Initiating ARP Ping Scan at 01:17 Scanning 192.168.0.1 [1 port] Completed ARP Ping Scan at 01:17, 0.70s elapsed (1 total hosts) Initiating Parallel DNS resolution of 1 host. at 01:17 Completed Parallel DNS resolution of 1 host. at 01:17, 0.00s elapsed Initiating SYN Stealth Scan at 01:17 Scanning 192.168.0.1 [1000 ports] Discovered open port 80/tcp on 192.168.0.1 Discovered open port 49152/tcp on 192.168.0.1 Discovered open port 1900/tcp on 192.168.0.1 Completed SYN Stealth Scan at 01:17, 0.13s elapsed (1000 total ports) Initiating OS detection (try #1) against 192.168.0.1 Retrying OS detection (try #2) against 192.168.0.1 WARNING: OS didn't match until try #2 Nmap scan report for 192.168.0.1 Host is up (0.00s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http 1900/tcp open upnp 49152/tcp open unknown MAC Address: A0:F3:C1:35:21:58 (Tp-link Technologies) Device type: WAP Running: Linux 2.4.X OS CPE: cpe:/o:linux:linux_kernel:2.4.36 OS details: DD-WRT v24-sp1 (Linux 2.4.36) Network Distance: 1 hop

Чтобы получить более подробные сведения по устройству потребуется один из следующих способов:

    SNMP
    Протокол SNMP почти всегда поддерживаем маршрутизаторами и коммутаторами; имеется в Windows (соответствующая служба по умолчанию отключена); для Linux требуется установка демона snmpd. По всей видимости последняя третья версия достаточно сложна в реализации, поэтому предыдущая версия 2с до сих пор актуальна, хотя и не рекомендуема из-за отсутсвия шифрования при передаче данных. Протолок работает на 161 UDP-порту устройства.

Для работы с SNMP можно использовать пакет утилит Net-SNMP. Чтобы получить, к примеру, описание устройства, надо указать версию протокола, пароль на чтение (community read, по умолчанию public) и адрес, в нотации SNMP называемый OID (object identificator) и состоящий из чисел и точек. Все адреса устройства можно представить в виде дерева, где адреса отсортированы в лексикографическом порядке. Протокол позволяет запросить текущее значение по адресу, а также адреса следующие за текущим.

Получение описания устройства при помощи snmpget

snmpget -v 2c -c public 192.168.0.102 1.3.6.1.2.1.1.1.0 SNMPv2-MIB::sysDescr.0 = STRING: Linux debian 3.16.0-4-586 #1 Debian 3.16.43-2+deb8u2 (2017-06-26) i686 

Стандартный набор адресов весьма ограничен и содержит описание устройства, контакты, расположение и время работы (uptime). Остальные адреса зависят от производителя устройства и могут быть получены сканированием, например, утилитой snmpwalk. К счастью, Linux и Windows имеют типовые адреса для сетевых интерфейсов и загруженности процессоров/памяти, поэтому для них лишь знать (или уметь определить) используемую операционную систему.

Получение описания дисков Linux при помощи snmpwalk

snmpwalk -v 2c -c public 192.168.0.102 1.3.6.1.4.1.2021.9.1.2 UCD-SNMP-MIB::dskPath.1 = STRING: / UCD-SNMP-MIB::dskPath.2 = STRING: /var UCD-SNMP-MIB::dskPath.3 = STRING: / UCD-SNMP-MIB::dskPath.4 = STRING: /run UCD-SNMP-MIB::dskPath.5 = STRING: /dev/shm UCD-SNMP-MIB::dskPath.6 = STRING: /run/lock UCD-SNMP-MIB::dskPath.7 = STRING: /sys/fs/cgroup

Получение описания дисков Windows при помощи snmpwalk

snmpwalk -v 2c -c public localhost 1.3.6.1.2.1.25.2.3.1.3 HOST-RESOURCES-MIB::hrStorageDescr.1 = STRING: C:\ Label: Serial Number a65ceb77 HOST-RESOURCES-MIB::hrStorageDescr.2 = STRING: D:\ Label: Serial Number ded9f83e HOST-RESOURCES-MIB::hrStorageDescr.3 = STRING: E:\ Label: Serial Number 8e764a1 HOST-RESOURCES-MIB::hrStorageDescr.4 = STRING: I:\ HOST-RESOURCES-MIB::hrStorageDescr.5 = STRING: Virtual Memory HOST-RESOURCES-MIB::hrStorageDescr.6 = STRING: Physical Memory

Данные можно запрашивать, разумеется, только с Windows машин.

Получение информации об оперативной памяти в PowerShell

Get-WmiObject win32_OperatingSystem |%KB`nFree Physical Memory : KB`nTotal Virtual Memory : KB`nFree Virtual Memory : KB" -f $_.totalvisiblememorysize, $_.freephysicalmemory, $_.totalvirtualmemorysize, $_.freevirtualmemory> Total Physical Memory: 2882040KB Free Physical Memory : 612912KB Total Virtual Memory : 5762364KB Free Virtual Memory : 1778140KB

Также имеется консольная утилита wmic и ее Linux-порт

Получение производителя устройства при помощи wmic

wmic /USER:admin /PASSWORD:mypassword /NODE:"192.168.0.100" computersystem get Manufacturer Manufacturer Gigabyte Technology Co., Ltd.

Получение информации о CPU по SSH

cat /proc/cpuinfo processor : 0 Processor : AArch64 Processor rev 4 (aarch64) Hardware : sun50iw1p1 BogoMIPS : 48.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x41 CPU architecture: 8 CPU variant : 0x0 CPU part : 0xd03 CPU revision : 4 processor : 1 . 

Как это работает на примере Zabbix

Как известно Zabbix может самостоятельно обнаруживать новые устройства в сети и автоматически опрашивать некоторые их параметры. Называется это — Low Level Discovery.

Обнаружение устройств задается правилами сетевого обнаружения, которые комбинируют перечисленные ранее методы обнаружения, определяют доступно ли устройство и какой шаблон к нему применить (обычно исследуется описание устройства). Шаблон содержит список свойств, которые можно получить с устройства, а также правила для обнаружения и создания новых, выполняемые по таймеру.

В случае с SNMP такое правило может выглядеть примерно так: перебрать все дочерние элементы узла 1.3.6.1.2.1.2.2.1.8 (правило обнаружения) и для каждого найденного элемента (число, помещаемое в ) добавить новые метрики, задаваемые через прототипы элементов данных, 1.3.6.1.2.1.2.2.1.10. и 1.3.6.1.2.1.2.2.1.16. , если их еще нет. Подробнее здесь.

В случае агента правило будет выглядеть немного иначе: запросить у агента одно из discovery-свойств, к примеру system.cpu.discovery , получить список процессоров в виде json

и для каждого элемента добавить system.cpu.load[] , если такой метрики еще нет. Стоит отметить, что Zabbix-агент позволяет создавать свои элементы ( UserParameter ), которые могут быть запрошены, и поэтому легко можно реализовать, например, обнаружение файлов и отслеживание их размера в заданной папке. Подробнее здесь.

Заключение

Как видно всё достаточно просто и никакой магии нет. Если вы знаете еще какие-либо способы обнаружения устройств или получения их свойств, то просьба сообщить о них.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *