当前位置:Linux教程 - Linux综合 - 使用tcpwrappers控制文件

使用tcpwrappers控制文件

  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. 如果访问控制文件不存在,将被当作空规则文件处理。所以可以通过删除访问控制文件来关闭访问限制。

(出处:http://www.sheup.com)