Ten artykuł należy dopracować |
Telnet – standard protokołu komunikacyjnego używanego w sieciach komputerowych do obsługi odległego terminala w architekturze klient-serwer.
Protokół obsługuje tylko terminale alfanumeryczne, co oznacza, że nie obsługuje myszy ani innych urządzeń wskazujących. Nie obsługuje także graficznych interfejsów użytkownika. Wszystkie polecenia muszą być wprowadzane w trybie znakowym w wierszu poleceń. Polecenia wydawane za pomocą komputera-klienta przysłane są poprzez sieć do serwera, na którym zainstalowane jest oprogramowanie serwera telnetu. W odpowiedzi serwer odsyła komunikaty, które następnie wyświetlane są na ekranie komputera-klienta.
Do korzystania z tej usługi niezbędne jest posiadanie na serwerze konta typu shell. Na niektórych serwerach administratorzy zakładają konta gościnne, które nie wymagają podania hasła lub hasła te są publicznie podawane. Jednakże ze względów nadmiernego wykorzystywania takich kont, administratorzy wprowadzili możliwość używania tylko potrzebnych aplikacji, które mogą być wykorzystane na danym serwerze. Po połączeniu się z serwerem, na którym posiadamy konto shell, program zapyta nas o identyfikator użytkownika (login) i hasło dostępu (password). Usługa Telnet umożliwia zatem pracę na zdalnym komputerze bez konieczności siedzenia bezpośrednio przed nim. Uruchomienie tej usługi wykonuje się poprzez wpisanie polecenia:
telnet adres
gdzie adres jest adresem IP komputera, z którym chcemy się połączyć, bądź jego nazwą domenową, gdyż telnet dopuszcza obie te formy podawania adresu. Po nawiązaniu połączenia telnet wyświetli nam informację o wersji systemu operacyjnego serwera, jego nazwie oraz numerze wirtualnego terminala (np. ttyp0, ttyp1, ttyp2 itd.). Następnym krokiem, jaki musimy wykonać w celu zalogowania się do serwera, to podanie użytkownika oraz hasła (login i password).
W celu uzyskania największej możliwej wydajności usługi terminalowej, jaką jest telnet, konieczna jest świadomość, jakie typy terminali obsługuje serwer, z którym się łączymy oraz jakie typy terminali potrafi emulować wykorzystywana przez nas do tego celu aplikacja. Najbardziej znanymi i najczęściej wykorzystywanymi typami są: VT100 (wykorzystujący sekwencje sterujące ANSI) oraz jego pozostałe odmiany VT102 i VT220, VT-52 oraz VTNT. Filozofia pracy tych terminali polega na przesyłaniu na bieżąco znak po znaku kodów sterujących wydawanych przez nasz komputer, jak i w stronę odwrotną. Odmienny rodzaj pracy wykorzystuje inny typ terminala IBM 3270 pracujący w systemach VM i MVS. Terminale IBM 3270 wymieniają informacje pomiędzy komputerem i terminalem (kontrolerem), przesyłając bloki ekranu – komputer przesyła do terminala zdefiniowane pola tekstu, w których użytkownik może uzupełniać komendy lub dane dla serwera.
Bardzo często usługa telnet implementowana jest do urządzeń aktywnych sieci (przełączniki, routery) w celu ułatwienia zdalnej konfiguracji. Użytkownik za pomocą polecenia telnet oraz podaniu adresu danego urządzenia loguje się do niego i w trybie znakowym wykonuje konfiguracje VLAN-ów, adresów IP, NAT-a itd. Połączenie tego typu nie jest szyfrowane, a więc istnieje możliwość przechwycenia przesyłanych danych. Z tego powodu częściej stosuje się następcę Telnetu, czyli SSH.
Telnet jest najstarszą i najbardziej elementarną usługą internetową. Został opisany w dokumentach RFC numer RFC 854 ↓ i RFC 855 ↓.
Telnet jest też często używany w grach tekstowych typu MUD. Z reguły uruchamiany jest na porcie 23.