Opublikowany
Telnet to stary, niebezpieczny sposób zdalnego łączenia się z serwerem. Biorąc to pod uwagę, może to być przydatne, więc przyjrzyjmy się, jak połączyć się za pomocą telnetu w systemie Linux w tym przewodniku.
W początkach Internetu, kiedy tego chcieliśmy zaloguj się na zdalny serwer, użyliśmy telnetu. Ten protokół komunikacyjny, stosowany od końca lat 60. XX wieku, staje się coraz mniej popularny we współczesnych komputerach.
Dzieje się tak głównie ze względów bezpieczeństwa, ale nadal może się zdarzyć, że będziesz musiał użyć telnetu w systemie Linux. Przeczytaj dalej, ponieważ pokażę Ci, jak i dlaczego korzystać z tego wprawdzie archaicznego sposobu logowania się do komputerów, do których nie masz fizycznego dostępu.
Krótka historia Telnetu
Telnet, co oznacza "Sieć telegraficzna”, którego korzenie sięgają końca lat 60. Programiści napisali telnet jako protokół umożliwiający komunikację między różnymi systemami z podziałem czasu.
Głównym celem było ułatwienie możliwości zdalnego logowania za pośrednictwem rodzącej się sieci ARPANET, prekursora dzisiejszego nowoczesnego Internetu.
Podstawową funkcją Telnetu była emulacja terminala. Dzięki temu wyglądasz, jakbyś znajdował się na terminalu bezpośrednio podłączonym do zdalnego systemu. Było to szczególnie cenne w przypadku dostępu do odległych komputerów mainframe i współdzielonych zasobów komputera. Kiedyś większość z nas skonfigurowaliśmy nasze serwery internetowe i pisałem nasze strony internetowe za pomocą telnetu.
Różnica między Telnetem a SSH
Popularność Telnetu, jak mówiłem od początku, maleje. Dzieje się tak głównie ze względów bezpieczeństwa: telnet wysyła wszystkie Twoje informacje (nawet Twoje Nazwa użytkownika i hasło) zwykłym tekstem. Zdecydowanie nie jest to dobry pomysł w prawie każdym scenariuszu.
Z drugiej strony, SSH jest szyfrowane i nie wysyła praktycznie niczego w postaci zwykłego tekstu. Co więcej, protokół SSH jest rozszerzalny i może wykorzystywać silniejsze metody szyfrowania, gdy tylko staną się dostępne. Krótko mówiąc, jeśli możesz używać SSH zamiast telnetu, naprawdę powinieneś. Jeśli jednak naprawdę musisz używać telnetu, przyjrzyjmy się, jak to zrobić.
Konfigurowanie środowiska Linux dla usługi Telnet
Dość często włączone nowoczesnych dystrybucji Linuksa, nie znajdziesz domyślnie zainstalowanego protokołu telnet. Oznacza to, że będziesz musiał go zainstalować za pomocą wybranego menedżera pakietów.
Aby dowiedzieć się, czy telnet już istnieje, po prostu wydaj następującą komendę na terminalu Linux:
$ which telnet
W mojej instalacji Ubuntu telnet znajduje się pod adresem /usr/bin/telnet, I Który od razu mi to mówi. Jeśli w odpowiedzi otrzymasz jedynie wiersz poleceń, bez listy katalogów i plików, oznacza to, że nie masz zainstalowanego protokołu Telnet.
Aby to naprawić, uruchomimy naszego menedżera pakietów. W Ubuntu i innych systemach opartych na Debianie zainstalujesz telnet za pomocą następujących poleceń:
$ sudo apt update. $ sudo apt install telnet
Zamiast tego Fedora, CentOS i inne dystrybucje używają yum do zarządzania pakietami. Oto jak zainstalować pakiet telnet w tych dystrybucjach.
$ yum -y install telnet
To wszystko, czas nauczyć się korzystać z telnetu.
Jak korzystać z Telnetu w systemie Linux
W najbardziej podstawowym zastosowaniu wystarczy wpisać polecenie telnet, a następnie nazwę hosta lub adres IP, do którego się logujesz. Na przykład:
$ telnet localhost
Poprzednie polecenie nawiązałoby połączenie telnet przy użyciu domyślnego portu z lokalnym komputerem z systemem Linux. Często jednak trzeba określić, którego portu użyć. W takim przypadku wystarczy dodać numer portu po nazwie hosta lub adresie IP.
$ telnet resort.org 2323
To polecenie połączy Cię z czcigodnym serwerem czatu znanym jako The Resort Online, znajdującym się na porcie 2323 resort.org.
Ośrodek The Resort, jedno z moich najstarszych spotkań online od pierwszych dni korzystania z Internetu, opiera się wyłącznie na tekście. Dlatego używa telnetu. Ten konkretny serwer zawsze używał portu 2323 do połączeń.
Znaczenie numerów portów w Telnecie
Oczywiście jest to port niestandardowy, otwarty do użytku przez oprogramowanie niesystemowe. Wiele pakietów serwerów wykorzystuje określone porty protokołów TCP i UDP. Na przykład standardowy serwer WWW komunikuje wszystko przez port 80.
Porty są jak numery ulic Twojego domu lub firmy. Nazwa hosta lub adres IP to nazwa ulicy, np. Main Street. Port to miejsce na Main Street, w którym znajduje się ten konkretny program.
Kilka innych powszechnie używanych portów to:
- 22: używany w protokole SSH.
- 25: powszechnie używany w przypadku serwerów poczty wychodzącej.
- 80: używany przez większość serwerów internetowych.
- 220: powszechnie używany przez serwery poczty e-mail IMAP.
- 443: Bezpieczne serwery internetowe często korzystają z tego portu.
Jak pokazano powyżej, możesz określić, z którym portem chcesz się połączyć, po prostu wpisując go po nazwie hosta lub adresie IP w poleceniu telnet.
Wykorzystanie Telnetu do diagnostyki sieci
Mając te informacje na uwadze, łatwo zrozumieć, dlaczego telnet może nadal być ważnym narzędziem dla administratorów sieci i systemów. Kiedy wydaje się, że serwer pocztowy lub internetowy działa nieprawidłowo, przydatne jest połączenie się z tym serwerem za pomocą telnetu w celu rozwiązywania problemów i diagnostyki.
Możesz na przykład użyć telnetu, aby upewnić się, że dany serwer akceptuje połączenia. Załóżmy, że chcesz sprawdzić, czy serwer WWW akceptuje połączenia na porcie 80:
Możesz także użyć telnetu ręcznie wysyłaj e-maile poprzez SMTP, co może być pomocne przy debugowaniu problemów z serwerem pocztowym. Łącząc się z portem 25 (SMTP) i wpisując odpowiednie polecenia SMTP, możesz zasymulować proces wysyłania wiadomości e-mail i zobaczyć odpowiedzi z serwera pocztowego w czasie rzeczywistym.
Obawy dotyczące bezpieczeństwa protokołu Telnet
Chociaż telnet jest cennym narzędziem do rozwiązywania problemów z siecią ze względu na jego ręczny i prosty charakter, ważne jest, aby używać go w sposób odpowiedzialny. Ponieważ telnet nie szyfruje swojego ruchu, wszelkie poufne informacje przesyłane przez telnet (jak Twoje hasło) można przechwycić.
Zawsze należy zachować ostrożność w przypadku korzystania z protokołu Telnet, szczególnie w środowiskach produkcyjnych lub wrażliwych. Naprawdę powinieneś używać Telnetu tylko wtedy, gdy musisz lub gdy komputer jest całkowicie nienarażony na zewnętrzne zagrożenia bezpieczeństwa.
Dlaczego Telnet nadal istnieje w dzisiejszym środowisku komputerowym
Nawet wraz z pojawieniem się bezpieczniejszych alternatyw istnieje kilka powodów, dla których ktoś może nadal chcieć korzystać z protokołu telnet. Obejmują one zakres od technicznych, przez edukacyjne, aż po rekreacyjne.
Typowe powody używania Telnetu jako administratora systemu
- Starsze systemy i urządzenia: Starszy sprzęt lub systemy oprogramowania, które nie zostały zaktualizowane lub wymienione, mogą obsługiwać tylko protokół telnet. Organizacje posiadające takie systemy (ze względu na ograniczenia budżetowe, specyficzne funkcjonalności lub ze względów historycznych) nadal będą potrzebować protokołu telnet, aby uzyskać do nich dostęp i zarządzać nimi.
- Testowanie i rozwiązywanie problemów: Administratorzy sieci i specjaliści IT mogą używać protokołu Telnet jako szybkiego narzędzia do sprawdzania dostępności portów TCP, upewniając się, że usługi działają i nasłuchują. Jest to prosty sposób sprawdzenia, czy usługa działa na zdalnym serwerze, poprzez próbę połączenia Telnet z żądanym portem.
- Urządzenia sieciowe: Niektóre urządzenia sieciowe, takie jak starsze przełączniki, routerylub inne urządzenia peryferyjne mogą mieć telnet jako podstawowy (lub jedyny) interfejs do zarządzania. Jest to szczególnie prawdziwe w przypadku urządzeń, które powstały przed powszechnym przyjęciem protokołu SSH.
Korzystanie z Telnetu w celach edukacyjnych, rekreacyjnych lub eksperymentalnych
- Cele edukacyjne: Telnet może służyć jako narzędzie dydaktyczne dla studentów i profesjonalistów uczących się protokołów sieciowych, programowania sieci lub historii Internetu. Jego prostota może być korzystna w scenariuszach instruktażowych, w których nacisk położony jest na zrozumienie podstawowych koncepcji bez złożoności nowoczesnych warstw zabezpieczeń.
- Prosty dostęp zdalny: W kontrolowanych środowiskach, takich jak izolowane sieci wewnętrzne, które nie są narażone na zagrożenia zewnętrzne, telnet może być używany do bezpośredniego dostępu zdalnego bez konieczności stosowania dodatkowego szyfrowania.
- Specyficzne potrzeby aplikacji: Niektóre aplikacje mogą polegać na telnecie w zakresie określonych funkcji. Na przykład MUD (Multi-User Dungeons) — wczesne gry online dla wielu graczy — tradycyjnie wykorzystywały telnet do komunikacji klient-serwer.
- Systemy wbudowane: Niektóre systemy wbudowane lub urządzenia IoT (Internet rzeczy) mogą korzystać z protokołu telnet ze względu na jego niewielką wagę, zwłaszcza gdy moc obliczeniowa lub pamięć są ograniczone.
- Fazy przejściowe: Firmy migrujące do nowoczesnych systemów mogą tymczasowo zachować dostęp przez Telnet w miarę wycofywania starszego sprzętu lub oprogramowania. Umożliwia im to jednoczesne zarządzanie starymi i nowymi systemami w okresie przejściowym.
Należy jednak pamiętać, że jeśli używany jest telnet, szczególnie w środowiskach, w których znajdują się wrażliwe dane lub narażony na kontakt z sieciami zewnętrznymi, należy zdawać sobie sprawę z jego ograniczeń bezpieczeństwa. Bezpieczne korzystanie z niego może wiązać się z dodatkowymi środkami ochronnymi, takimi jak Konfiguracje VPN lub zapory ogniowej, aby zminimalizować ryzyko.