本节中的示例显示了控制访问的各种方法。研究这些示例时,请记住允许过滤器在拒绝过滤器之前处理,找到匹配项时搜索即终止,并且找不到任何匹配项时将授权访问。
此处列出的示例使用主机名和域名而不使用 IP 地址。请记住,可以在过滤器中包含地址和网络掩码信息,在名称服务失败时,此过滤器可以改进可靠性。
在这种情况下,访问被拒绝(默认)。仅允许明确经过验证的主机访问。
默认策略(无访问)可通过单个普通拒绝文件实现:
ALL: ALL
此过滤器拒绝允许过滤器没有明显授权的所有客户端访问所有服务。然后,允许过滤器可能类似于以下模式:
ALL: LOCAL @netgroup1 ALL: .siroe.com EXCEPT externalserver.siroe.com
第一个规则允许来自本地域(即,主机名中不包含点的所有主机)中的所有主机和来自 netgroup1 组的成员的访问。第二个规则使用前导点通配符模式允许来自 siroe.com 域的除 externalserver.siroe.com 主机之外的所有主机的访问。
在这种情况下,访问被授权(默认)。仅拒绝明显指定的主机的访问。
默认策略(已授权访问)使允许过滤器不必使用。在拒绝过滤器中明显列出的不需要的客户端的示例如下:
ALL: externalserver.siroe1.com, .siroe.asia.com ALL EXCEPT pop: contractor.siroe1.com, .siroe.com
第一个过滤器对特殊主机和特定域拒绝所有服务。第二个过滤器仅允许来自特殊主机和特定域的 POP 的访问。
可以在过滤器中使用 DNSSPOOFER 通配符名称来检测主机名欺骗。指定 DNSSPOOFER 时,访问控制系统执行 DNS 的正向或反向查找以验证客户端所提供的主机名与其实际 IP 地址是否匹配。以下是一个拒绝过滤器的示例:
ALL: DNSSPOOFER
对主机的 IP 地址与其 DNS 主机名不匹配的所有远程主机,此过滤器拒绝提供任何服务。
如果邮件服务安装使用虚拟域,其中单个服务器实例与多个 IP 地址和多个域名相关联,则您可以通过使用允许过滤器和拒绝过滤器的组合来控制对每个虚拟域的访问。例如,您可以将类似于以下模式的允许过滤器:
ALL@msgServer.siroe1.com: @.siroe1.com ALL@msgServer.siroe2.com: @.siroe2.com ...
与类似于以下模式的拒绝过滤器配合使用:
ALL: ALL
每个允许过滤器仅允许 domain N 中的主机连接到服务(IP 地址对应于 msgServer.siroeN.com)。所有其他连接都被拒绝。
如果想允许用户访问 Webmail,但不访问 IMAP,可以创建类似以下的过滤器:
+imap:access_server_host, access_server_host |
这只允许来自访问服务器主机的 IMAP。您可以在 IMAP 服务器级别使用 service.imap.domainallowed,或在域/用户级别使用 LDAP 属性来设置过滤器。