一、Telnet安装与启动

telnet由于是不安全的明文传输所以基本被ssh取代了,尤其是在Linux上;不过还是可能会用到,且启停方式还有些不同所以还是有必要说明一下。

rpm -qa | grep telnet           #查看是否安装
yum install -y telnet #装客户端,可选
yum install -y telnet-server #安装服务端
yum install -y xinetd #超级守护进程,一般已安装
service telnetd start #想像中的但实际不可行的停止方式
service telnetd stop #想像中的但实际不可行的停止方式

正确启动操作如下:

第一步,打开/etc/xinetd.d/telnet,将其中的disable值由yes改为no。

第二步,重启xinetd。

service xinetd restart

正确关闭操作如下:

将disable值由no改为yes,再重启xinetd即可。

其实此时telnet服务并未马上关闭,之前telnet的会话还是可以使用,只是由于无人通知连接到来所以不能新连入而已;会话全部退出后进程也确实关闭。

二、关于为什么需要xinetd的讨论

对于ssh等诸多服务我们都习惯用service来直接启停,从使角度这也是很方便的;但对于telnet与众不同的启动方式让人迷惑:我们要启动telnet为什么要通过启动另一个程序来启动呢?

还是telnet的服务名(实际是脚本名)叫xinetd?telnet就是telnet另起一个风马牛不相及的名字,程序员有病吧?

事情得从Linux的程序运行说起,我们会注意到经常我们在一个终端执行命令,如果终端被关闭无论命令是否已完成都会被中止,也就是说Linux中普通命令要依赖于终端而生存的。

对于一向服务比如http,如果终端退出就中止这个不可接受的;而要一个终端一直在那登录着也是不现实的。

解决这个问题就要使服务的进程变为与终端无关的守护进程(也因此常常把守护进程用作服务的意思)

守护进程的实现又有两种方式:一是自身变为守护进程,一是拖管于xinetd超级守护进程

自身变为守护程,即进程一直驻在内存等待客户端请求;httpd等正是这种方式(d正是daemon,守护进程模式的意思)。

拖管于xinetd超级守护进程,即一般是休眠状态xinetd检测到其监听的端口有客户端请求到来之后再去通知唤醒他;telnet正是这种方式。

所有的服务都可以拖管于xinetd方式;但使用这种方式的服务正越来越少,以致我们都不了解这是什么东西。

这有两个原因,一是对于httpd这种频繁请求的服务,频繁唤醒并不见得比自身为守护进程节省资源。

二是现在的资源并不像以前那样紧缺,使用方便易懂(在这是启停)的优先级已然要高于节省资源的优先级。

telnet的装配及xinetd的讨论的更多相关文章

  1. centos telnet --xinetd 服务

    telnet由于是明文传输,所以安全起见最好不要用telnet服务.但是由于telnet是一个比较方便的远程工具,在windows上是自带 的不需要安装客户端即可使用.如果telnet设置的比较复杂, ...

  2. centos7 安装xinetd,telnet

    安装方式:yum [root@master ~]# yum list |grep telnettelnet-server.x86_64                    1:0.17-59.el7 ...

  3. xinetd黑/白名单配置教程(以telnet为例)

    对于诸如telnet等托管于xinetd的服务,当请求到来时由于是通过xinetd进行通知,所以可以直接在xinetd上配置白名单允许和拒绝哪些ip连接服务. 本文主要参考xinetd.conf的ma ...

  4. Linux系统安装telnet以及xinetd服务

    Linux系统安装telnet以及xinetd服务 一.安装telnet 1.检测telnet-server的rpm包是否安装 # rpm -qa telnet-server 若无输入内容,则表示没有 ...

  5. 在linux中配置安装telnet服务

    Telnet 是一种流行的用于通过 Internet 登录到远程计算机的协议.Telnet 服务器软件包为远程登录主机提供了支持.要通过 Telnet 协议与另一台主机通讯,您可以使用名称或 Inte ...

  6. CentOS6开启FTP及telnet服务教程

    先来开通CentOS6的FTP服务吧.telnet服务也一并学习学习吧.在安装好CentOS以后,需要设置Ftp和Telnet服务文件,才能启动Ftp和Telnet服务,可以通过远程控制进行开启. 开 ...

  7. Linux安装telnet

    安装环境:CentOS 6.4    上篇已经讲述了memcached的安装,现在要测试Memcached功能的时候,需要使用到telnet服务.于是就有了本篇.   一.安装telnet 1.检测t ...

  8. Linux 系统Telnet服务

    Linux 系统Telnet服务 telnet与ssh相比,安全性能并不高,但是在ssh版本升级或者其他的情况下还是需要开启这一项服务.linux提供服务是由运行在后台的守护进程daemon来执行的, ...

  9. CentOS7安装telnet服务

    CentOS7.0 telnet-server 启动的问题.解决方法:    ①.先检查CentOS7.0是否已经安装以下两个安装包:telnet-server.xinetd.命令如下:    rpm ...

随机推荐

  1. 正则获取 某段 DIV 中 的内容

    string html = "<div class='aa'><div class='left'>324324<div>dsfsdf</div> ...

  2. JAVA SE ArrayList 底层实现

    Array 查询效率高,增删效率低( Link 增删效率高 Vector 线程安全 List 列表 源代码: package com.littlepage.test; /** * 基于底层实现Arra ...

  3. java中如何认定一个变量和方法

    对于变量,用变量名就可以认定.对于a ,你不能要求它既是int,又是double.这是错误的: 同理,对于方法,它的方法签名是:方法名+参数     通过签名,已经认定一个方法.你不能要求一个方法有多 ...

  4. 分组查询以及having使用

    Group  by 注意事项:对查询的列有限制,除了聚合函数外,就必须是分组的项 order  by总是放在最后 代码示例: select Gender as 性别 ,count (Gender) a ...

  5. Java——HashMap

    获取数组长度 数组.length 获取下标 HashMap HashMap 构造函数 // 默认构造函数. HashMap() // 指定“容量大小”的构造函数 HashMap(int capacit ...

  6. vue init webpack nameXXX 报错问题:

    vue新建demo项目报错如下: M:\lhhVueTest>vue init webpack L21_VueProject vue-cli · Failed to download repo ...

  7. 人脸识别demo使用教程

    最近在研究虹软家的arcface 人脸识别 demo,现在就给大家分享一下官方的demo**工程如何使用? **1.下载代码:git clone https://github.com/asdfqwra ...

  8. EasyUI datebox 设置不可编辑后再次修改为可编辑失效的解决

    工作中遇到的问题,折腾了好久: 如下图: 需求:当状态发生改变后,如果状态是未核实 ,  核实人 核实时间 核实结果 核实说明  均为不可编辑状态 具体js代码如下: //状态改变    $('#js ...

  9. git stash命令

    命令:git stash 1.使用git stash 保存当前的工作现场, 那么就可以切换到其他分支进行工作,或者在当前分支上完成其他紧急的工作,比如修订一个bug测试提交. 2.如果一个使用了一个g ...

  10. 机器学习与数据科学 基于R的统计学习方法(基础部分)

    1.1 机器学习的分类 监督学习:线性回归或逻辑回归, 非监督学习:是K-均值聚类, 即在数据点集中找出“聚类”. 另一种常用技术叫做主成分分析(PCA) , 用于降维, 算法的评估方法也不尽相同. ...