您的位置:首页 > 其它

xinetd的两个实验

2015-12-19 19:46 239 查看
参考文章:http://blog.sina.com.cn/s/blog_88cdde9f01019fg5.html

xinetd练习一:利用xinetd设置sensor陷阱,隔离恶意访问

1.检查是否有这几个包

[root@linuxclient ~]# rpm -qa|grep rsh-server

rsh-server-0.17-60.el6.i686

[root@linuxclient ~]# rpm -qa|grep rsh

rsh-server-0.17-60.el6.i686

rsh-0.17-60.el6.i686

[root@linuxclient ~]# rpm -qa|grep telnet-server

telnet-server-0.17-46.el6.i686

[root@linuxclient ~]# rpm -qa|grep telnet

telnet-0.17-46.el6.i686

telnet-server-0.17-46.el6.i686

2.让他们启动

[root@linuxclient ~]# chkconfig rlogin on

[root@linuxclient ~]# chkconfig rsh on

[root@linuxclient ~]# chkconfig telnet on

3.修改配置文件

service login

{

disable = no

socket_type = stream

wait = no

user = root

log_on_success += USERID

log_on_failure += USERID

server = /usr/sbin/in.rlogind

flags = SENSOR

deny_time = forever

}

之前的telnet不通,可以去关闭防火墙(这个东西很虐人啊,好多次都是因为它弄的要死要活的,所以这次还是我机智,关了它)

[root@linuxserver Desktop]# telnet 192.168.70.150

Trying 192.168.70.150...

Connected to 192.168.70.150 (192.168.70.150).

Escape character is '^]'.

Red Hat Enterprise Linux Server release 6.0 (Santiago)

Kernel 2.6.32-71.el6.i686 on an i686

login: qys

Password:

Last login: Sat Dec 19 00:35:55 from 192.168.70.1

4.重新启动生效

[root@linuxclient ~]# /etc/init.d/xinetd restart

Stopping xinetd: [ OK ]

Starting xinetd: [ OK ]

5.客户端测试

[root@linuxserver Desktop]# rlogin 192.168.70.150

connect to address 192.168.70.150 port 543: Connection refused

trying normal rlogin (/usr/bin/rlogin)

rcmd: 192.168.70.150: Connection reset by peer

6.解释

原因是:xinetd服务实际上是监听了rlogin-server的端口,由于带有flags=SENSOR标记,sensor会记录客户ip并将其添加到针对全局的no-access列表中去,所以恶意的访问都不能访问xinetd托管的服务了

实验二:建立自定义xinetd托管服务

前提:关掉防火墙

1.自定义一个服务(别忘了要编译):

[root@linuxclient Desktop]# cat /tmp/hello.c

#include<stdio.h>

int main(){

printf("hello,buddy!\n");

return 0;

}

2.在xinetd.d里面新添加一个文件,名叫hello_server

[root@linuxclient Desktop]# cat /etc/xinetd.d/hello_server

#cp telnet hello

#vim hello

service hello_server

{

disable
= no

flags = REUSE

socket_type
= stream

wait = no

user = root

server
= /tmp/hello

log_on_failure
+=USERID

port = 9015

}

3.将新建的服务加到/etc/services里面去

[root@linuxclient Desktop]# cat /etc/services |grep 9015

hello_server 9015/tcp

4.重启xinetd服务

5.查看9015是否开启

[root@linuxclient Desktop]# netstat -tnlp|grep 9015

tcp 0 0 :::9015 :::* LISTEN 2254/xinetd

6.测试:

[root@linuxserver Desktop]# telnet 192.168.70.150 9015

Trying 192.168.70.150...

Connected to 192.168.70.150 (192.168.70.150).

Escape character is '^]'.

hello,buddy!

Connection closed by foreign host.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: