Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4471522
  • 博文数量: 1148
  • 博客积分: 25453
  • 博客等级: 上将
  • 技术积分: 11949
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-06 21:14
文章分类

全部博文(1148)

文章存档

2012年(15)

2011年(1078)

2010年(58)

分类: LINUX

2011-03-02 09:19:02

大家对被称作超级服务器的Inetd一定很熟悉,其实现控制对主机网络连接
当一个请求到达由Inetd管理的服务端口,Inetd将该请求转发给名为 tcpd的程序。
Tcpd根据配置文件hosts.{allow, deny}来判断是否允许服务该请求。
如果请求被允许则相应的服务器程序(如:ftpd、telnetd)将被启动。
这个机制也被称作 tcp_wrapper .

>>xinetd(eXtended InterNET services daemon )提供类似于inetd+tcp_wrapper 的功能,

但是更加强大和安全。它能提供以下特色:

  支持对tcp、ucp、RPC服务(但是当前对RPC的支持不够稳定)


  基于时间段的访问控制


  功能完备的log功能,即可以记录连接成功也可以记录连接失败的行为


  能有效的防止DoS攻击(Denial of Services)


  能限制同时运行的同意类型的服务器数目


  能限制启动的所有服务器数目


  能限制log文件大小


  将某个服务绑定在特定的系统接口上,从而能实现只允许私有网络访问某项服务


  能实现作为其他系统的代理。如果和ip伪装结合可以实现对内部私有网络的访问


>>它最大的缺点是对RPC支持的不稳定性 ,但是可以启动protmap,与xinetd共存来解决这个问题

 

 

一些个人理解:

 

  • 在linux中一些不长期使用的服务(不重要的服务?)没有被作为单独的守护进程在开机时启用,linux把这些服务监听端口全部由一个独立的进 程 xinetd集中监听,当收到相应的客户端请求之后,xinetd进程就临时启动相应服务并把相应端口移交给相应服务,客户端断开之后,相应的服务进程结 束,xinetd继续监听。要开telnet服务器,只需配置xinetd即可。


  • xinetd是一个daemon程序,所有结尾带d的程序都是daemon程序,也就是守护程序

守护程序分为2种处理模式:
第一个是stand alone状态的,表示该程序始终监听,一直处于运行状态,例如httpd
第二个是super daemon,它始终处于sleep状态,直到有人唤醒它,xinetd就是一个super daemon,但它的使命是将一个请求转给其他服务,也就是服务的管理者


转:http://powerclark.javaeye.com/blog/527891

阅读(703) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~