现在Linux系统中基于xinetd
的服务越来越少了,但Linux系统中还是有基于xinetd
的服务的,所以我们还是需要了解一下基于xinetd
的服务的管理。
1、基于xinetd服务的启动管理
我们使用telnet
服务来举例,telnet
服务是用来进程系统远程管理的,端口是23。不过需要注意的是telnet
的远程管理数据在网络当中是明文传输,非常不安全,所以我们在生产服务器上是不建议启动telnet
服务的(telnet
服务的server
端不安全),我们这里只是举例而已,用完就删除即可。在生产服务器上,远程管理使用的是ssh
协议,ssh
是加密的更加安全。
telnet
服务是基于xinetd
的服务。
(1)telnet服务安装
Linux系统中默认是没有安装telnet
服务的。
telnet
服务有两个安装包:
-
telnet-client
软件包,提供的是telnet
客户端程序。 -
telnet-server
软件包,才是Linux系统中的telnet
服务。
所以我们只安装telnet-server
软件包即可。
# 1.查看Linux系统中是否已安装telnet服务
[root@localhost ~]# rpm -q telnet-server
package telnet-server is not installed(未安装)
# 2.yum方式telnet服务
# 2.1查看yum库中的telnet服务RPM包
[root@localhost ~]# yum list |grep telnet
telnet.x86_64 1:0.17-49.el6_10 updates
telnet-server.x86_64 1:0.17-49.el6_10 updates
# 2.2安装telnet服务
[root@localhost ~]# yum -y install telnet-server-0.17-49.el6_10.x86_64
# 2.3查看telnet服务是否安装成功
[root@localhost ~]# rpm -q telnet-server
telnet-server-0.17-49.el6_10.x86_64(说明telnet服务安装成功)
我们再通过[root@localhost ~]# chkconfig --list
命令查看telnet
服务是否已安装。
如下图所示:
(2)telnet服务启动
telnet
服务是基于xinetd
的服务,所以无法使用service
命令启动,还有/etc/init.d/
路径的方式也不能启动。
因为基于xinetd
的服务没有独立启动的功能,需要xinetd
服务来启动telnet
服务。
/etc/xinetd.d
目录是基于xinetd
服务的目录,里边放的都是基于xinetd
的服务的配置文件。
如下图所示:
我们需要修改/etc/xinetd.d/telnet
配置文件,来修改telnet
服务的启动状态。
[root@localhost ~]# vim /etc/xinetd.d/telnet
# 内容如下:
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet 服务的名称为telnet。
{
flags = REUSE 标志为REUSE,设定TCP/IP socket可重用。
socket_type = stream 使用TCP协议数据包。
wait = no 允许多个连按同时连接。
user = root 启动服务的用户为root。
server = /usr/sbin/in.telnetd 服务的启动程序。
log_on_failure += USERID 登陆失败后,记录用户的ID。
disable = yes 服务不启动。
}
我们需要把disable
选项改为no
即可。
然后我们需要重启:
[root@localhost ~]# service xinetd restart
停止 xinetd: [确定]
正在启动 xinetd: [确定]
然后查看telnet
服务是否启动成功,如下图所示:
使用chkconfig --list
查看telnet服务的自启动状态,如下图所示:
为什么我设置的是telnet
服务的启动状态,怎么自启动状态也被修改了?
看下面一点就有解释了。
2、基于xientd服务的自启动管理
(1)使用chkconfig
命管理自启动
[root@localhost ~]# chkconfig 服务名 on|off
注意:
- 基于
xinetd
的服务,没有自己的运行级别,是依靠xinetd
服务的运行级别。所以不用指定--level
选项,一定不能写。 - 基于
xinetd
的服务的运行级别是跟从xinetd
服务的运行级别,也就是说xinetd
服务的运行级别就是基于xinetd
的服务的运行级别。
- 还有一个要注意的是,其实基于
xientd
的服务,设置启动管理为启动,也就是把telnet
服务启动,其实同时就把telnet
服务的自启动管理设置成为开启了,两个是通用的,这样的设置是很不合理的,我们知道就行。
(2)使用ntsysv
命令管理自启动
请看上一篇文章中的方式三:点击此处进行查看。