• CentOS7.4 搭建和使用telnet


    1.先检查是否安装了telnet

    rpm -qa | grep telnet   //检查你的CentOS是否安装了telnet和telnet-server
    rpm -qa xinetd   //检查你的CentOS是否安装了xinetd,telnet的自启动依赖它

    如果执行结果没有任何输出,那么说明你的机器上没有安装telnet和xinetd

    2.安装telnet并设置开机自启动

    yum list |grep telnet   //列出当前可用的rpm包
    yum install telnet-server  //安装telnet-server 服务端
    yum install telnet    //安装telnet 客户端

    3.如果没有安装xinetd,则安装它

    yum install -y xinetd 
    systemctl enable xinetd.service  //设置xinetd开机自启动

    4.开启xinetd服务并设置为开机自启。

    [root@CentOs64-7 conf]# systemctl enable xinetd.service 
    [root@CentOs64-7 conf]# systemctl status xinetd.service 
    ● xinetd.service - Xinetd A Powerful Replacement For Inetd
       Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
       Active: inactive (dead)
    [root@CentOs64-7 conf]# systemctl start xinetd.service
    [root@CentOs64-7 conf]# systemctl status xinetd.service 
    ● xinetd.service - Xinetd A Powerful Replacement For Inetd
       Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
       Active: active (running) since Thu 2018-10-18 01:33:11 CST; 17s ago
      Process: 27303 ExecStart=/usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid $EXTRAOPTIONS (code=exited, status=0/SUCCESS)
     Main PID: 27304 (xinetd)
       CGroup: /system.slice/xinetd.service
               └─27304 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
    
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing discard
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing discard
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing echo
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing echo
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing tcpmux
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing time
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: removing time
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: xinetd Version 2.3.15 started with libwrap loadavg labeled-networking options compiled in.
    Oct 18 01:33:11 CentOs64-7.4 xinetd[27304]: Started working: 0 available services
    Oct 18 01:33:11 CentOs64-7.4 systemd[1]: Started Xinetd A Powerful Replacement For Inetd.

      经过上面的启动命令和查看xinted装态命令,可以看到xinted已经被成功启动了。

    5.测试telnet是否可用,使用的命令和结果如下

    [root@CentOs64-7 conf]# telnet localhost
    Trying 127.0.0.1...
    telnet: connect to address 127.0.0.1: Connection refused
    Trying ::1...
    telnet: connect to address ::1: No route to host

      这说明,当前telnet是并不可用的。这是因为telnet的端口是23,而CentOS默认这个端口是关闭的,我们可以使用命令来查看一下23这个端口的装态,如下:

    [root@CentOs64-7 conf]# netstat -tunlp 
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1127/sshd           
    tcp        0      0 0.0.0.0:2181            0.0.0.0:*               LISTEN      27193/java          
    tcp        0      0 0.0.0.0:33031           0.0.0.0:*               LISTEN      27193/java          
    tcp6       0      0 :::3306                 :::*                    LISTEN      12118/mysqld        
    udp        0      0 172.16.85.47:123        0.0.0.0:*                           14051/ntpd          
    udp        0      0 127.0.0.1:123           0.0.0.0:*                           14051/ntpd          
    udp        0      0 0.0.0.0:123             0.0.0.0:*                           14051/ntpd          
    udp6       0      0 :::123                  :::*                                14051/ntpd          

      可以看到TCP并没有23 这个端口号,当然你也可以在服务器本地使用nmap ip地址 -p 23 查看telnet状态是关闭的。

    6.设置telnet服务开机启动。

    systemctl enable telnet.socket

    7.重启服务(telnet服务依赖xinetd守护,安装telnet-server后启动时需要重启xinetd服务)。

    systemctl start telnet.socket
    systemctl start xinetd

    8.开启端口

      CentOS采用了 firewalld 防火墙,查询是否开启23端口

    # firewall-cmd --query-port=23/tcp

    no

    显示23端口没有开启使用下面命令开启23端口

    # firewall-cmd --zone=public --add-port=23/tcp --permanent

    success

    重新加载firewall-cmd

    # firewall-cmd --complete-reload

    success

    重新查询23端口是否开放

    # firewall-cmd --query-port=23/tcp

    yes

    success表示已开启!现在可以用telnet命令远程登陆CentOS7快乐玩耍了!

    注:telnet使用的是文明密码,为安全建议使用SSH加密登陆!

    9.telnet默认是不开启的,所以你得telnet不能使用也可能不是第8步的原因,例如我的机器就没有开防火墙,所以执行第9步。

      telnet服务之后,默认是不开启服务,修改文件/etc/xinetd.d/telnet来开启服务:

    注:如有则修改,第一次修改,此文件若不存在,可自己vim创建修改:
           修改 disable = yes 为 disable = no

      修改后的telnet文件为:

    #default:yes  
    # description: The telnet server servestelnet sessions; it uses   
    # unencrypted username/password pairs for authentication.  
    service telnet
    {        
        flags = REUSE            
        socket_type  = stream           
        wait = no            
        user = root                       
        server =/usr/sbin/in.telnetd                       
        log_on_failure  += USERID                
        disable = no   
    }  
      

    查看xinetd是否启动

    [root@CentOs64-7 xinetd.d]# ps -ef | grep xinetd
    root 27304 1 0 01:33 ? 00:00:00 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
    root 27378 27017 0 02:01 pts/0 00:00:00 grep --color=auto xinetd

    说明已经启动

    10.使用telnet localhost检测telnet是否正常,密码正确,但是总是提示Login incorrect

    telnet是除了SSH之外另一种远程登录服务器的办法,但是它并不安全,因为是明文的。

    [root@CentOs64-7 xinetd.d]# telnet localhost
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    
    Kernel 3.10.0-693.2.2.el7.x86_64 on an x86_64
    CentOs64-7 login: root
    Password: 
    Login incorrect
    
    CentOs64-7 login: root
    Password: 
    Login incorrect
    
    CentOs64-7 login: Connection closed by foreign host.

    解决办法:

    解决1:注释/etc/pam.d/remote的第一行,
    即:auth       required     pam_securetty.so

     先进入 /etc/pam.d/目录

    [root@CentOs64-7 xinetd.d]# cd /etc/pam.d/
    [root@CentOs64-7 pam.d]# pws
    -bash: pws: command not found
    [root@CentOs64-7 pam.d]# pwd
    /etc/pam.d

    修改结果如下:

      然后再使用telnet localhost就可以成功登录你指定的用户了。

  • 相关阅读:
    例题
    经典模型
    定义
    洛谷p2564生日礼物andp2627修建草坪
    转自大佬的线段树
    c++String类
    随机数
    JVM知识点总结
    task5 模型融合 打卡
    task4 建模与调参 打卡
  • 原文地址:https://www.cnblogs.com/ToBeExpert/p/9808134.html
Copyright © 2020-2023  润新知