[关闭]
@cdmonkey 2019-04-19T04:11:17.000000Z 字数 2816 阅读 940

telnet

命令总结


http://www.cnblogs.com/peida/archive/2013/03/13/2956992.html

一、简介

该指令通常用于远程登录。它是基于 Telnet 协议之远程登录客户端程序,该协议是 TCP/IP 协议族中的一员,是互联网远程登陆服务之标准协议及主要方式。它为用户提供了于本地计算机上完成远程主机工作的能力。于终端使用者的电脑上使用 telnet 指令,用它连接至远程服务器。终端使用者可以于连接并登录后输入相应命令,这些命令会于服务器端运行,就像直接在服务器的控制台上输入一样。可以于本地就能控制服务器。

要开始一个 telnet 会话,必须输入用户名及密码来登录服务器。该指令是常用的远程控制服务器的方法。

由于 Telnet 采用明文传送报文,安全性不好,因而很多服务器都不开放该服务,而改用更安全的 SSH 方式。但仍然有很多别的系统可能采用了这种方式来提供远程登录,因而弄清楚其客户端的使用方式仍是很有必要的。

这个指令还有一些其他用途,比如确定远程服务之状态,比如确定远程服务器的某个端口是否能访问。

指令格式

  1. telnet [-8EFKLacdfrx] [-X authtype] [-b hostalias] [-e escapechar] [-k realm] [-l user]
  2. [-n tracefile] [host [port]]

二、使用

1. 客户端的使用

安装客户端工具:

  1. [root@WEB-A3 ~]# yum install -y telnet
  1. [root@localhost ~]# telnet 192.168.120.209
  2. Trying 192.168.120.209...
  3. telnet: connect to address 192.168.120.209: No route to host
  4. telnet: Unable to connect to remote host: No route to host
  5. --------------------
  6. #处理这种情况方法:
  7. #(1)确认IP地址是否正确?
  8. #(2)确认IP地址对应的主机是否已经开机。
  9. #(3)如果主机已经启动,确认路由设置是否设置正确(使用route命令查看)。
  10. #(4)如果主机已经启动,确认主机上是否开启了telnet服务(即查看TCP的23端口是否有监听状态的行)。
  11. #(5)如果主机已经启动telnet服务,确认防火墙是否放开了23端口的访问。
  1. [root@localhost ~]# telnet 192.168.120.206
  2. Trying 192.168.120.206...
  3. telnet: connect to address 192.168.120.206: Connection refused
  4. telnet: Unable to connect to remote host: Connection refused
  5. --------------------
  6. #处理这种情况方法:
  7. #(1)确认IP地址或者主机名是否正确。
  8. #(2)确认端口是否正确,是否为默认的23端口。
  1. [root@SITAPP ~]# telnet 192.168.30.110 2181
  2. Trying 192.168.30.110...
  3. Connected to 192.168.30.110 (192.168.30.110).
  4. Escape character is '^]'.

最后一行的意思是:按组合键Ctrl+]能够呼叫出telnet的命令行,出现命令行提示符之后就可以执行相关的指令了:

  1. # Quit command:
  2. telnet> quit
  3. Connection closed.

2. 服务端的使用

安装服务端工具:

  1. [root@yum-server ~]# yum install -y telnet-server
  1. [root@yum-server ~]# vim /etc/xinetd.d/telnet
  2. # default: on
  3. # description: The telnet server serves telnet sessions; it uses \
  4. # unencrypted username/password pairs for authentication.
  5. service telnet
  6. {
  7. flags = REUSE
  8. socket_type = stream
  9. wait = no
  10. user = root
  11. server = /usr/sbin/in.telnetd
  12. log_on_failure += USERID
  13. disable = no # 注意需要修改这里: yes --> no
  14. }
  15. ---------------
  16. # Startup the service:
  17. [root@yum-server ~]# /etc/init.d/xinetd start
  18. [root@yum-server ~]# lsof -i:23
  19. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  20. xinetd 8564 root 5u IPv6 423033 0t0 TCP *:telnet (LISTEN)

注意:为了安全,telnet是不能使用根用户直接登陆的,建议使用普通用户登录后再用切换到根用户用户。如果必须要使用根用户进行登录,则可以按照以下步骤操作:

  1. [root@yum-server ~]# vim /etc/securetty
  2. # 于原有内容的基础上增加如下的内容:
  3. pts/1
  4. pts/2
  5. pts/3
  6. pts/4
  7. pts/5
  8. pts/6
  9. pts/7
  10. pts/8
  11. pts/9
  12. pts/10
  13. pts/11
  14. [root@yum-server ~]# /etc/init.d/xinetd restart

我们接下来就能够于使用telnet进行登录了:

  1. [root@SVRNMS01 ~]# telnet 172.16.132.241
  2. Trying 172.16.132.241...
  3. Connected to 172.16.132.241.
  4. Escape character is '^]'.
  5. CentOS release 6.7 (Final)
  6. Kernel 2.6.32-573.el6.x86_64 on an x86_64
  7. login:

测试脚本:

  1. echo -e "e" | telnet -e "e" 11.136.51.212 7080|grep "Escape character is" &> /dev/null

3. Install telnet-server on CentOS7

http://sharadchhetri.com/2014/12/08/install-telnet-server-on-centos-7-rhel-7

服务启动同 CentOS6.x 上有所不同。

  1. # 安装指令还是那样,没啥不同:
  2. [root@cd-test02 ~]# yum install telnet-server
  3. # 启动服务:
  4. [root@cd-test02 ~]# systemctl start telnet.socket
  5. #
  6. [root@cd-test02 ~]# netstat -lntup|grep 23
  7. tcp6 0 0 :::23 :::* LISTEN 1/systemd
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注