Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

Xinetd完全指南

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

rpc_number
如果RPC程序号不在/etc/rpc中,就指定它
Env
用空格分开的VAR=VALUE表,其中VAR是一个shell环境变量且VALUE是其设置值。这些值以及xinetd的环境都在激活时传送给服务程序。这个属性支持=和+=操作符
Passenv
用空格分开的xinetd环境中的环境变量表,该表在激活时传递给服务程序。设置no就不传送任何变量。该属性支持所有操作符
Only_from
用空格分开的允许访问服务的客户机表。表2种给出客户机语法。如果不为该属性指定一个值,就拒绝访问这项服务。该属性支持所有操作符。
No_access
用空格分开的拒绝访问服务的客户机表。表2给出客户机语法。该属性支持所有操作符
Instances
接受一个大于或等于1的整数或UNLIMITED。设置可同时运行的最大进程数。UNLIMITED意味着xinetd对该数没有限制。
Log_type
指定服务log记录方式,可以为:
  • SYSLOG facility[level]:设置该工具为daemon,auth,user或loca10-7。设置level是可选的,可以的level值为emerg,alert,crit,err,warning,notice, info, debug,默认值为info
  • file[soft[hard]]:指定file用于记录log,而不是syslog。限度soft和hard用KB指定(可选)。一旦达到soft限,xinetd就登记一条消息。一旦达到hard限,xinetd停止登记使用该文件的所有服务。如果不指定hard限,它成为soft加1%,但缺省时不超过20MB.缺省soft限是5MB
Redirect
该属性语法为redirect=Ipaddress port。它把TCP服务重定向到另一个系统。如果使用该属性,就忽略server属性
Bind
把一项服务绑定到一个特定端口。语法是bind=Ipaddress。这样有多个接口(物理的或逻辑的)的主机允许某个接口但不是其他接口上的特定服务(或端口)
Log_on_success
指定成功时登记的信息。可能值是
  • PID:进程的PID。如果一个新进程没被分叉,PID设置为0。
  • HOST:客户机主机IP地址
  • USERID:通过RFC1413高用捕获客户机用户的UID。只可用于多线程流服务。
  • EXIT:登记进程终止和状态
  • DURATION:登记会话持续期
缺省时不登记任何信息。该属性支持所有操作符
Log_on_failure
指定失败时登记的信息。总是登记表明错误性质的消息。
  • ATTEMPT:记录一次失败的尝试。所有其他值隐含为这个值。
  • HOST:客户机主机IP地址
  • USERID:通过RFC1413调用捕获客户机用户的UID。可用于多线程流服务。
  • RECORD:记录附加的客户机信息如本地用户,远程用户和终端的类型。缺省时不登记任何信息。该属性支持所有操作符。
Disabled
只可用于defaults项(参看本小节后面的defaults项),指定被关闭的服务列表,是用空格分开的不可用服务列表来表示的。它和在/etc/xinetd.conf文件中注释掉该服务项有相同的效果。

我们首先看一个简单的例子。例1是配置文件/etc/xinetd.conf的一个范例。这两种服务的定义看上去像/etc/inetd.conf的原因是因为它们是用itox工具从/etc/inetd.conf转换得来的,只把/etc/inetd.conf项对应转换成适当的xinetd语法。这样,这些属性(在大括号中的=号的左边)意义是非常直接的,其相关值(在大括号中的=号的右边)也是如此。

例1 文件/etc/xinetd.conf中的一部分

Serice ftp
{
Socket_type=stream
protocol=tcp
wait=no
user=root
server=root
Server_args= - 1 - a
}
Service telnet
{
Socket_type=stream
protocol=tcp
wait=tcp
user=root
server=/usr/sbin/in.telnetd
}

创建/etc/xinetd.conf文件最容易的方法是用itox工具(该例假定当前工作目录是xinetd的编译目录):

# xinetd/itox -daemon_dir /usr/sbin /etc/xinetd.conf。itox的参数-daemon_dir /usr/sbin指定服务程序的目录位置,如果实现了TCP_Wrappers,从/etc/inetd.conf中是不能确定它的,转换完成以后,就开始增加属性和值,以限制访问并增加登记,最后要手工修改/etc/xinetd.conf以充分利用xinetd的特性;否则,如果只把/etc/inetd.conf转换为/etc/xinetd.conf, xinetd的行为就和inetd一样了。

表1详述了在/etc/xinetd.conf中最常使用的一些属性和值。当然还有许多其他属性,详细配置选项可以在安装xinetd以后通过man xinetd.conf来得到。在本小节后面的“配置实例”中,将用一些例子阐明其中的许多属性。

表2中给出only_from和no_access表的语法,定义了指定主机名,IP地址和网络的语法。注意表2中最后一项netmask的语法和之前看到的有所不同。它没有采用传统的十进制或十六进制netmask的表示方法,而是采用一个整数表示从netmask(用二进制表示)的最高位(最左端)开始起每位都为1的位数。因此,给定例子的netmask值设置为20,意味着其最左端的20位都设置为1,而余下12位设置为0,或

11111111 11111111 11110000 00000000

它是十进制netmask255.255.240.0的二进制表示。

表2 /etc/xinetd.conf的访问控制表的语法

hostname
可解析的主机名。使用和这个主机名相关的所有IP地址
IPaddress
点和十进制形式的标准IP地址,如192.168.0.1
Net_name
/etc/networks中的网络名
x.x.x.0 x.x.0.0
x.0.0.0 0.0.0.0
0作为通配符看待。如项88.3.92.0匹配从88.3.92.0到88.3.92.255的所有IP地址。项0.0.0.0匹配所有地址
x.x.x.{a,b,…}
x.x{a,b,…}
x.{a,b,…}
指定主机表。如172.19.32.{1,56,59}意味着含IP地址172,19.32.1,172.19.32.56和172.19.32.59的表
Ipaddress/netmask
定义要匹配的网络或子网。如172.19.16.0/20匹配从172.19.16.0到172.19.31.255的所有地址

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:非标准端口服务的识别   下一篇:入侵检测之日志检测

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号