在linux中,telnet是TELNET協(xié)議的用戶接口,是基于Telnet協(xié)議的遠(yuǎn)程登錄程序,用于登錄遠(yuǎn)程主機(jī),還可以確定遠(yuǎn)程服務(wù)器的某個端口是否能訪問,語法“telnet [-8acdEfFKLrx][-b<主機(jī)別名>][-e<脫離字符>][-k<域名>][-l<用戶名稱>][-n<記錄文件>][-S<服務(wù)類型>][-X<認(rèn)證形態(tài)>][主機(jī)名稱或IP地址<通信端口>]”。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
telnet是什么
telnet 是基于 Telnet 協(xié)議的遠(yuǎn)程登錄程序,用于登錄遠(yuǎn)程主機(jī),對遠(yuǎn)程主機(jī)進(jìn)行管理。
telnet命令是TELNET協(xié)議的用戶接口,它支持兩種模式:命令模式和會話模式,雖然telnet支持許多命令,但大部分情況下,我們只是使用它查看目標(biāo)主機(jī)是否打開了某端口(默認(rèn)是23)。
telnet 因采用明文傳送報文,安全性不好,很多 Linux 服務(wù)器都不開放 telnet 服務(wù),而改用更安全的 ssh 方式了。但仍然有很多別的系統(tǒng)可能采用了 telnet 方式來提供遠(yuǎn)程登錄,因此弄清楚 telnet 的使用方式仍是很有必要的。
telnet 命令還可做別的用途,比如確定遠(yuǎn)程服務(wù)器的某個端口是否能訪問。
此外,Telnet 協(xié)議是 TCP/IP 協(xié)議族中的一員,是 Internet 遠(yuǎn)程登錄服務(wù)的標(biāo)準(zhǔn)協(xié)議,屬于應(yīng)用層協(xié)議,基于 TCP 協(xié)議實(shí)現(xiàn)遠(yuǎn)程登錄。
telnet [-8acdEfFKLrx][-b<主機(jī)別名>][-e<脫離字符>][-k<域名>][-l<用戶名稱>][-n<記錄文件>][-S<服務(wù)類型>][-X<認(rèn)證形態(tài)>][主機(jī)名稱或IP地址<通信端口>]
-8 允許使用8位字符資料,包括輸入與輸出 -a 嘗試自動登入遠(yuǎn)端系統(tǒng) -b<主機(jī)別名> 使用別名指定遠(yuǎn)端主機(jī)名稱 -c 不讀取用戶專屬目錄里的.telnetrc文件 -d 啟動排錯模式 -e<脫離字符> 設(shè)置脫離字符 -E 濾除脫離字符 -F 使用Kerberos V5認(rèn)證時,加上此參數(shù)可把本地主機(jī)的認(rèn)證數(shù)據(jù)上傳到遠(yuǎn)端主機(jī) -f 此參數(shù)的效果和”-F”參數(shù)相同 -k<域名> 使用Kerberos認(rèn)證時,加上此參數(shù)讓遠(yuǎn)端主機(jī)采用指定的領(lǐng)域名,而非該主機(jī)的域名 -K 不自動登入遠(yuǎn)端主機(jī) -l<用戶名稱> 指定要登入遠(yuǎn)端主機(jī)的用戶名稱 -L 允許輸出8位字符資料 -n<記錄文件> 指定文件記錄相關(guān)信息 -r 使用類似rlogin指令的用戶界面 -S<服務(wù)類型> 設(shè)置telnet連線所需IP TOS信息 -x 假設(shè)主機(jī)有支持?jǐn)?shù)據(jù)加密的功能,就使用它 -X<認(rèn)證形態(tài)> 關(guān)閉指定的認(rèn)證形態(tài)
常用示例
(1)登錄主機(jī)。不顯示提供端口,默認(rèn)為 23。
telnet 192.168.0.5
(2)確認(rèn)遠(yuǎn)端服務(wù)器某個端口是否可用。比如查看遠(yuǎn)端服務(wù)器 ssh 服務(wù)的 22 號端口是否開放。
telnet 10.234.178.144 22 Trying 10.234.178.144... Connected to 10.234.178.144. Escape character is '^]'. SSH-2.0-OpenSSH_6.0
以上表示遠(yuǎn)端服務(wù)器 ssh 服務(wù)的 22 號端口已經(jīng)開放。注意,這并不表示使用 ssh 命令一定可以與遠(yuǎn)端服務(wù)器建立 SSH 鏈接,需要遠(yuǎn)端服務(wù)器的授權(quán)。
(3)進(jìn)入命令行交互模式。
如果在沒有 host 參數(shù)的情況下調(diào)用 telnet,它將進(jìn)入命令模式,提示符為 telnet>。
telnet telnet>
交互模式下常用子命令有:
auth <argument> [...]:查看和管理telnet登錄身份驗證方式。argument可取值:disable、enable和status close:關(guān)閉當(dāng)前 Telnet 連接 display:使用 display 命令可以查看 Telnet 客戶端的當(dāng)前設(shè)置 logout:類似于cloase命令,用于關(guān)閉Telnet連接或者掛起。注:Telnet服務(wù)端可能不支持 open <host> [-l user] [[-] port]:建立到指定主機(jī)的 Telnet 連接 send <arguments>:使用send命令可以向Telnet服務(wù)器發(fā)送特定字符串。支持包括但不限于以下命令字符串: abort:終止服務(wù)命令 ao:Abort Output,放棄輸出命令 ayt:Are you there命令 brk:Break命令 eof:發(fā)送End Of File字符 escape:發(fā)送當(dāng)前的轉(zhuǎn)義字符,初始為分組符^]。 ip:中斷進(jìn)程命令 synch:執(zhí)行Telnet同步操作。 quit:退出 Telnet 客戶端。 status:顯示當(dāng)前Telnet連接狀態(tài)