# Сканирование сетей. Лабораторная работа №2 (HW)

## Ход работы

1. Подготовим 2 хоста с установленным nmap:

`kali` (`192.168.103.88`)

![alt](img/image01.png)

`ubuntu` (`192.168.103.100`)

![alt](img/image02.png)

2. Просканируем хост `ubuntu` с `kali` различными методами.
   
![alt](img/image03.png)

![alt](img/image05.png)


3. Просканируем хост `kali` с `ubuntu` различными методами.

![alt](img/image04.png)

![alt](img/image06.png)

Результаты сканирований не отличаются, результат `Host seems down` мы получили только при использовании параметра `PM`, который использует netmask request discovery probe.

4. Просканируем машины с помощью команды `nmap <ip-адрес>`

`kali` -> `ubuntu`

![alt text](img/image08.png)

`ubuntu` -> `kali`

![alt text](img/image07.png)

В таком виде команда выполняет сканирование доступности и портов (1000 популярных) указанного адреса. Видим, что на `kali` открыт только 22/tcp (служба SSH), а на `ubuntu` -- 21/tcp, 22/tcp, что соответствует службам FTP и SSH соответственно.

5. Выполним сканирование порта 21/tcp методами TCP SYN Scan, TCP Connect Scan, UDP Scan, TCP FIN Scan, TCP NULL Scan, TCP Xmas Scan и TCP ACK Scan.
   
```bash
nmap 192.168.103.100 -sS -p 21
nmap 192.168.103.100 -sT -p 21
nmap 192.168.103.100 -sA -p 21
nmap 192.168.103.100 -sU -p 21
nmap 192.168.103.100 -sN -p 21
nmap 192.168.103.100 -sF -p 21
nmap 192.168.103.100 -sX -p 21
```

![](img/image09.png)

6. На машине `ubuntu` с помощью `docker` запустим веб-сервер `nginx` на порту `2839/tcp`

![](img/image10.png)

7. Снова просканируем машину с помощью команды `nmap 192.168.103.100`

![alt text](img/image11.png)

Нового порта не видим в силу того, что `nmap` использует 1000 предопределенных портов, в которые `2839/tcp` не входит.

8. Просканируем порт указав его вручную.

![alt text](img/image12.png)

Порт появился как открытый.

9. Выполним сканирование порта методами из п.5.
   
```bash
nmap 192.168.103.100 -sS -p 2839
nmap 192.168.103.100 -sT -p 2839
nmap 192.168.103.100 -sA -p 2839
nmap 192.168.103.100 -sU -p 2839
nmap 192.168.103.100 -sN -p 2839
nmap 192.168.103.100 -sF -p 2839
nmap 192.168.103.100 -sX -p 2839
```
![alt text](img/image13.png)

## Выводы

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

**Выполнил:** Харитонов Марат Русланович, студенческий билет М235314.

