• 2018.4.18 Ubuntu 的telnet命令详解


    Ubuntu 的telnet命令详解

    1.作用用途

        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 用户。
    
  • 相关阅读:
    jQuery Mobile的学习 jQuery Mobile工具栏、标题栏、页脚栏的定位学习
    【centOS7】centOS7上普通用户切换root用户,相互切换
    【elaseticsearch】elaseticsearch启动报错Caused by: org.elasticsearch.transport.BindTransportException: Failed to bind to [9300-9400]
    【docker】docker启动、重启、关闭命令,附带:docker启动容器报错:docker: Error response from daemon: driver failed programming external connectivity on endpoint es2-node
    【centOS】centos7 查看和关闭防火墙
    【elasticsearceh】elasticsearch.yml配置文件详解
    【docker】关于docker 中 镜像、容器的关系理解
    【xshell】xshell设置快捷键 设置Ctrl+C Ctrl+V快捷键为复制粘贴
    【docker】elasticsearch-head无法连接elasticsearch的原因和解决,集群健康值:未连接,ElasticSearch——跨域访问的问题
    【spring cloud】spring cloud Sleuth 和Zipkin 进行分布式链路跟踪
  • 原文地址:https://www.cnblogs.com/qichunlin/p/8877983.html
Copyright © 2020-2023  润新知