nmap е инструмент за мрежово сканиране, който може да се използва за цял набор от задачи за откриване на мрежа, включително сканиране на пристанища, изброяване на услуги и снемане на пръстови отпечатъци на операционната система.

За да инсталирате nmap на Ubuntu или Raspbian, използвайте:

 sudo apt-get инсталирате nmap 

За версии на Linux, които използват yum, като Fedora, стартирайте това като root:

 yum инсталирате nmap 

Най-простото призоваване е просто да предоставите име на хост или IP адрес на машина, която искате да сканирате. nmap ще сканира машината, за да види кои пристанища са отворени. Например:

 nmap 192.168.1.101 

Всички TCP / IP връзки използват номер на порта, за да идентифицират уникално всяка мрежова услуга. Например, връзките в уеб браузъра се правят на порт 80; имейлите се изпращат на порт 25 и се изтеглят на пристанище 110; защитени корпусни връзки се правят на порт 22; и така нататък. Когато nmap сканира порт, той показва кои пристанища са отворени и дали могат да получат връзки. На свой ред това показва кои услуги се изпълняват на отдалечената машина.

От гледна точка на сигурността, колкото по-малко услуги се обслужват от хост, толкова по-сигурна е. Това е така, защото има по-малко "дупки", които атакуващият може да използва, за да се опита да получи достъп до машината. Също така е полезен начин да извършите предварителна проверка, за да видите дали дадена услуга се изпълнява (и приемате връзки). Бързото сканиране на сървъра ми в Ubuntu изглежда така:

За да откриете кой софтуер осигурява на сървъра зад всеки отворен порт, използвайте опцията -sV :

 nmap-sV 192.168.1.101 

Ето резултатите от една Raspberry Pi:

nmap правилно е открил, че OpenSSH сървърът се използва за предоставяне на услуга SSH на Pi. Инструментът също така отбелязва, че Pi работи с Linux!

nmap е в състояние да извършва разширено откриване на операционна система, като използва опцията -O . За откриване на операционни системи, nmap трябва да се изпълнява с права на root. За Ubuntu и Raspbian:

 sudo nmap -O 192.168.1.43 

Ето резултата от сканиране, извършено срещу машина с Windows XP:

Ако искате да сканирате повече от един хост едновременно, nmap ви позволява да зададете няколко адреса или да използвате диапазони на адресите. За да сканирате повече от един хост, просто добавете допълнителни адреси към списъка с параметри (всеки от които е разделен с SPACE). Например, за да сканирате отворени портове на 192.168.1.1, 192.168.1.4 и 192.168.1.43, използвайте:

 nmap 192.168.1.1 192.168.1.4 192.168.1.43 

За да зададете диапазон на адресите, използвайте символа на таблото. Например, за да сканирате първите пет хоста в мрежата си, можете да използвате:

 nmap 192.168.1.1-5 

Продукцията ще изглежда така:

Първият домакин е рутер, доставен от моя интернет доставчик (на адрес 192.168.1.1), а вторият е моя Raspberry Pi (на 192.168.1.4).

Книга и резюме

Въпреки че nmap е лесен за употреба, той предлага набор от разширени функции. Следващата част от тази серия ще докосне някои от по-напредналите приложения, но в заключение тук е кратък списък с други команди, които може да намерите полезни:

За да проверите дали даден отвор е отворен, използвайте -p последван от номера на порта или името на порта, например:

 nmap -p ssh 192.168.1.4 

Той може да бъде комбиниран с флага -sV да се определи версията на прикачения към този порт софтуер:

 nmap -p ssh -sV 192.168.1.4 

За да откриете кои хостове са живи в мрежата, използвайте флага -sn . Това само ще ping на хостове, посочени в диапазона на адресите. Например:

 nmap -sn 192.168.1.1-254 

Като заключителна дума за предупреждение, не провеждайте сканиране срещу хостове, които не контролирате или нямате разрешение за сканиране. Прекомерното сканиране може да се интерпретира като атака или да прекъсне ненужно услугите.

Кредит на изображението: Fiber Network Server от BigStockPhoto