A hálózatépítésben a port érdekes funkció. Ez a hálózati forgalom egy módja a célalkalmazás vagy szolgáltatás azonosítására. Minden folyamat/szolgáltatás egyedi portot kap. A port mindig hozzá lesz rendelve a gazdagép IP -címéhez a protokollal együtt.
Ez a kedvenc metaforám, hogy leírjam, mi az a kikötő. Képzeljünk el egy rakománnyal megrakott hajót, amely távoli földre utazik. Milyen információ szükséges a rendeltetési hely megfelelő eléréséhez? Az egyszerűség kedvéért tegyük fel, hogy szüksége van az országra (az IP -címre) és a kikötő a hajó kiköt.
Ebben az útmutatóban nézze meg, hogyan sorolja fel a nyitott portokat Linuxon.
Portok Linuxon
A portok a kommunikáció végpontjaként működnek. Ez egy 16 bites szám (0 és 65535 között). Bár a tartomány nagy, a könnyű használat érdekében a portokat három kategóriába sorolják. Minden kategória a portérték tartománya:
- 0-1023: Ezek a jól ismert portok, más néven rendszerportok, amelyek a hálózati szolgáltatások széles skáláját kínáló rendszerfolyamatok számára vannak fenntartva. Egy jól ismert porthoz való kötéshez egy folyamatnak superuser jogosultsággal kell rendelkeznie.
- 1024–49151: Ezek az IANA által meghatározott szolgáltatásokhoz kijelölt regisztrált portok, más néven felhasználói portok. Kérésre egy folyamat hozzáférhet hozzájuk. A legtöbb rendszer esetében ezeknek a portoknak a használatához nincs szükség szuperfelhasználói jogosultságokra.
- 49152–65535: Ezek a dinamikus portok, más néven privát portok. Ezeket a portokat nem lehet regisztrálni az IANA -nál. Ezek a portok nyitottak a privát vagy személyre szabott szolgáltatások használatára, és automatikusan kioszthatók ideiglenes portokként (az IP által használt rövid élettartamú portok).
Linux alatt többféleképpen ellenőrizheti a nyitott portokat. Alapértelmezés szerint minden port zárva marad, hacsak egy alkalmazás nem használja azt. Ha egy port nyitva van, akkor hozzá kell rendelni egy szolgáltatáshoz/folyamathoz.
Nyílt portok listája
Könnyebb azonosítani, hogy mely portok vannak használatban, nem pedig azok, amelyek nyitva vannak. Ezért a következő szakasz módszereket tartalmaz az összes használt port felsorolására. Linux alatt több eszköz áll rendelkezésre a feladathoz. Legtöbbjük bármely Linux disztribúcióba beépített.
A jelenleg nyitott portok megismerése hasznos lehet különböző esetekben. Lehetőség van egy dedikált port konfigurálására egy adott alkalmazáshoz. A nyitott port is erős jele lehet a hálózatba való behatolásnak.
A következő módszereket mutatjuk be az Ubuntu 20.04.1 LTS rendszeren.
Sorolja fel a /etc /services protokollokat és nyitott portokat
Az /etc /services fájl információkat tartalmaz az éppen futó szolgáltatásokról. Ez egy nagy fájl, így készen áll a túlterhelésre.
$macska /stb./szolgáltatásokat| Kevésbé
A nyitott portok listázása a netstat használatával
A netstat eszköz segédprogram a hálózati kapcsolatok megjelenítéséhez TCP, útválasztási táblák és különböző hálózati interfészek számára. Hálózati protokoll statisztikákat is kínál. A netstat használatával felsorolhatjuk a rendszer összes nyitott portját.
Futtassa a következő netstat parancsot:
$netstat -atu
Gyorsan lebontjuk az összes zászlót, amelyet ebben a parancsban használtunk.
- nak nek : Azt mondja a netstatnak, hogy jelenítse meg az összes socketet
- t : A netstatnak felsorolja a TCP portokat
- u : Megmondja a netstatnak, hogy sorolja fel az UDP portokat
Itt van a netstat parancs egy másik változata:
$netstat -lntu
A parancsban két új zászlót használnak. Mit jelentenek?
- az : Azt mondja a netstatnak, hogy csak a hallgatási aljzatokat nyomtassa ki
- n : Azt mondja a netstatnak, hogy jelenítse meg a port számát
A portot használó folyamat PID -jének megjelenítéséhez használja a -p jelzőt:
$netstat -Intup
Sorolja fel a nyitott portokat az ss használatával
Az ss eszköz egy segédprogram a socket vizsgálatához. Használata hasonló a netstat -hoz.
A megnyitott portok listázásához futtassa a következő ss parancsot:
$ss-lntu
A zászlók hasonlóak a netstathoz. Az általuk leírt funkciók is nagyon hasonlóak.
- az : Azt mondja az ss -nek, hogy jelenítse meg a hallgatási aljzatokat
- n : Azt mondja az ss -nek, hogy ne próbálja meg feloldani a szolgáltatásneveket
- t : Azt mondja az ss -nek, hogy jelenítse meg a TCP socketeket
- u : Azt mondja az ss -nek, hogy jelenítse meg az UDP foglalatokat
Sorolja fel a nyitott portokat az lsof használatával
Az lsof parancs a megnyitott fájlok listázását tartalmazza. Azonban a nyitott portok megjelenítésére is használható.
Futtassa a következő lsof parancsot:
$lsof-én
Egy adott protokoll (TCP, UDP stb.) Nyitott portjainak lekéréséhez, majd az -i jelző után határozza meg, használja:
$lsof-én <jegyzőkönyv>
A nyitott portok listázása az nmap használatával
Az nmap eszköz hatékony eszköz a hálózatok felfedezéséhez és a biztonsági/portszkenneléshez. Jelentheti a rendszer összes nyitott portját.
A nyitott TCP -portok listázásához futtassa a következő nmap parancsot. Itt a gazdagép IP -címe:
$sudo nmap -utca -p-helyi kiszolgáló
Itt a parancs argumentum két része van.
- -utca : Ez a szakasz utasítja az nmap -ot, hogy keresse meg a TCP -portokat.
- -p- : Ez azt mondja az nmap -nak, hogy keresse meg az összes 65535 portot. Ha nem használja, akkor az nmap alapértelmezés szerint csak 1000 portot vizsgál.
Ha fel kell sorolnia a nyitott UDP portokat, akkor futtassa a következő nmap parancsot:
$sudo nmap -annak -p-helyi kiszolgáló
A nyitott TCP és UDP portok beszerzéséhez használja a következő parancsot:
$sudo nmap -n -PN -utca -annak -p-helyi kiszolgálóSorolja fel a nyitott portokat a netcat használatával
A netcat eszköz egy parancssori segédprogram az adatok olvasásához és írásához a hálózati kapcsolatok között a TCP és az UDP protokollon keresztül. Ez az eszköz a nyitott portok listázására is használható. Vizsgálatokat végezhet egy adott porton vagy egy sor porton.
A következő netcat parancs 1 -től 1000 -ig vizsgálja a portot. A netcat parancs alapértelmezés szerint elvégzi a vizsgálatot a TCP protokollon:
$nc-Val vel -vhelyi kiszolgáló1-1000
A lehetséges portok teljes listájára is kiterjeszthető:
$nc-Val vel -vhelyi kiszolgáló1-65535
Gyorsan bontsuk le a zászlókat.
- Val vel : Azt mondja a netcatnek, hogy csak nyílt portokat keres, adatküldés nélkül
- v : Azt mondja a netcatnek, hogy fusson részletes módban
Ha csak a nyitott portokat szeretné lekérni a listából, szűrje a kimenetet a grep paranccsal a sikeres kifejezésre.
$nc-Val vel -vhelyi kiszolgáló0-65535 2> &1 | markolatsikerültHa a vizsgálatot UDP protokollon kívánja végrehajtani, akkor adja hozzá a -u jelzőt.
$nc-Val vel -v -uhelyi kiszolgáló0-65535 2> &1 | markolatsikerültVégső gondolatok
Amint azt bemutattuk, rengeteg módszer létezik a nyílt portok keresésére Linuxon. Javaslom, hogy próbálja ki az összes módszert, mielőtt eldönti, melyiket fogja elsajátítani. Ha rendszeresen használ egy bizonyos eszközt, például a netcat -ot vagy az nmap -ot, akkor a kapcsolódó módszerek elsajátítása lesz a legelőnyösebb.
Boldog számítástechnikát!