Pavasara atlaide –€10 visiem moduļu kursiem Apskatīt →
Programmas Mācību ceļš Sertifikācija Dibinātājs Uzņēmumiem Simulatori Blogs
← Atpakaļ uz blogu
Blogs

Nmap pamati iesācējiem — tīkla skenēšana no pirmā pieslēguma

2026. gada 2. marts · 7 min lasīšana · Madars Balodis

Ja kiberdrošībā ir viens rīks, kura nosaukumu dzird absolūti visur — tas ir Nmap. To izmanto iesācēji mājās, profesionālie testētāji korporatīvo tīklu drošības auditos un drošības pētnieki ievainojamību meklēšanai. Tas parādās filmās, CTF sacensībās un ikdienas tīkla analīzē.

Bet kas tieši tas ir? Un kā sākt?

Kas ir Nmap?

Nmap (Network Mapper) ir atvērtā pirmkoda tīkla skenēšanas rīks, ko 1997. gadā izveidoja drošības pētnieks Gordons Laions (pazīstams kā Fyodor). Trīsdesmit gadu laikā tas ir kļuvis par nozares standartu — brīvi pieejams, aktīvi uzturēts un darbojas uz Linux, macOS un Windows.

Nmap ļauj:

  • Atklāt aktīvus resursdatorus tīklā — kuri datori ir ieslēgti un pieejami
  • Noskaidrot atvērtos portus — kur klausās pakalpojumi
  • Noteikt pakalpojumu versijas — kāda programmatūra un kurā versijā darbojas
  • Atpazīt operētājsistēmu — vai pretim ir Linux, Windows vai kaut kas cits
  • Palaist skriptus ievainojamību meklēšanai ar iebūvēto skriptu dzinēju (NSE)

Pirms sāc — svarīgs juridisks brīdinājums

Nmap ir divpusīgs rīks. Tāpat kā āmurs — var būvēt, var arī sabojāt.

Neautorizēta tīkla skenēšana Latvijā ir pretlikumīga. Krimināllikuma 241. pants paredz atbildību par neautorizētu piekļuvi datorsistēmām. Tas attiecas arī uz skenēšanu bez īpašnieka atļaujas — pat ja tu neko nenolasi un neizmaini.

Likumīgi skenēt drīkst tikai:

  • Savu mājas tīklu un sev piederošas ierīces
  • Darba tīklu, ja tev ir rakstiska atļauja no uzņēmuma vadības
  • Speciāli šim nolūkam paredzētas mācību platformas (piemēram, TryHackMe)
  • scanme.nmap.org — serveri, ko Nmap komanda uztur tieši trenēšanās vajadzībām

Ja tu mācies — izmanto tieši šos resursus. Nekad neskenē kaimiņa Wi-Fi, uzņēmumu tīklus vai nejaušas interneta adreses.


Uzstādīšana

Linux (Debian / Ubuntu)

sudo apt update && sudo apt install nmap

Linux (Fedora / RHEL / AlmaLinux)

sudo dnf install nmap

macOS

Nepieciešams Homebrew:

brew install nmap

Windows

Lejupielādē uzstādīšanas failu no nmap.org/download. Uzstādīšanas laikā tiek piedāvāts arī grafiskais saskarsnis Zenmap — noderīgs vizuālai apskatei, bet svarīgākās prasmes apgūst ar komandrindas versiju.

Pārbaudi uzstādīšanu:

nmap --version

Kā darbojas tīkla skenēšana?

Lai saprastu Nmap, jāsaprot divi pamatjēdzieni: ports un porta stāvoklis.

Ports ir cipars no 0 līdz 65535, kas identificē konkrētu pakalpojumu datorā. Piemēram:

PortsPakalpojums
22SSH (attālinātā piekļuve)
80HTTP (vietnes bez šifrējuma)
443HTTPS (šifrētas vietnes)
21FTP (failu pārsūtīšana)
3306MySQL datubāze
3389RDP (Windows attālinātais darbvirsmas protokols)

Nmap sūta tīkla pakotnes uz šiem portiem un analizē atbildes. Atkarībā no atbildes (vai tās neesamības) porta stāvoklis tiek klasificēts šādi:

