UNIX环境下,通过对hosts.allow和hosts.deny的简单设置,可以简单的设置C/S架构下的权限控制。它表现与实现在服务器端进行基本的设置,在客户端进行连接时对客户端身份进行判定。最简单的判定方式是通过IP来判定。
简介和优先级
hosts.allow内的配置是允许访问的列表,deny则是不允许访问的列表。流程如下:
如果在hosts.allow中找到某一项满足条件,则认为该客户端有权限访问;
否则,如果在hosts.allow中找到某一项满足,则认为该客户端没有权限访问;
否则,该客户端有权限访问。
语法
每一行为一条记录,可以使用“\”来允许多行;
以#为首的行为注释
其它行格式为:
daemon_list : client_list [ : shell_command ]
例如:
#允许来自192.168.0.1的所有sshd命令的权限。
sshd:192.168.0.1:ALL
在域的设置上,允许以下几种方式
1. 域名。可以使用:
www.baidu.com
.baidu.com
2. IP地址
192.168.1.1
192.168.1.
192.
也可以自己设置子网掩码
192.168.0.1/255.255.255.0
IPV6地址使用[]包住
3. 文件
以“/”开头
/var/www/a.html
4. *
*也可以被使用。
通配符
ALL:匹配所有
LOCAL:匹配没有“.”的域
UNKNOWN:匹配未知的用户或域
KNOWN:匹配已知的用户或域
PARANOID:没有列出的项
还有一些正则符号