模式可以用在访问规则的客户领域里,从而更准确地给客户主机指定分组。
下面是一个输入客户领域的输入项常用模式列表:
主机名以圆点 (.)开始 — 如果在一个主机名的开始放置一个圆点,那么就与所有共享这个主机名中列出的相同组成部分的主机匹配。下面的例子适用于 example.com 域内的任何主机:
ALL : .example.com
IP 地址以圆点 (.) 结束 — 如果在一个 IP 地址的末尾放置一个圆点,那么就与所有共享一个 IP 地址的起始数值组的主机匹配。下面的例子适用于 192.168.x.x 网络内的任何主机:
ALL : 192.168.
IP 地址/网络掩码对 — 网络掩码表达式也可以作为一个模式用来控制对某一组特定的 IP 地址的访问。下面的例子适用于地址区间从 192.168.0.0 到 192.168.1.255 的任何主机:
ALL : 192.168.0.0/255.255.254.0
使用 IPv4 地址空间时,地址/前缀长度(prefixlen)对声明 (CIDR 记号) 不被支持。只有 IPv6 规则可以使用这种格式。
[IPv6 地址]/前缀长度对 — [网]/前缀长度对也可以作为一种模式用来控制对某一组特定的 IPv6 地址的访问。下面的例子会适用于地址区间从 3ffe:505:2:1:: 到 3ffe:505:2:1:ffff:ffff:ffff:ffff 的任何主机:
ALL : [3ffe:505:2:1::]/64
星号 (*) — 星号可以用来匹配整个不同组别的主机名或 IP 地址,只要在含有其它模式类型的客户列表中这些组不混杂在一起的话。下面的例子会适用于 example.com 域内的任何主机:
ALL : *.example.com
斜线 (/) — 如果一个客户列表以斜线开始,这个列表就被当作一个文件名对待。若是需要指定很大数量主机的各种规则的话,这一点就很有用处。下面的例子把 TCP Wrappers 交付于 /etc/telnet.hosts 文件来进行所有的 Telnet 连接:
in.telnetd : /etc/telnet.hosts
TCP Wrappers 也接受其它较少用到的模式。请参阅 hosts_access man 5 page 来获取更多信息。
使用主机名和域名时要特别小心,因为攻击者可能会使用各种诀窍来做到对名称的准确分解。另外,DNS 服务的中断甚至让授权用户都无法使用网络服务。因此,如果可能的话,最好使用 IP 地址。