StāvoklisNozīme
open (atvērts)Pakalpojums aktīvi klausās — var veidot savienojumu
closed (aizvērts)Resursdators ir sasniedzams, bet neviens pakalpojums neklausās
filtered (filtrēts)Ugunsmūris bloķē pakotnes — Nmap nevar noteikt stāvokli
open/filteredNmap nevar droši noteikt, vai atvērts vai filtrēts

Pirmā skenēšana

Sāksim ar Nmap komandas testu serveri scanme.nmap.org — tas ir paredzēts tieši šādam nolūkam:

nmap scanme.nmap.org

Nmap skenē 1000 populārākos portus un izvada kaut ko līdzīgu:

Starting Nmap ( https://nmap.org )
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.11s latency).
Not shown: 996 closed tcp ports (conn-refused)
PORT      STATE SERVICE
22/tcp    open  ssh
80/tcp    open  http
9929/tcp  open  nping-echo
31337/tcp open  Elite

Nmap done: 1 scanned in 4.23 seconds

Ko redzam?

  • Resursdators ir aktīvs (latence 0.11 sekundes)
  • 4 porti ir atvērti, 996 aizvērti
    1. ports — SSH, 80. ports — HTTP vietne

Galvenie parametri

Portu norādīšana (-p)

Pēc noklusējuma Nmap skenē 1000 populārākos portus. Ja vajag konkrētus vai visus:

# Konkrēts ports
nmap -p 80 192.168.1.1

# Vairāki porti
nmap -p 22,80,443 192.168.1.1

# Portu diapazons
nmap -p 1-1000 192.168.1.1

# Visi 65535 porti
nmap -p- 192.168.1.1

Skenēšanas veidi

TCP savienojuma skenēšana (-sT) — pamata veids, neprasa administratora tiesības, taču atstāj pēdas servera žurnālos:

nmap -sT 192.168.1.1

SYN skenēšana (-sS) — ātrāka un diskrētāka, jo savienojums netiek pabeigts. Prasa root / administratora tiesības:

sudo nmap -sS 192.168.1.1

UDP skenēšana (-sU) — lēna, bet svarīga, jo daudzas kritiskas ievainojamības slēpjas UDP portos (DNS — 53, SNMP — 161, DHCP — 67/68):

sudo nmap -sU -p 53,161,67 192.168.1.1

Resursdatoru atklāšana bez porta skenēšanas (-sn)

Ja vēlies tikai uzzināt, kuras ierīces tīklā ir aktīvas, nevis skenēt portus:

nmap -sn 192.168.1.0/24

Tas nosūta ICMP ping (un ARP vietējā tīklā) uz visām adresēm apakštīklā un parāda, kuras atbildēja. Ļoti noderīgi, lai saprastu mājas tīkla topogrāfiju.


Pakalpojumu versiju un OS noteikšana

Versiju noteikšana (-sV)

Atvērts ports vēl nenozīmē zināmu apdraudējumu. Svarīgi ir zināt, kāda versija darbojas — vecas versijas var saturēt zināmas ievainojamības:

nmap -sV 192.168.1.1

Izvade var izskatīties šādi:

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.9p1 Ubuntu 3ubuntu0.10
80/tcp open  http    Apache httpd 2.4.58

Tagad zinām ne tikai ka ports ir atvērts, bet arī precīzu programmatūru un versiju.

Operētājsistēmas noteikšana (-O)

Nmap analizē tīkla atbilžu modeļus (TCP/IP fingerprinting), lai uzminētu operētājsistēmu. Prasa root tiesības:

sudo nmap -O 192.168.1.1

Rezultāts nav vienmēr 100% precīzs — tas ir labots uzminējums, nevis garantija.

Agresīvā skenēšana (-A)

Apvieno versiju noteikšanu (-sV), OS noteikšanu (-O), izsekošanas ceļu (traceroute) un pamata NSE skriptus vienā komandā:

sudo nmap -A 192.168.1.1

Šī komanda sniedz vislabāko pārskatu, taču ir arī vislēnākā un vislabāk pamanāmā no drošības sistēmu puses.


Ātruma vadība (-T)

Nmap piedāvā sešus ātruma līmeņus, ko nosaka ar -T0 līdz -T5:

