Telnet

Telnet (קיצור של TELetype NETwork) הוא פרוטוקול רשת המשמש ברשת האינטרנט, או ברשתות מקומיות (LAN). הפרוטוקול פותח בשנת 1969, והוגדר על ידי IETF (איגוד התקינה לפרוטוקולי רשת) במסמכים [http://www.faqs.org/rfcs/rfc854.html RFC 854] ו-[http://www.faqs.org/rfcs/rfc855.html RFC 855]).

פרוטוקול טלנט משמש בעיקר משתמשים המעוניינים להתחבר באמצעות שורת הפקודה בין מחשבים ברשת. השם נגזר מהמונח האנגלי telecommunication network, מכיוון שהפרוטוקול פותח על מנת לדמות מחשב המחובר למחשב אחר ועובד עליו למעשה.

הכינוי טלנט מציין גם מחשבי לקוח המאפשרים התחברות ועבודה באמצעות פרוטוקול טלנט. הללו זמינים במערכות הפעלה ותיקות כמו יוניקס, וגם במערכות הפעלה חדישות. רובם המוחלט של השרתים מאפשר התחברות מרוחקת אליהם באמצעות פרוטוקול הטלנט, אולם בשרתי יוניקס ולינוקס נפוץ כיום השימוש ב-SSH כתחליף לטלנט, ובשרתי Windows NT נהוג להשתמש ב-RDP.

לקוח הטלנט הרגיל של BSD (ובעקבותיו גם אלו של מערכות הפעלה אחרות) משתמש בפרוטוקול טלנט רק בחבור לפורט 23. כאשר משתמשים בו לחיבור לפורט אחר הוא יוצר חיבור TCP פשוט, המאפשר להשתמש בו כדי לעבוד עם פרוטוקולי תקשורת טקסטואליים כגון HTTP ו־SMTP.
== פרטי הפרוטוקול ==
טלנט הוא פרוטוקול שרת-לקוח המשתמש בפרוטוקול ה-TCP/IP. הפורט המקובל לשימוש בתקשורת טלנט להתחברות מרחוק הוא פורט 23 (TCP). קיים מגוון של הרחבות לפרוטוקול טלנט, וחלקן אף הוכנסו לתקן. במסמך IETF STD במספר 27 עד 32, מוגדר פרוטוקול טלנט והרחבותיו, אולם חלק מהפרוטוקול שלא הוגדר בצורה רשמית משמש עדיין במקרים שונים.

== אבטחה ==
===אבטחה של Telnet===
אבטחה היא הסיבה המשמעותית ביותר להימנעות משימוש בטלנט במערכות שרתים ואינטרנט מודרניות לצורכי שליטה מרחוק על השרת. ישנן מספר סוגיות אבטחה ובהן:
* בתקשורת טלנט הנתונים מועברים כמו שהם (plaintext), ולא מוצפנים - ובכך עלולות להיחשף סיסמאות ומידע סודי אחר לכל ישות בעלת יכולות הסנפה ברשת.
* שיטת ההזדהות של פרוטוקול הטלנט מאמתת רק את זהותו של שולח הבקשה, ולכן התקשורת פגיעה להתקפת אבטחת מידע מסוג "התקפת אדם באמצע".

רמת האבטחה הירודה של טלנט נובעת מרמת האבטחה הנמוכה שנדרשה בעת שפותח הפרוטוקול, בשנת 1969. באותה עת רשתות תקשורת המחשבים רק החלו להתפתח, והמודעות לאבטחה ברשת הייתה נמוכה. רוב הרשתות פנימיות והצורך באבטחה הוגבל לרמה הבסיסית ביותר, עקב היעדר גורמים זדוניים בעלי רמת תחכום מספקת וגישה לרשת. כיום, עם השימוש ברשת האינטרנט וברשתות תקשורת מקומיות מרובות משתמשים, המידע עובר מספר רב של תחנות. לכן אין להסתמך על יכולות האבטחה המוגבלות ויש להשתמש בפרוטוקולים מודרניים יותר.

===פרוטוקול SSH===

בשנת 1995 הושק פרוטוקול ה-SSH, המהווה גרסה מאובטחת של פרוטוקול טלנט. לפרוטוקול זה יכולות אבטחה טובות יותר מאלה של טלנט, הכוללות:
* שימוש במפתח ציבורי על מנת לוודא את זהות שולח הבקשה ואת היעדרן של התערבויות חיצוניות במהלך שליחת הנתונים.
* תיעול תעבורה - שרת SSH מסוגל לתעל תעבורה בין שני גורמי קצה ברשת באופן בטוח.

== המצב הנוכחי ==
פרוטוקול טלנט עצמו נזנח, אינו מפותח יותר והשימוש בו מועט, אך לקוחות טלנט נותרו נפוצים בשל היכולת לשוחח עם מחשבים אחרים באמצעות פקודות טקסט ישירות, ללא תיווך תוכנות. תכונה זו משמשת לאיתור באגים בשירותי רשת, שליחת דואר אלקטרוני וקבלתו, פריצה למחשבים ושימושים נוספים המצריכים תקשורת ישירה עם המחשב המארח ללא תיווך של תוכנות בפורטים שונים. 

גם כיום ישנו ציוד אלקטרוני (בעיקר ציוד רשת כגון מודמים, נתבים ונקודות גישה) שהגדרתם לשימוש מתבצעת על ידי תקשורת טורית בפרוטוקול טלנט בחיבור ישיר בין מחשב או מכשיר ייעודי לבין ההתקן, כך שלקוח הטלנט משמש כמסך עבור פקודות הפלט והקלט של ההתקן. 

טלנט משמש גם מספר משחקים מרובי משתתפים המשתמשים בפרוטוקול להעברת הודעות בין שרת המשחק לשחקנים ובינם לבין עצמם באמצעות אלגוריתמים שמאפשרים המרת תמונה לקוד ASCII.

== לקוחות טלנט ==
=== מגוון מערכות ===
* PuTTy הוא לקוח חינמי המאפשר חיבור לטלנט ול-SSH.
* [http://ozone.eesc.com/ mTelnet] הוא לקוח מסך מלא ל-Windows שתומך גם בפלטפורמות נוספות.

=== לקוחות למערכת Windows ===
* מערכת ההפעלה Windows Vista מגיעה עם לקוח טלנט.
* [http://www.probit.co.il/ Polyscript] הוא לקוח טלנט מתקדם ל-Windows הכולל תמיכה בטלנט, SSH1, SSH2,Serial ומאפשר כתיבת סקריפטים ללא תכנות.
* [http://hp.vector.co.jp/authors/VA002416/teraterm.html TeraTerm] הוא לקוח SSH וטלנט חינמי.
* [https://web.archive.org/web/20061103172618/http://www.celestialsoftware.net/telnet/ AbsoluteTelnet] הוא לקוח טלנט ל-Windows הכולל תמיכה בטלנט, SSH1, SSH2 ועבודה עם קידודים שונים.

==== לקוחות קוד פתוח ====
* [http://dtelnet.sourceforge.net/ dtelnet] הוא לקוח קוד פתוח לחלונות.
* [http://pueblo.sourceforge.net/ Pueblo/UE] הוא לקוח חופשי לחלונות הכולל תמיכה ב-HTML.
* [http://consoletelnet.sourceforge.net/ Console telnet] לקוח מסך מלא דמוי DOS.

==== לקוחות קוד סגור ====
* [https://web.archive.org/web/20061110182058/http://www.sofotex.com/SimpTerm-download_L409.html Simpterm] - לקוח חינמי המאפשר תמיכה בעבודה עם קידודים שונים, למשל שפות סיניות.
* [http://simplemu.onlineroleplay.com/ SimpleMU] - לקוח טלנט המופץ ברישיון שיתופי.
* [http://www.vandyke.com/products/index.html CRT and SecureCRT] - לקוחות טלנט הכוללים יכולות סקריפטינג.

=== מקינטוש ===
* [http://www.brown.edu/Facilities/CIS/tn3270/ tn3270] - לקוח טלנט למקינטוש לפרוטוקול TN3720.
* [http://www.databeast.com dataComet] - לקוח טלנט ו-SSH למקינטוש.

== שרתי טלנט ==
=== חופשי עם קוד מקור ===
* [http://telnetd.sourceforge.net/ telnetd] - שרת טלנט הכתוב ב-JAVA.
* [http://pwts.sourceforge.net/ Poor Woman's Telnet Server] - שרת טלנט עצמאי הכתוב ב-JAVA.
* Synchronet - שרת BBS חופשי התומך בין השאר במספר פרוטוקולים ובהם טלנט.

== קישורים חיצוניים ==

* [http://www.telnet.org/htm/places.htm telnet.org places] - רשימה של שרתי טלנט עם גישה ציבורית
* [https://web.archive.org/web/20061023071357/http://www.dmine.com/telnet/ BBS Corner - Telnet BBS Guide]
* [http://www.eventhelix.com/RealtimeMantra/Networking/Telnet.pdf Telnet Interactions Described as a Sequence Diagram]
* 

==הערות שוליים==

קטגוריה:תקשורת מחשבים
קטגוריה:תקנים בתקשורת מחשבים
קטגוריה:היסטוריה של האינטרנט