Linux命令 telnet - 登錄遠(yuǎn)程主機(jī)和管理(測(cè)試ip端口是否連通)

2022-03-22 09:34 更新

telnet

登錄遠(yuǎn)程主機(jī)和管理(測(cè)試ip端口是否連通)

補(bǔ)充說(shuō)明

telnet命令 用于登錄遠(yuǎn)程主機(jī),對(duì)遠(yuǎn)程主機(jī)進(jìn)行管理。telnet因?yàn)椴捎妹魑膫魉蛨?bào)文,安全性不好,很多Linux服務(wù)器都不開(kāi)放telnet服務(wù),而改用更安全的ssh方式了。但仍然有很多別的系統(tǒng)可能采用了telnet方式來(lái)提供遠(yuǎn)程登錄,因此弄清楚telnet客戶(hù)端的使用方式仍是很有必要的。

語(yǔ)法

telnet(選項(xiàng))(參數(shù))

選項(xiàng)

-8:允許使用8位字符資料,包括輸入與輸出;
-a:嘗試自動(dòng)登入遠(yuǎn)端系統(tǒng);
-b<主機(jī)別名>:使用別名指定遠(yuǎn)端主機(jī)名稱(chēng);
-c:不讀取用戶(hù)專(zhuān)屬目錄里的.telnetrc文件;
-d:?jiǎn)?dòng)排錯(cuò)模式;
-e<脫離字符>:設(shè)置脫離字符;
-E:濾除脫離字符;
-f:此參數(shù)的效果和指定"-F"參數(shù)相同;
-F:使用Kerberos V5認(rèn)證時(shí),加上此參數(shù)可把本地主機(jī)的認(rèn)證數(shù)據(jù)上傳到遠(yuǎn)端主機(jī);
-k<域名>:使用Kerberos認(rèn)證時(shí),加上此參數(shù)讓遠(yuǎn)端主機(jī)采用指定的領(lǐng)域名,而非該主機(jī)的域名;
-K:不自動(dòng)登入遠(yuǎn)端主機(jī);
-l<用戶(hù)名稱(chēng)>:指定要登入遠(yuǎn)端主機(jī)的用戶(hù)名稱(chēng);
-L:允許輸出8位字符資料;
-n<記錄文件>:指定文件記錄相關(guān)信息;
-r:使用類(lèi)似rlogin指令的用戶(hù)界面;
-S<服務(wù)類(lèi)型>:設(shè)置telnet連線所需的ip TOS信息;
-x:假設(shè)主機(jī)有支持?jǐn)?shù)據(jù)加密的功能,就使用它;
-X<認(rèn)證形態(tài)>:關(guān)閉指定的認(rèn)證形態(tài)。

參數(shù)

  • 遠(yuǎn)程主機(jī):指定要登錄進(jìn)行管理的遠(yuǎn)程主機(jī);
  • 端口:指定TELNET協(xié)議使用的端口號(hào)。

實(shí)例

$ telnet 192.168.2.10
Trying 192.168.2.10...
Connected to 192.168.2.10 (192.168.2.10).
Escape character is '^]'.

    localhost (Linux release 2.6.18-274.18.1.el5 #1 SMP Thu Feb 9 12:45:44 EST 2012) (1)

login: root
Password:
Login incorrect

一般情況下不允許root從遠(yuǎn)程登錄,可以先用普通賬號(hào)登錄,然后再用su -切到root用戶(hù)。

$ telnet 192.168.188.132
Trying 192.168.188.132...
telnet: connect to address 192.168.188.132: Connection refused
telnet: Unable to connect to remote host

處理這種情況方法:

  1. 確認(rèn)ip地址是否正確?
  2. 確認(rèn)ip地址對(duì)應(yīng)的主機(jī)是否已經(jīng)開(kāi)機(jī)?
  3. 如果主機(jī)已經(jīng)啟動(dòng),確認(rèn)路由設(shè)置是否設(shè)置正確?(使用route命令查看)
  4. 如果主機(jī)已經(jīng)啟動(dòng),確認(rèn)主機(jī)上是否開(kāi)啟了telnet服務(wù)?(使用netstat命令查看,TCP的23端口是否有LISTEN狀態(tài)的行)
  5. 如果主機(jī)已經(jīng)啟動(dòng)telnet服務(wù),確認(rèn)防火墻是否放開(kāi)了23端口的訪問(wèn)?(使用iptables-save查看)

啟動(dòng)telnet服務(wù)

service xinetd restart

配置參數(shù),通常的配置如下:

service telnet
{
    disable = no #啟用
    flags = REUSE #socket可重用
    socket_type = stream #連接方式為T(mén)CP
    wait = no #為每個(gè)請(qǐng)求啟動(dòng)一個(gè)進(jìn)程
    user = root #啟動(dòng)服務(wù)的用戶(hù)為root
    server = /usr/sbin/in.telnetd #要激活的進(jìn)程
    log_on_failure += USERID #登錄失敗時(shí)記錄登錄用戶(hù)名
}

如果要配置允許登錄的客戶(hù)端列表,加入

only_from = 192.168.0.2 #只允許192.168.0.2登錄

如果要配置禁止登錄的客戶(hù)端列表,加入

no_access = 192.168.0.{2,3,4} #禁止192.168.0.2、192.168.0.3、192.168.0.4登錄

如果要設(shè)置開(kāi)放時(shí)段,加入

access_times = 9:00-12:00 13:00-17:00 # 每天只有這兩個(gè)時(shí)段開(kāi)放服務(wù)(我們的上班時(shí)間:P)

如果你有兩個(gè)IP地址,一個(gè)是私網(wǎng)的IP地址如192.168.0.2,一個(gè)是公網(wǎng)的IP地址如218.75.74.83,如果你希望用戶(hù)只能從私網(wǎng)來(lái)登錄telnet服務(wù),那么加入

bind = 192.168.0.2

各配置項(xiàng)具體的含義和語(yǔ)法可參考xined配置文件屬性說(shuō)明(man xinetd.conf)

配置端口,修改services文件:

# vi /etc/services

找到以下兩句

telnet 23/tcp
telnet 23/udp

如果前面有#字符,就去掉它。telnet的默認(rèn)端口是23,這個(gè)端口也是黑客端口掃描的主要對(duì)象,因此最好將這個(gè)端口修改掉,修改的方法很簡(jiǎn)單,就是將23這個(gè)數(shù)字修改掉,改成大一點(diǎn)的數(shù)字,比如61123。注意,1024以下的端口號(hào)是internet保留的端口號(hào),因此最好不要用,還應(yīng)該注意不要與其它服務(wù)的端口沖突。

啟動(dòng)服務(wù):

service xinetd restart


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)