上面两个文件通常可以包含对某一个特定服务的访问限制. 如果在 /etc/hosts.allow里获得了许可则允许访问. 如果服务未列在 /etc/hosts.allow 里,而在 /etc/hosts.deny, 它被禁止. 如果两个文件里全没有这个服务, 它被允许访问, 和标准的 inetd(8) 操作一样。
/etc/hosts.allow 和 /etc/hosts.deny中的每一行包含了一个服务,这个服务或者用名称表示 (就像/etc/inetd.conf中提供的argv[0]字段, 例如:"ftpd" 替代了"ftp"), 或者特定的服务用"ALL"表示,很显然它应用于所有的服务。接下来是服务名,服务名用冒号与后面的一系列限制访问地址分开, 限制访问地址可以用主机名、域名、单个IP地址、整个IP子网或一些其它限制表示, 请查阅 hosts_access(5) 以获取细节。
一个例子是几乎全部允许,但拒绝来自某一个特定的主机和某个域中所有的主机对服务的访问,那规则像这样:
代码: 全选
# /etc/hostname.deny:
ALL: some.host.name, .some.domain
代码: 全选
# /etc/hosts.deny ALL: ALL
代码: 全选
# /etc/hosts.allowALL: friend.host.domain otherfriend.otherhost.otherdomain