服务xinetd开机启动.docx
《服务xinetd开机启动.docx》由会员分享,可在线阅读,更多相关《服务xinetd开机启动.docx(9页珍藏版)》请在冰豆网上搜索。
![服务xinetd开机启动.docx](https://file1.bdocx.com/fileroot1/2023-1/31/f2ee8254-cefc-4066-9f63-a3e61cdec363/f2ee8254-cefc-4066-9f63-a3e61cdec3631.gif)
服务xinetd开机启动
chconfig、xinetd进程和tcp_wrappers的使用
一、chkconfig的使用
#chkconfig--list列出所有开机自动开启的服务
#chkconfig--addNAME把NAME添加到chkconfig服务中
#chkconfig--delNAME把NAME服务从chkconfig服务中移除
#chkconfigypbindon把ypbind加入开机自动启动的行列,默认为2345级别
#chkconfigypbindoff把ypbind服务改为开机自动为off状态
#chkconfig--level23ypbindon把ypbind服务改为开机在23级别自动启动
二、xinetd进程的管理
xinetd本身是独立守护进程,它管理着非独立守护进程,/etc/xinetd.conf是xinetd的主配置文件,定义服务的工作方式,/etc/xinetd.d/下存放着非独立守护进程的服务文件
非独立守护进程服务的生效:
#chkconfigSERVICEon|off开机自动设定为on或off状态
#servicexinetdrestart当前生效SERVICE服务为on或off
下图是/etc/xinetd.conf文件,其中图中的enable是指定服务默认是否启用若=yes则默认为启动=no为默认不启动;disable也是指定服务默认是否启用,若=no则默认为启动=yes为默认不启动;log_on_failure是指定登录失败后日志中会记录的内容,log_on_success是指定登录成功后日志中记录的内容;no_access指定不允许访问的ip;only_from指定允许访问的ip;其中cps=5010指单位时间内并发连接服务器的数量达到50时就休息10秒;per_source定义同一个ip最多可以发起的连接数。
/etc/xinetd.conf是定义xinetd进程管理的所有非独立守护进程服务,各个非独立守护进程还有定义自己服务的文件,当两个文件有冲突时还以服务自己的文件为准。
下图是telnet服务的配置文件,其中socket_type指定套接字类型;user指定此服务由什么用户来执行;server指定执行的命令。
下面我们来做一些此文件控制内容的测试,首先我们在192.168.0.141上查看是否安装了telnet包,如果未安装就安装此包,安装后在/etc/xinetd.d/目录下会自动生成以telnet为名字的文件,现在启动生效telnet服务
#chkconfigtelneton
#servicexinetdrestart
由上图可知telnet服务意启动现在我们在192.168.0.142上连接测试一下
现在我们修改telnet文件中田间的规则如下(请注意每次修改telnet文件都要重启xinetd才能生效)
此时我们再从192.168.0.142连接一下,可以看到192.168.0.142已经被拒绝了,同时当我们临时改变了一下ip再次连接时就连接上了,所以我们明白当只指定no_access时其他ip默认是可以连接的
现在我们修改telnet文件中田间的规则如下(请注意每次修改telnet文件都要重启xinetd才能生效)
此时我们再从192.168.0.142连接一下,可以看到192.168.0.142是被允许的,连接成功,当我们改变142的ip为147再连接时就被拒绝了,所以我们明白只指定only_from时,其他ip默认都是被拒绝的
现在我们修改telnet文件中田间的规则如下(请注意每次修改telnet文件都要重启xinetd才能生效)
现在我们在192.168.0.142上测试一下,可以看到连接被拒绝了,当我们改变了ip以后连接成功了,现在我们明白当only_from和no_access同时定义时,我们取其定义范围的交集
三、tcp_wrappers的应用
tcp_wrapper管理一些网络服务,控管哪些ip可以连接,哪些ip拒绝连接先查询安装的tcp_wrappers如下
如何查看哪个服务受tcp_wrapper管理我们可以用以下命令,如果包含圆框中的链接则就受tcp_wrapper管理,同时tcp_wrapper还管理所有被xinetd进程管理的非独立进程服务
tcp_wrappers是通过/etc/hosts.allow和/etc/hosts.deny文件来控制的,现在我们把刚才改变的/etc/xinetd.d/telnet文件恢复为默认状况来测试一下tcp_wrappers的使用,修改/etc/hosts.allow,请注意圆框内一定要与/etc/xinetd.d/telnet中server的值一致,编辑此文件会直接生效,不需要重启服务
现在我们在192.168.0.142上测试一下
现在我们改变一下142的ip来测试一下,tcp_wrappers工作时首先读取/etc/hosts.allow如果找到匹配项就会允许使用此服务;如果没有匹配项则读取/etc/hosts.deny文件,在此文件中如果有匹配项就拒绝此主机使用此服务,如果此文件也没有匹配项则默认为可以使用此服务
我们也可以把规则都定义在/etc/hosts.allow或/etc/hosts.deny文件中
我们来测试一下
改变ip为192.168.0.145再来测试一下
修改/etc/hosts.allow如下图,spawn在连接时执行一个程序,其中执行使用的命令要写全路径,如:
/bin/echo,其中的“%c%s”为命令替换(%c是客户端信息%a是客户端地址%A是服务器端地址%d服务器端的进程名%p服务进程的id号%h是客户端的主机名)
从192.168.0.142上连接141
在141上查看/var/log/tcp_wrappers.log文件
修改/etc/hosts.allow如下图,其中twist是命令替换,把前面的替换为后面来执行。
其中执行使用的命令要写全路径,如:
/bin/echo,其中的“%c%s”为命令替换(%c是客户端信息%a是客户端地址%A是服务器端地址%d服务器端的进程名%p服务进程的id号%h是客户端的主机名)
从192.168.0.142上连接141