ParametrsNosaukumsPielietojums
-T0ParanojaĻoti lēns, praktiski neatklājams
-T1SlēpšanāsLēns, ģenerē maz satiksmes
-T2PieklājīgsLēns, saudzē joslas platumu
-T3Normāls (noklusējums)Sabalansēts ātrums
-T4AgresīvsĀtrāks — piemērots ātram tīklam
-T5NeprātīgsMaksimālais ātrums, var pazaudēt rezultātus

Mājās vai CTF vidē parasti pietiek ar -T4. Reālā iespiešanās testēšanā rūpīgi izvēlas ātrumu, lai neizraisītu drošības trauksmes.

nmap -T4 192.168.1.1

Izvades saglabāšana

Skenēšanas rezultāti bieži jāsaglabā ziņojumam vai turpmākai analīzei:

# Cilvēkam lasāms formāts
nmap -oN skenesana.txt 192.168.1.1

# XML formāts (integrācijai ar citiem rīkiem)
nmap -oX skenesana.xml 192.168.1.1

# Vienlaikus visi formāti (pievieno paplašinājumus automātiski)
nmap -oA skenesana 192.168.1.1

Īss ieskats NSE skriptos

Nmap satur iebūvētu Nmap Skriptu Dzinēju (NSE — Nmap Scripting Engine) ar simtiem skriptu dažādiem mērķiem: sākot no HTTP galveņu pārbaudes līdz zināmu ievainojamību atklāšanai.

# Pamata skriptu kategorija (piemēram, HTTP informācija, SSH iespējas)
nmap -sC 192.168.1.1

# Ievainojamību kategorijai paredzētie skripti
sudo nmap --script vuln 192.168.1.1

# Konkrēts skripts — pārbaudīt HTTP virsrakstus
nmap --script http-headers 192.168.1.1

NSE skripti ir plaša tēma — tā ir atsevišķa mācīšanās nodarbība, taču ir svarīgi zināt, ka šī iespēja pastāv.


Praktiskās trenēšanās iespējas

scanme.nmap.org — Nmap komandas uzturēts serveris, ko var brīvi skenēt. Pamata komandu izmēģināšanai tas ir ideāls sākumpunkts.

Mājas tīkls — skenē pats savu maršrutētāju un ierīces. Ātri uzzināsi, kādi porti ir atvērti tavā mājas printerī vai IP kamerā — un bieži vien rezultāts ir pārsteigums.

# Atrast savu vietējo tīkla diapazonu
ip route   # Linux
ipconfig   # Windows

TryHackMe — mācību platforma ar īpaši Nmap veltītiem uzdevumiem kontrolētā vidē. Ceļš “Pre-Security” un “Jr Penetration Tester” satur pilnīgus Nmap moduļus ar praktiski veidotiem uzdevumiem.


Bieži lietotu komandu apkopojums

# Ātra pamata skenēšana
nmap 192.168.1.1

# Visi porti ar versijām
nmap -p- -sV 192.168.1.1

# Pilna informācija (OS + versijas + skripti)
sudo nmap -A 192.168.1.1

# Aktīvo resursdatoru atklāšana tīklā
nmap -sn 192.168.1.0/24

# Ātra skenēšana ar rezultātu saglabāšanu
nmap -T4 -sV -oA rezultats 192.168.1.1

# Ievainojamību pārbaude (tikai ar atļauju!)
sudo nmap --script vuln -p 80,443 192.168.1.1

Nmap ir rīks, ko apgūst pakāpeniski. Sāc ar pamata skenēšanu, iemācies lasīt izvadi un saprast porta stāvokļus — tas jau dod ievērojamu priekšstatu par jebkura tīkla struktūru.

Nākamais solis: kombinēt Nmap ar Wireshark, lai redzētu, kādas pakotnes Nmap faktiski sūta. Tā iegūsi dziļu izpratni par TCP/IP protokola darbību, kas ir pamats jebkurai tīkla drošības analīzei.

Vēlies apgūt Nmap, Wireshark un tīklu skenēšanu strukturētā kursā ar praktisku laboratoriju vidi? Apskati mūsu Tīklu Drošības moduli — kompakts, praktiski orientēts kurss latviešu valodā ar reāliem uzbrukumu scenārijiem.