功能说明

telnet 命令通常用来远程登录。telnet程序是基于TELNET协议的远程登录客户端程序。Telnet协议是TCP/IP协议族中的一员,是 Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的 能力。在终端使用者的电脑上使用telnet程 序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控 制服务器。要开始一个 telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。

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

telnet命令还可做别的用途,比如确定远程服务的状态,比如确定远程服务器的某个端口是否能访问。

语法

telnet[参数][主机]

参数

-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<认证形态> 关闭指定的认证形态。

实例1

远程服务器无法访问

[root@localhost ~]# telnet 192.168.120.209
Trying 192.168.120.209...
telnet: connect to address 192.168.120.209: No route to host
telnet: Unable to connect to remote host: No route to host

说明:

处理这种情况方法:

(1)确认ip地址是否正确?

(2)确认ip地址对应的主机是否已经开机?

(3)如果主机已经启动,确认路由设置是否设置正确?(使用route命令查看)

(4)如果主机已经启动,确认主机上是否开启了telnet服务?(使用netstat命令查看,TCP的23端口是否有LISTEN状态的行)

(5)如果主机已经启动telnet服务,确认防火墙是否放开了23端口的访问?(使用iptables-save查看)

实例2

域名无法解析

[root@localhost ~]# telnet www.baidu.com
www.baidu.com/telnet: Temporary failure in name resolution

说明:

处理这种情况方法:

(1)确认域名是否正确

(2)确认本机的域名解析有关的设置是否正确(/etc/resolv.conf中nameserver的设置是否正确,如果没有,可以使用nameserver 8.8.8.8)

(3)确认防火墙是否放开了UDP53端口的访问(DNS使用UDP协议,端口53,使用iptables-save查看)

实例3

启动telnet服务

[root@localhost ~]# cd /etc/xinetd.d/
[root@localhost xinetd.d]# ll
总计 124
-rw-r--r-- 1 root root 1157 2011-05-31 chargen-dgram
-rw-r--r-- 1 root root 1159 2011-05-31 chargen-stream
-rw-r--r-- 1 root root 523 2009-09-04 cvs
-rw-r--r-- 1 root root 1157 2011-05-31 daytime-dgram
-rw-r--r-- 1 root root 1159 2011-05-31 daytime-stream
-rw-r--r-- 1 root root 1157 2011-05-31 discard-dgram
-rw-r--r-- 1 root root 1159 2011-05-31 discard-stream
-rw-r--r-- 1 root root 1148 2011-05-31 echo-dgram
-rw-r--r-- 1 root root 1150 2011-05-31 echo-stream
-rw-r--r-- 1 root root 323 2004-09-09 eklogin
-rw-r--r-- 1 root root 347 2005-09-06 ekrb5-telnet
-rw-r--r-- 1 root root 326 2004-09-09 gssftp
-rw-r--r-- 1 root root 310 2004-09-09 klogin
-rw-r--r-- 1 root root 323 2004-09-09 krb5-telnet
-rw-r--r-- 1 root root 308 2004-09-09 kshell
-rw-r--r-- 1 root root 317 2004-09-09 rsync
-rw-r--r-- 1 root root 1212 2011-05-31 tcpmux-server
-rw-r--r-- 1 root root 1149 2011-05-31 time-dgram
-rw-r--r-- 1 root root 1150 2011-05-31 time-stream
[root@localhost xinetd.d]# cat krb5-telnet 
# default: off
# description: The kerberized telnet server accepts normal telnet sessions, \
# but can also use Kerberos 5 authentication.
service telnet
{
flags = REUSE
socket_type = stream 
wait = no
user = root
server = /usr/kerberos/sbin/telnetd
log_on_failure += USERID
disable = yes
}

说明:

配置参数,通常的配置如下:

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.0.2 #只允许192.168.0.2登录

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

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

如果要设置开放时段,加入

access_times = 9:00-12:00 13:00-17:00 # 每天只有这两个时段开放服务(我们的上班时间:P)

如果你有两个IP地址,一个是私网的IP地址如192.168.0.2,一个是公网的IP地址如218.75.74.83,如果你希望用户只能从私网来登录telnet服务,那么加入

bind = 192.168.0.2

各配置项具体的含义和语法可参考xined配置文件属性说明(man xinetd.conf)

配置端口,修改services文件:

# vi /etc/services

找到以下两句

telnet 23/tcp

telnet 23/udp

如 果前面有#字符,就去掉它。telnet的默认端口是23,这个端口也是黑客端口扫描的主要对象,因此最好将这个端口修改掉,修改的方法很简单,就是将 23这个数字修改掉,改成大一点的数字,比如61123。注意,1024以下的端口号是internet保留的端口号,因此最好不要用,还应该注意不要与 其它服务的端口冲突。

启动服务:

service xinetd restart

