每天一個linux命令(45)--telnet命令


  每天一個Linux命令,今天是網絡命令中的Telnet。

  Telnet 命令通常用來遠程登錄,Telnet 程序是基於 Telnet 協議的遠程登錄客戶端程序。Telnet 協議是TCP/IP協議族中的一員,是Internet 遠程登錄服務的標准協議和主要方式。它為用戶提供了本地計算機上完成遠程主機工作的能力。在終端使用者的電腦上使用Telnet 程序,用它連接到服務端。終端使用者可以在Telnet 程序中輸入命令,這些命令會在服務器上運行,就像直接在服務器的控制台上輸入一樣。可以在本地就能控制服務器。要開始一個Telnet 會話,必須輸入用戶名和密碼來登錄服務器。Telnet 是常用的遠程控制web服務器的方法。

  但是,Telnet 因為采用明文傳送報文,安全性不好,很多Linux 服務器都不開放Telnet 服務,而改用更安全的SSH方式了。但仍然有很多別的系統可能采用了Telnet 方式來提供遠程登錄,因此弄清楚Telnet 客戶端的使用方式仍是很有必要的。

  Telnet 命令還可以作為別的用途,比如確定遠程服務的狀態,比如確定遠程服務器的某個端口是否能訪問。

  1.命令格式:

    Telnet [參數] [主機]

  2.命令功能:

    執行Telnet 指令開啟終端機階段作業,並登入遠端主機

  3.命令參數:

    -8  允許使用8位字符資料,包括輸入與輸出

    -a  嘗試自動登入遠端系統

    -b  使用別名指定遠端主機名稱

    -c  不讀取用戶專屬目錄里的.telnetrc文件。

    -d  啟動排錯模式

    -e  設置脫離字符

    -E   濾除脫離字符

    -f  此參數的效果和指定 -F  參數相同

    -F  使用 kerberos  V5  認證時,加上此參數可把本地主機的認證數據上傳到遠端主機

    -k  使用kerberos   認證時,加上此參數讓遠端主機采用指定的域名,而非該主機的域名

    -K  不自動登入遠端主機

    -l  指定要登入遠端主機的用戶名稱

    -L  允許輸入8為字符資料

    -n  指定文件記錄相關信息

    -r  使用類似 rlogin指令的用戶界面

    -S  設置Telnet 連線所需的IP  TOS信息

    -x  架設主機有支持數據加密的功能,就是用它

    -X  關閉指定的認證形態

  4.使用實例:

  實例1:遠程服務器無法訪問

  命令:

    Telnet  192.168.1.1

    當提示Telnet unable to  connect to remote  hsot 等

  說明:處理這種情況,

  1)先確認IP地址是否正確

  2)確認IP地址對應的主機是否已經開機

  3)如果主機已經啟動,確認路由設置是否設置正確?(使用 route 命令查看)

  4)如果主機已經啟動,確認主機上是否開啟了 Telnet 服務?(使用netstat 命令查看,TCP的23 端口是否有 listen 狀態的行)

  5)如果主機已經啟動 Telnet 服務,確認防火牆是否放開了 23 端口的訪問?(使用 iptables-save查看)

  實例2:域名無法解析

  命令:

    Telnet  www.baidu.com

  說明:

    1)確認域名是是否正確

    2)確認本機的域名解析有關的設置是否正確(/etc/resolve.conf中nameserver的設置是否正確,如果沒有,可以使用  nameserver 114.114.114.114/8.8.8.8)

    3)確認防火牆是否開放了 USP53端口的訪問(DNS使用 UDP協議,端口 53, 使用 IPTABLES-SAVE查看)

  實例3:啟動Telnet 服務

  命令:

    service  xinetd   restart

  配置參數,通常的配置如下:

  service  telnet

  {

  disable  =  no  #啟用

  flags  =  REUSE  #socket 可重用

  socket_type  =  stream  #連接方式為TCP

  wait  =  no  #為每個請求啟動一個進程

  user  =  root  #啟動服務的用戶為 root 

  server  =  /usr/sbin/in.telnetd  #要激活的進程

  log_on_failure  +=  USERID  #登錄失敗時記錄登錄用戶名

  }

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

  only_from  =  192.168.1.1  #只允許 192.168.1.1登錄

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

  no_access  =  192.168.1.{2,3,4}  #禁止192.168.1.2/3/4登錄

  如果要設置開放時段,加入

  access_times  =  9:00-12:00  #每天只有這個時間段開放服務

  如果你有兩個IP地址,一個是私網的IP地址如192.168.1.1,一個是公網的IP地址如 192.168.1.2,如果你希望用戶只能從私網來登錄Telnet服務,那么加入

  bind  =  192.168.1.1

  個配置項具體的含義和語法可參考 xined 配置文件屬性說明(man   xinetd.conf)  

  配置端口,修改 services 文件:

  #  vi   /etc/services

  找到以下兩句

  Telnet  23/tcp

  Telnet  23/udp

  如果前面有 #字符,就去掉它,Telnet的默認端口是 23,這個端口也是黑客端口掃面的主要對象,因此最好將這個端口修改掉,修改的方法很簡單,就是將23這個數字修改掉,改成大一點的數字,比如 61123,注意,1023以下的端口號是 Internet 保留的端口號,因此最好不要用,還應該注意不要與其它服務的端口沖突。

  啟動服務:

  service  xinetd  restart  

  一般情況下是不允許 root  從遠程登錄的,可以先用普通賬號登錄,然后再 su   切到root 用戶。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM