Röviden leírjuk a számítógépes hálózaton belüli portokat, majd beszélünk arról, hogyan listázhatunk ki minden nyitott portot a Linuxban.
A portot logikai entitásként definiálhatjuk számítógépes hálózati és szoftveres szempontból.
Kommunikációs végpontként működik egy adott folyamat vagy alkalmazás azonosításához Linux operációs rendszer . A port a 16 bites (o-tól 65535-ig) szám, amely megkülönbözteti az egyetlen alkalmazást a többitől a különböző végrendszereken.
A két leghíresebb internetes szállítási protokoll, User Datagram Protocol (UDP) és Transmission Control Protocol (TCP) és más protokollok portszámokat alkalmaznak számos kommunikációs munkamenethez (a cél- és forrásportszámok a cél- és a forrás IP-címekkel együtt).
Protokoll, port és IP-cím kombinációja, mint pl TCP/UDP az a foglalat. Szükséges, hogy minden szolgáltatásnak legyen egy adott aljzata.
java bináris fa
A kikötő kategóriái
Ezek a portok a könnyű használat érdekében három kategóriába sorolhatók, mivel a portok széles választéka. Az összes kategória portérték-tartományként van megjelölve:
0-1023: Ezek a portok közismert és felhívott 'Rendszer' portok. A rendszer azon folyamatai számára vannak fenntartva, amelyek széles körű hálózati szolgáltatásokat nyújtanak. Egy folyamatnak rendelkeznie kell egy szuperfelhasználói jogosultságokkal ahhoz, hogy bármelyikhez kapcsolódjon 'Közismert' kikötő.
1024-49151: Ezek a portok 'Bejegyzett' és felhívta a 'Felhasználó' portok. keresztül vannak kijelölve IANA egyedi szolgáltatásokért. Egy folyamat kérésre hitelesítheti őket. A legtöbb rendszer esetében nincs szüksége szuperfelhasználói jogosultságra ezeknek a portoknak a használatához.
49152-65535: Ezek a portok 'Dinamikus' és felhívta a 'Magán' portok. Nem lehet velük regisztrálni IANA. Az ilyen típusú portok testreszabott és privát szolgáltatásokhoz használhatók, és ideiglenes portokként is kijelölhetők (úgynevezett rövid életű az IP által alkalmazott portok) automatikusan.
Nagyon sok módja van a nyitott portok ellenőrzésének Linuxban. Alapértelmezés szerint egy port bezárul, hacsak nem alkalmazza azt valamelyik alkalmazás. A portot hozzá kell rendelni egy folyamathoz vagy szolgáltatáshoz, ha az nyitva van.
Nyissa meg a portok listáját
Könnyebb tudni, hogy melyik port van használatban ahelyett, hogy melyik port van nyitva. Ezért az alábbi szakasz módszereket kínál az összes jelenleg használt port listázásához.
A Linuxban számos eszköz létezik erre a feladatra. A legtöbb elérhető beépített Linux disztribúcióban.
A jelenleg nyitva lévő port megismerése sok esetben hasznos lehet. Lehetőség van egy dedikált port meghatározására egy biztos alkalmazáshoz. A nyitott port erős behatolási jelzés lehet a hálózaton belül.
A módszereket használják Ubuntu 20.04 LTS amelyeket az alábbiakban említünk.
Sorolja fel a nyitott portokat és protokollokat az /etc/services fájl segítségével
A fájl, azaz /etc/services részleteket tartalmaz a futó szolgáltatásokról (jelenleg). Ez egy nagy fájl.
$cat /etc/services | less
Sorolja fel a nyitott portokat a netstat segítségével
A netstat Az eszköz olyan segédprogramként írható le, amely megjeleníti a hálózati kapcsolatokat útválasztási táblákhoz, TCP-hez és számos hálózati interfészhez. Ezenkívül megkönnyíti a hálózati protokoll statisztikáit. A netstat eszköz segítségével listázhatjuk a rendszer minden nyitott portját.
Az alábbi parancsot tudjuk végrehajtani:
$ netstat -atu
Gyorsan magyarázzuk el a fenti parancsban használt egyes zászlók lebontását:
1. a: Ez a jelző tájékoztatja a netstatot az egyes aljzatok megjelenítéséről.
2. t: Ez a jelző tájékoztatja a netstatot a TCP-portok felsorolásáról.
3. in: Ez a jelző tájékoztatja a netstatot az UDP-portok felsorolásáról.
A netstat parancsnak van egy másik változata is, amelyet alább említünk:
$ netstat -lntu
Két zászló új a fenti parancsban, amely a következőképpen magyarázható:
1. l: Ez a jelző tájékoztatja a netstat-ot, hogy csak a lehallgató aljzatokat nyomtatja ki.
2. n: Ez a jelző tájékoztatja a netstatot a portszám megjelenítéséről.
c karakterláncok kódtömbje
Használhatunk zászlót, pl. '-p' a folyamat PID megjelenítéséhez, amely bármely portot használ.
$ netstat -lntup
Ellenőrizze a nyitott portokat helyileg
A netstat parancs minden számítógép operációs rendszeren elérhető a hálózati kapcsolatok figyeléséhez. Az alábbi parancs a netstatot alkalmazza az egyes figyelő portok megjelenítésére a TCP protokollal:
netstat -lt
Határozzuk meg röviden a fenti parancsban található zászlókat:
1. -l: Felsorolja a figyelő portokat.
2. -t: Meghatározza a TCP protokollt.
Az eredmény jól rendezett a protokollt, emberbarát, küldött és fogadott csomagokat, portállapotot, távoli és helyi IP-címeket megjelenítő oszlopokban.
Ha módosítjuk a TCP protokollt UDP protokollra, akkor a kimeneten csak a nyitott portok jelennek meg. Az eredmény az állapot leírása nélkül jelenik meg a TCP protokollnak való ellentmondás miatt.
netstat -lu
Figyelmen kívül hagyhatjuk a protokollok leírását, és csak a --listen vagy -l opciót alkalmazhatjuk az egyes portok részleteinek megtekintéséhez, amelyek szabadon figyelik a protokollt:
netstat --listen
A fenti opció megmutatja a Unix, UDP és TCP socket protokollok részleteit.
Minden fenti példa bemutatja, hogyan nyomtathatja ki a részleteket a figyelő portokon keresztül engedélyezett kapcsolatok nélkül. Az alábbi parancsok megmutatják, hogyan jeleníthetők meg a figyelő portok és az engedélyezett kapcsolatok.
netstat -vatn
Ahol:
1. -in: Bőbeszédűségre használják.
2. -a: Megjeleníti az aktív kapcsolatokat.
3. -t: Megjeleníti a tcp kapcsolatokat.
4. -n: Kijelzi a portokat (numerikus érték).
Tegyük fel, hogy felismerünk egy gyanús folyamatot a rendszerünkben, és ellenőrizni akarjuk a kapcsolódó portokat. Használhatjuk az lsof parancsot, amely a folyamatokhoz kapcsolódó nyitott fájlok listázására szolgál.
lsof -i 4 -a -p
Ahol,
1. -i: Felsorolja az internettel együttműködő fájlokat, a 6 opció van jelen IPv6, és a 4 opció csak a nyomtatásra vonatkozik IPv4.
2. -a: Utasítja az eredményt Adtál.
3. -p: Meghatározza az ellenőrizni kívánt folyamat PID-számát.
Sorolja fel a nyitott portokat ss-vel
A ss eszköz megadható segédprogramként a foglalat vizsgálatához. Ennek az eszköznek a használata megegyezik a netstat parancs.
Az alábbi parancsot futtathatjuk a nyitott portok felsorolásához:
$ ss -lntu
A fenti zászlók megegyeznek a netstat parancs. Az ss eszköz által leírt funkciók is teljesen azonosak.
1. l: Ez a zászló tájékoztatja az ss-t a hallgatási aljzatok megjelenítéséről.
2. n: Ez a jelző tájékoztatja az ss-t, hogy ne kísérelje meg levonni a szolgáltatásneveket.
3. t: Ez a jelző tájékoztatja az ss-t a megjelenített TCP socketekről.
4. in: Ez a jelző tájékoztatja az ss-t az UDP socketek megjelenítéséről.
Listázza ki a nyitott portokat az lsof segítségével
Az lsof parancs használható a megnyitott fájlok listázására. De a nyitott portok megjelenítésére is használható.
A következő parancsot tudjuk végrehajtani:
$ lsof -i
Egy adott protokoll (UDP, TCP, stb.) nyitott portjainak lekéréséhez adja meg a használata után '-én' flag, a következő parancsot tudjuk végrehajtani:
$ lsof -i
Sorolja fel a nyitott portokat az nmap segítségével
Az nmap parancs erősen definiálható a port/biztonsági ellenőrzéshez és a hálózat feltárásához. A rendszeren belül minden nyitott portot is jelenthet.
A következő parancsot hajthatjuk végre a nyitott TCP-portok felsorolásához.
$ sudo nmap -sT -p- localhost
Ennek a parancsnak két része van, amelyeket fent említettünk:
1. -sT: Tájékoztatja az nmap eszközt a beolvasáshoz TCP portok.
2. -p-: Tájékoztatja az nmap eszközt minden egyes vizsgálathoz 65535 portok. Az nmap eszköz megvizsgálja 1000 csak alapértelmezés szerint, ha nincs használatban.
Ha fel kell sorolnunk az UDP nyitott portjait, akkor a következő parancsot hajthatjuk végre:
$ sudo nmap -sU -p- localhost
A következő parancsot is végrehajthatjuk az UDP és a TCP portok lekéréséhez:
$ sudo nmap -n -PN -sT -sU -p- localhost
A nyitott portok listája a netcat segítségével
A netcat eszköz egy parancssori segédprogramként írható le, amellyel UDP és TCP protokollokon keresztül számos hálózati kapcsolaton keresztül olvashat és írhat adatokat. A nyitott portok listázására is használható. Ez az eszköz teszteket hajthat végre egy adott porton vagy több porton.
Az alábbi netcat parancs a port vizsgálatára szolgál 1-1000. Alapértelmezés szerint a TCP protokollon keresztüli vizsgálatot hajtja végre:
$ nc -z -v localhost 1-1000
Ezenkívül kiterjeszthető bizonyos portok teljes listájára:
$ nc -z -v localhost 1-65535
Gyorsan lebontjuk ezeket a zászlókat.
1. innen: Tájékoztatja a netcat parancsot, hogy csak a nyitott portokat vizsgálja meg, adatátvitel nélkül.
2. in: Tájékoztatja a netcat parancsot a bőbeszédű módban történő futtatáshoz.
a számítógép feltalálásának éve
Az eredményt grep segítségével szűrhetjük egy kifejezésre 'sikerült' hogy csak a nyitott portok jelenjenek meg ezen a listán.
$ nc -z -v 127.0.0.1 20-80 | grep succeeded
Ha az UDP protokollon keresztüli vizsgálatot szeretnénk megvalósítani, akkor a. Beleszámíthatjuk a '-ban ben' zászló.
$ nc -z -v -u localhost 0-65535 2>&1 | grep succeeded