(参考:http://www.cnblogs.com/peida/archive/2013/03/13/2956992.html)

分享生活,思考技术人生!欢迎投稿!文章图片来自网络,如有侵权请见谅,请联系我们妥善处理。

- The End -

              做一个与众不同的技术达人

@Python  @Linux  @docker  @openstack  @Hadoop @JavaScript

【Linux】命令每日一个:telnet相关推荐

  1. 【10】linux命令每日分享——cp复制文件和目录

    大家好,这里是sdust-vrlab,Linux是一种免费使用和自由传播的 类UNIX操作系统,Linux的基本思想有两点:一切都是文件:每个文件都有确定的用途:linux涉及到IT行业的方方面面,在 ...

  2. 【12】linux命令每日分享——echo命令为用户添加密码

    大家好,这里是sdust-vrlab,Linux是一种免费使用和自由传播的 类UNIX操作系统,Linux的基本思想有两点:一切都是文件:每个文件都有确定的用途:linux涉及到IT行业的方方面面,在 ...

  3. 用 Linux 命令玩一个有趣的数学游戏

    在家玩流行的英国游戏节目 "Countdown" 中的数字游戏. 像许多人一样,我在大流行期间看了不少新的电视节目.我最近发现了一个英国的游戏节目,叫做 Countdown,参赛者 ...

  4. L60.linux命令每日一练 -- 第九章 Linux进程管理命令 -- top和nice

    9.7 top:实时显示系统中各个进程的资源占有状况 9.7.1 命令详解 ​ [命令星级] ★★★★★ ​ [功能说明] ​ top命令用于实时地对系统处理器状态进行监控,它能够实时地显示系统中各个 ...

  5. linux echo 指向文件夹,Linux 命令每日一练:echo命令

    Linux中echo命令 ->英文含义:回声.共鸣.重复.可以理解记忆为: 重复之前的内容得到响应然后打印输出一行文本,一般起到一个提示的作用. 命令格式: echo[选项]-[字符串/数字]- ...

  6. L29.linux命令每日一练 -- 第四章 文本处理三剑客 -- sed命令

    4.2 sed:流编辑器 4.2.1 sed命令语法及参数说明 ​ [命令星级] ★★★★★ ​ [功能说明] ​ sed是Stream Editor(字符流编辑器)的缩写,简称流编辑器.它是Linu ...

  7. 在python中使用linux命令写一个监控脚本

    编写python监控脚本,监控/和/boot分区的使用率,/ 大于60%就告警,在屏幕上输出内容,具体自己定义 /boot分区大于50%就告警 脚本名monitor_partition.py 将磁盘的 ...

  8. 【Linux】命令每日一个

    free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer.在Linux系统监控的工具中,free命令是最经常使用的命令之一. 1.命令格式: free [参 ...

  9. Linux文本编辑跳到指定行,Linux 命令每日一练:vi命令

    Linux中vi 命令 ->可以理解记忆为:visual insert(即可视化插入)-> 是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器.Linux中的vi编辑器叫v ...

最新文章

  1. 龙岗网络推广解析有关网站SEO排名上去了,但没实际性点击的问题
  2. jQuery动画与事件概念以及语法
  3. Springboot2Web原生组件注入
  4. 平方差和交叉熵损失函数分别用在哪些场景?
  5. java俄罗斯方块简单代码_Java简易俄罗斯方块
  6. 深山红叶袖珍PE系统工具箱说明 V22 正式版
  7. qq音乐无损下载php源码,QQ音乐无损歌曲地址分析以及多平台源码
  8. Mathtype在word中编辑公式时变成英文
  9. 水环境指标 中文对照
  10. 【PMP】PMBOK 笔记 第12章 项目采购管理
  11. 每日一练——回文链表
  12. 极智AI | 全场景算力产品矩阵 看算能系列AI产品
  13. 家谱(特殊的层级人物关系)数据结构与自动排版算法的一种实现
  14. 一方库、二方库、三方库是什么?
  15. 深度学习实例第四部分:PaddlePaddle
  16. sin(1/x)的图像,第二类间断点,震荡间断点
  17. 李书福造手机,会走上周鸿祎和董明珠的老路吗?
  18. Vuforia官方文档-03-Vuforia Engine 生命周期
  19. 中国商务礼仪培训市场趋势报告、技术动态创新及市场预测
  20. uC/OS-II如何使任务在就绪表中进入就绪态与退出就绪态

热门文章

  1. 【go语言基础】go语言开篇
  2. ERP研究 | 你不如别人聪明,很可能是你小时候吃得不好
  3. 如何防止用户修改html提交,当用户刷新页面时,HTML表单被重新提交 - 我如何阻止这种情况发生?...
  4. vim编译linux程序,Linux——vim程序编程器
  5. 【微电网优化】基于粒子群算法求解混合储能系统容量优化问题含Matlab源码
  6. 综合布线里经常使用的三大布线系统详解
  7. 动态新增表字段_G347枞阳段货运车辆超限超载动态检测监控卡点 进入调试阶段...
  8. Spring Boot 2.5.5 正式版发布,MateCloud同步完成版本升级
  9. mysql获取表名及其注释,mysql获得数据库所有表名和字段注释
  10. [No0000A3]护眼谎言大揭秘,选择正确的方式保护眼睛!