- Published on
Mik azok a portok?
- Authors

- Name
- Bartók Dániel
Az oldalon már számos bejegyzésben esett szó arról, hogy milyen folyamatok zajlanak le egy hálózati kapcsolat során. Ilyen például, amikor beírunk egy weboldal címet a böngészőbe. Az egyik kulcsszereplő a DNS, "akiről" megtanultuk, hogy az internet telefonkönyve, hiszen minden névhez ismeri a hozzá tartozó IP címet. A másik nélkülözhetetlen elem, a címben is szereplő port. Nézzük is, hogy miért.
Hálózati portok szerepe
Az informatika fejlődése során nem egyszer szembesültek azzal a szakemberek, hogy amikor egy dolognak nevet akartak adni kiderült, egy másik kontextusban már használják. Ez alól a port sem kivétel, így beszélhetünk hardver portokról és hálózati portokról is. Előbbi egy összefoglaló név a számítógépen található különféle bemenetekre, amelyeken keresztül különféle eszközöket csatlakoztathatunk. Például egeret és billentyűzetet. Erről a jövőben egy külön bejegyzésben tervezek írni.
Utóbbi, vagyis a hálózati portok is egyfajta bemenetet biztosítanak, de, ahogy a neve is sugallja nem fizikai, hanem hálózati kapcsolatok során. Mivel egy számítógépen vagy szerveren egyszerre akár több szolgáltatás is elérhető, ezeket valahogyan szükséges megkülönböztetni, erre valók a portok. Leegyszerűsítve, a port hasonló szerepet tölt be, mint a társasházaknál a névtábla.
A szolgáltatásokhoz egy port számot tudunk rendelni, melyen keresztül elérhetjük azt. Ez egy 0 és 65535 közötti szám és mindig a cím után kettősponttal elválasztva szükséges megadni (www.xyz.hu:443). A weboldal címeknél miért nem kell megadni a portot? Tehetné fel a Kedves Olvasó jogosan a kérdést. Vannak dedikált portok, amelyeknél nem szükséges azokat külön beírnunk, ilyen például az is, amikor egy https://-el kezdődő címre kattintunk. A böngésző ilyenkor tudja, hogy neki az adott címen a 443-as portra kell mennie. Ezt a folyamatot hivatott bemutatni a lenti kis példa is, ahol szintén nem adtam meg portot a Zsebinformatikus címe után, viszont a program automatikus hozzáadta azt:

Használat szerint három nagy listába sorolhatjuk a portokat1:
- Jól ismert portok (0-1023)
- Alkalmazásokhoz regisztrált portok (1024-49151)
- Dinamikus/privát portok (49152-65535)
A továbbiakban táblázatos formában bemutatok néhány gyakran használt portot mindhárom listából.
Jól ismert portok
Az itt szereplő portok meghatározott szolgáltatásokhoz vannak rendelve, melyet az Internetes Számkiosztó Hatóság (IANA) kezel.
| Port szám | Hozzá kapcsolódó szolgáltatás leírás |
|---|---|
| 22 | Secure Shell (SSH) - Távoli bejelentkezésre használják. Általában a rendszergazdák ezen keresztül érik el a szervereket. |
| 25 | Simple Mail Transfer Protocol (SMTP) - Email-ek küldésére használják. |
| 53 | Domain Name Server (DNS) - DNS lekérdezések és névfeloldás során használják. |
| 80 | HyperText Transfer Protocol (HTTP) - Weboldalak kiszolgálása titkosítatlan kapcsolaton keresztül. Nem biztonságos! |
| 443 | HyperText Transfer Protocol Secure (HTTPS) - Weboldalak kiszolgálása titkosított kapcsolaton keresztül. A mai webes forgalom alappillére. |
Regisztrált portok
Ide olyan portok kerülnek, amelyek az IANA szervezetnél regisztrálásra kerültek. Ezek jellemzően különféle alkalmazásokhoz tartoznak.
| Port szám | Hozzá tartozó alapértelmezett alkalmazás |
|---|---|
| 3306 | MySQL adatbázis |
| 27017 | MongoDB adatbázis |
| 25565 | Minecraft szerver |
Dinamikus/privát portok
Ahogy a neve is sugallja, az itt szereplő portok nincsenek kiosztva, hanem a kapcsolódási folyamat során kerülnek felhasználásra. Ezeket nem a szerver, hanem a kliens (pl. böngésző) használja. A folyamat során véletlenszerűen választ egyet az elérhetők közül, és azt csakis addig használja, amíg él a kapcsolat. Ennek a megoldásnak hála, tudunk például egyszerre több weboldalt vagy szolgáltatást is használni.
A lenti példában szépen látszik ez a folyamat. A curl nevű programmal kétszer is "meglátogattam" a Zsebinformatikus weboldalt, ilyenkor a háttérben felépül a kapcsolat a kliens és a szerver között. Az 5. oszlopban látjuk a cél elérhetőségét, ami most mindkétszer ugyanaz, ez a weboldal címe és portja. A negyedik oszlopban pedig azt láthatjuk, hogy a curl program a két kapcsolathoz két szabadon elérhető dinamikus portot választott (esetünkben 49373 és 49646). Szerencsére a dinamikus portok tartománya hatalmas, így csak nagyon-nagyon extrém esetben fordulhat elő olyan, hogy nincs szabadon elérhető, így nem tudunk új kapcsolatot kiépíteni. (Velem már előfordult. 🙂)

Nem is gondolnánk, hogy ezeken felül még milyen bonyolult folyamatok zajlanak le, amikor egy böngésző használatával meglátogatunk egy weboldalt. Ma ezek közül ismét bemutatásra került egy, de még mindig csak a felszínt kapargatjuk, ezért időről-időre fogok bejegyzéseket hozni ebben a témában is.
Ti tudtátok, hogy léteznek portok és hogy mire valók?
Írjátok meg a hozzászólásokban!
Footnotes
A teljes felsorolás megtalálható a Wikipédián is ↩