Telnet
網際網路协议套組 |
---|
應用層 |
傳輸層 |
網路層 |
連結層 |
Telnet是一種應用層協議,使用於網際網路及區域網中,使用虛擬終端機的形式,提供雙向、以文字字串為主的命令列介面互動功能。屬於TCP/IP協議族的其中之一,是網際網路遠端登錄服務的標準協議和主要方式,常用於伺服器的遠端控制,可供使用者在本地主機執行遠端主機上的工作。
Telnet在1969年開發出來,在RFC 15定義,RFC 854定義了擴充功能。互联网工程任务组(IETF),在STD 8中,將其加以標準化,是最早形成的網際網路協議之一。
原理
使用者首先在電腦執行Telnet程序,連線至目的地伺服器,然後輸入帳號和密碼以驗證身份。使用者可以在本地主機輸入命令,然後讓已連接的遠端主機執行,就像直接在對方的控制台上輸入一樣。
傳統Telnet會話所傳輸的資料並未加密,帳號和密碼等敏感資料容易會被竊聽,因此很多伺服器都會封鎖Telnet服務,改用更安全的SSH。
應用
- 圖書館利用Telnet及全球資訊網供讀者進行續借、預約及查詢記錄的服務。
- 多數的純文字式BBS仍使用Telnet,部分BBS提供SSH服務以提升安全性。
- 路由器、交換器及大部份的電信設備仍提供Telnet及SSH介面,以讓管理者連入進行設定及維護。
Microsoft Windows從Vista開始,不再預先安裝Telnet客戶端,使用者需要手動從控制台裡安裝才可使用。而在之前的Windows版本中,Telnet客戶端可隨時使用。
相關RFC文件
網際網路
- RFC 854, Telnet Protocol Specification
- RFC 855, Telnet Option Specifications
- RFC 856, Telnet Binary Transmission
- RFC 857, Telnet Echo Option
- RFC 858, Telnet Suppress Go Ahead Option
- RFC 859, Telnet Status Option
- RFC 860, Telnet Timing Mark Option
- RFC 861, Telnet Extended Options: List Option
编程界面
Delphi/C++Builder中,通过Indy,可以使用控件类TIdTelnetServer与TIdCmdTCPClient,分别扮作服务器端与客户端提供了编程设施。在客户端,发送消息时必须调用SendCh()方法,每次发送一个字符;接收数据通过OnDataAvailable事件自行编写处理函数。