使用tcpwrappers控制文件

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

hosts.allow和hosts.deny访问控制文件里面的规则一般是:

daemon_list : client_list [ : shell_command ]

其中daemon_list是一个或者数个daemon进程名,可以使用通配符;client_list是一个或者数个客户端主机名或者IP,可以使用通配符号。

daemon_list可以使用两个特殊符号:ALL和EXCEPT。ALL表示所有的进程,而EXCEPT表示排除某个情况。比如:

ALL EXCEPT in.fingerd

表示除了in.fingerd外所有的进程。

client_list可以使用一些通配符:

1. "."号在字符串前匹配所有后面部分和所提供字符串一样的主机名。比如:

.tue.nl可以匹配wzv.win.tue.nl或者linux.tue.nl。

2. "."号在字符串后匹配所有以所提供字符串开头的地址,比如:

131.155.可以匹配所有131.155.xxx.xxx的地址。

3. 也可以使用n.n.n.n/m.m.m.m的格式来表示net/mask,比如:

131.155.72.0/255.255.254.0匹配从131.155.72.0到131.155.73.255的地址。

4. 以"/"号开头的字符串将被看作一个文件处理,它匹配所有在这个文件中列出的主机名或者地址。

5. "@"开头的串将被当作一个NIS组的名字。

6. ALL表示所有的主机,LOCAL匹配所有机器名中不带"."号的主机。EXCEPT表示排除某些主机。

比如在hosts.allow里面有一行:

ALL: .foobar.edu EXCEPT terminalserver.foobar.edu

表示允许除了主机名叫terminalserver.foobar.edu以外所有.foobar.edu域内的机器都可以访问所有的服务。

而在hosts.deny

ALL EXCEPT in.fingerd:192.168.0.0/255.255.255.0

则表示禁止192.168.0.1到192.168.0.254的机器访问除了in.fingerd以外的服务。

限制只有0组的用户可以su成root

修改/etc/login.defs里面的SU_WHEEL_ONLY的值为:

SU_WHEEL_ONLY yes

那么就只有gid为0的用户可以su成root。

tcpwrappers控制文件的读取顺序

1. 如果client以及daemon满足hosts.allow里面的条目,那么访问将被允许。

2. 否则,如果client以及daemon满足hosts.deny里面的条目,那么访问将被禁止。

3. 如果以上两条都不满足,访问将被允许。

4. 如果访问控制文件不存在,将被当作空规则文件处理。所以可以通过删除访问控制文件来关闭访问限制。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航