telnet | |
---|---|
Név | TELEtype NETwork |
Szint ( az OSI modell szerint ) | Alkalmazott |
Család | TCP/IP |
Port/ID | 23/TCP |
A protokoll célja | virtuális szöveges terminál |
Leírás | RFC 854 / STD 8 |
Főbb megvalósítások (kliensek) |
telnet (Unix) PuTTY , telnet.exe (Windows) [1] |
Alapvető megvalósítások ( szerverek ) | telnetd, MS Telnet |
Bővíthetőség | Opciók ( RFC 855 ) |
Médiafájlok a Wikimedia Commons oldalon |
A TELNET (az angol tel etype net work szóból rövidítve ) egy hálózati protokoll szöveges terminál interfész hálózaton keresztüli megvalósítására (modern formájában, TCP transport segítségével ). A „telnet” nevet bizonyos segédprogramok is használják, amelyek a protokoll kliens oldalát valósítják meg. A jelenlegi protokollszabványt az RFC 854 írja le .
Ellátja az OSI modell alkalmazási rétegbeli protokolljának funkcióit . A telnet protokollt különféle hálózati eszközök és szoftverkiszolgálók távoli adminisztrációjára használták , de a biztonság miatt átadta helyét az ssh -nak. Lehetséges azonban, hogy ez az egyetlen módja a cli - n keresztüli interakciónak a beágyazott rendszerekkel, például az útválasztókkal , mivel ezek nem rendelkeznek ssh-val.
A TELNET protokoll célja egy meglehetősen általános, kétirányú, nyolc bites, bájtorientált kommunikációs közeg biztosítása. Fő célja, hogy lehetővé tegye a termináleszközök és terminálfolyamatok közötti kommunikációt. Azt tervezzük, hogy ez a protokoll használható terminálok közötti kommunikációra ("kötés") vagy folyamatok közötti kommunikációra ("elosztott számítástechnika").
Bár a Telnet szekciónak van egy kliens és egy szerver oldala, a protokoll valójában teljesen szimmetrikus. A szállítási kapcsolat (általában TCP) létrehozása után annak mindkét vége a "hálózati virtuális terminálok" ( eng. Network Virtual Terminal , NVT) szerepét tölti be, kétféle adatot cserélve:
Bár a TCP-n keresztüli Telnet-munkamenet eredendően teljes duplex , az NVT-t alapértelmezés szerint félduplex eszközként kell kezelni, amely pufferelt vonal módban működik.
Az alkalmazásadatok változtatás nélkül mennek át a protokollon [2] , vagyis a második virtuális terminál kimenetén pontosan azt látjuk, amit az első bemenetén adtak meg. A protokoll szempontjából az adat egyszerűen bájtok ( oktett ) sorozata, amely alapértelmezés szerint az ASCII készlethez tartozik , de a Bináris opció engedélyezésével bármelyik. Bár javasoltak kiterjesztéseket a karakterkészlet azonosítására [3] , ezeket a gyakorlatban nem használják.
A \377 (tizedes: 255) kivételével minden alkalmazásadat-oktett érték átadásra kerül a szállításon, ahogy van. A \377 oktett két oktett \377\377 sorozataként kerül átvitelre. Ennek az az oka, hogy a szállítási réteg a \377 oktettet használja az opciók kódolására.
A protokoll alapértelmezés szerint biztosítja a minimális funkcionalitást és az azt kiterjesztő opciókat. A kikötött opciók elve megköveteli, hogy a tárgyalásokat akkor kell lefolytatni, amikor mindegyik opció be van kapcsolva. Az egyik fél kezdeményezi a kérést, a másik fél pedig elfogadhatja vagy elutasíthatja az ajánlatot. A kérés elfogadása esetén az opció azonnal életbe lép. Az opciókat magától a protokolltól külön ismertetjük, és a szoftver általi támogatásuk tetszőleges. A protokollkliens (hálózati terminál) utasítja a nem támogatott és ismeretlen opciókat tartalmazó kéréseket.
Az NVT nyomtató kocsiszélessége és oldalhossza nem meghatározott, és mind a 95 nyomtatható US-ASCII karaktert (32-126 kód) képviselnie kell. A vezérlőkarakterek jelentése a következő:
Név | Kód (tizedes/hexadecimális) | Leírás |
---|---|---|
NULL (NULL) * | 0/0x00 | Nincs művelet. |
Soremelés (LF) * | 10/0x0A | A nyomtatót a következő nyomtatási sorra lépteti, miközben ugyanabban a vízszintes helyzetben marad. |
kocsi vissza (CR)* | 13/0x0D | A nyomtatót az aktuális sor bal szélére mozgatja. |
BELL (BEL) | 7/0x07 | Hang- vagy videojelet állít elő (de NEM mozgatja a nyomtatófejet). |
Vissza szóköz (BS) | 8/0x08 | A nyomtatófejet egy karakterrel a bal margó felé mozgatja. |
Vízszintes lap (HT) | 9/0x09 | A nyomtatót a következő vízszintes tabulátorhelyre helyezi. Meghatározatlan marad, hogy az oldal hogyan határozza meg és állítja be ezeket a tabulátorokat. |
Függőleges lap (VT) | 11/0x0B | A nyomtatót a következő függőleges tabulátorhoz mozgatja. Meghatározatlan marad, hogy az oldal hogyan határozza meg és állítja be ezeket a tabulátorokat. |
Űrlap feed (FF) | 12/0x0C | A nyomtatót a következő oldal tetejére mozgatja, miközben ugyanabban a vízszintes helyzetben marad. |
A *-gal jelölt karakterek műveleteinek támogatása szükséges. Mások végrehajthatnak egy adott műveletet, vagy nem hajtanak végre semmit; az egyik oldalnak nem kell semmi konkrétat feltételeznie a másik oldal bizonyos opcionális vezérlőkarakterek támogatásáról.
A "CR LF" szekvenciát egyetlen újsor karakterként kell kezelni, és akkor kell használni, amikor ezek együttes művelete szükséges; a "CR NUL" szekvenciát kell használni, ha csak a kocsi visszatérése szükséges; a CR karakter használatát más kontextusban kerülni kell.
Minden TELNET parancs egy több bájtos sorozat, amely a \377 (tizedes: 255) "Interpret as Command" (IAC) kóddal és a parancskóddal kezdődik. Az opció egyeztetéséért felelős parancsok három bájtos sorozatok, ahol a harmadik bájt az opció kódja. A következő kódok és kódsorozatok csak akkor rendelkeznek megfelelő jelentéssel, ha közvetlenül követik az IAC-t.
Név | Kód (tizedes/hexadecimális) | Leírás |
---|---|---|
SE | 240/0xF0 | Befejezi az SB paranccsal elindított egyeztetést. |
NOP | 241/0xF1 | Nincs művelet. |
adatjel | 242/0xF2 | Szinkronizálás (Synch) adatcsere. Ezt a parancsot mindig egy TCP Sürgős értesítés követi. |
Szünet | 243/0xF3 | Megnyomja a „Szünet” vagy „Figyelem” gombot. |
Folyamat megszakítása | 244/0xF4 | Felfüggeszt, megszakít, megszakít vagy leállít egy folyamatot. |
A kimenet megszakítása | 245/0xF5 | Elnyomja az aktuális folyamat kimenetét. Szinkronjelet is küld a felhasználónak. |
Ott vagy | 246/0xF6 | Nyomtatható karakterekből álló terminálválaszt küld vissza. |
Karakter törlése | 247/0xF7 | A címzettnek lehetőség szerint el kell távolítania az előző karaktert. |
Sor törlése | 248/0xF8 | Törölje az utoljára beírt sort, vagyis az utolsó sor után kapott összes adatot. |
menj tovább | 249/0xF9 | Adatátvitel függőben. |
SB | 250/0xFA | Paraméterátadást igénylő opció egyeztetés kezdete. |
WILL opció | 251/0xFB | Jelzi a végrehajtási szándékot, vagy megerősíti, hogy a megadott opció éppen végrehajtás alatt áll. |
Nem lesz lehetőség | 252/0xFC | A megadott opció elindításának vagy végrehajtásának sikertelenségét jelzi. |
DO opció | 253/0xFD | Kérelem, hogy a másik fél hajtsa végre vagy erősítse meg a megadott opció lehívását. |
NE opció | 254/0xFE | Kérelem, hogy a másik fél állítsa le a végrehajtást, vagy erősítse meg, hogy a megadott opció már nem hajtódik végre. |
IAC | 255/0XFF | 255. adatbájt. |
A múltban a Telnetet az operációs rendszerek parancssori felületének távoli elérésére használták . Ezt követően más szöveges felületekhez használták, egészen MUD játékokig és animált ASCII-art . Elméletileg a protokoll mindkét oldala nem csak emberek, hanem programok is lehetnek.
Néha a telnet klienseket más protokollokhoz való hozzáférésre használják a TCP átvitelen alapulóan, lásd Telnet és egyéb protokollok .
A telnet protokollt az FTP vezérlőkapcsolatban használják , vagyis a szerverre hibakeresési és kísérletezési paranccsal belépni telnet ftp.example.net ftpnem csak lehetséges, hanem helyes is (ellentétben a telnet kliensekkel a HTTP, IRC és a legtöbb egyéb protokoll eléréséhez ).
A Telnet a HTTP mellett a fő protokoll a hálózati eszközökkel (felügyelt kapcsolókkal és útválasztókkal) végzett távoli munkavégzéshez, és a webes felülettel ellentétben teljes hozzáférést biztosít az eszköz funkcióihoz, ugyanakkor parancssori ismereteket igényel egy szakembertől.
A protokoll nem rendelkezik sem titkosítás , sem adathitelesítés használatáról . Ezért ki van téve minden olyan támadásnak , amelyre a szállítása, azaz a TCP protokoll ki van téve. A rendszer távoli eléréséhez jelenleg az SSH hálózati protokollt (különösen annak 2-es verzióját) használják , melynek létrehozása során a biztonsági kérdésekre helyezték a hangsúlyt. Ezért ne feledje, hogy a Telnet munkamenet meglehetősen bizonytalan, hacsak nem teljesen ellenőrzött hálózaton vagy hálózati réteg biztonsággal rendelkezik (a virtuális magánhálózatok különféle megvalósításai ). A Telnet, mint az operációs rendszerek kezelésének eszköze megbízhatatlansága miatt ezeket már régóta elhagyták.
Az internetes technológiai közösségben a Telnet klienst néha arra használják, hogy kézi hozzáférést biztosítsanak (például hibakeresési célokra) olyan alkalmazásréteg-protokollokhoz, mint a HTTP , IRC , SMTP , POP3 és más TCP átvitelen alapuló szövegalapú protokollok. A telnet kliens TCP-kliensként való használata azonban a következő nemkívánatos hatásokat okozhatja:
Az olyan programok, mint a netcat , tiszta TCP hozzáférést biztosítanak, de speciális trükkökre van szükség (valahogy stty -icrnlUNIX rendszeren), hogy a soremelést CR LF-ként továbbítsák (amire sok protokoll megköveteli). Általában egy Telnet kliens alapértelmezés szerint minden új sort CR LF-ként küld, függetlenül a kliens rendszerén található kódolástól. Ezenkívül az alkalmazásprotokollokhoz való hozzáférés hibakereséséhez (kivéve az FTP-t és valójában a Telnetet) használhatja a PuTTY klienst nyers módban (tiszta hozzáférés a TCP-hez) - a PuTTY a sortöréseket a Telnet protokoll támogatásától elkülönítve alakítja át.
URI- sémák | |
---|---|
Hivatalos | |
nem hivatalos |
TCP / IP protokollok az OSI modell rétegei szerint | Alapvető|
---|---|
Fizikai | |
csatornázott | |
hálózat | |
Szállítás | |
ülés | |
Reprezentáció | |
Alkalmazott | |
Egyéb alkalmazva | |
A TCP és UDP portok listája |