<-
Apache HTTP 服务器 2.4 > Apache模块mod_authz_host

Apache模块mod_authz_host

描述:基于主机(名称或IP地址)的组授权
状态:基础
模块标识符:authz_host_module
源文件:mod_authz_host.c
兼容性:forward-dns提供程序已在2.4.19中添加

摘要

由实施的授权提供者mod_authz_host使用Require 指令注册。可以在,,或部分以及文件中引用该伪指令 <Directory>, 以控制对服务器特定部分的访问。可以根据客户端主机名或IP地址来控制访问。<Files><Location>.htaccess

一般来说,访问限制指令适用于所有接入方式(GETPUTPOST等)。在大多数情况下,这是所需的行为。但是,可以通过将指令括在一<Limit>节中来限制某些方法,而使其他方法不受限制。

支持Apache!

主题

指令

该模块不提供指令。

错误修正清单

也可以看看

最佳

需求指令

Require 在授权阶段使用Apache 指令,以确保允许或拒绝用户访问资源。mod_authz_host延长授权类型的iphostforward-dnslocal。也可以使用其他授权类型,但可能需要加载其他授权模块。

这些授权提供者影响哪些主机可以访问服务器的区域。可以通过主机名,IP地址或IP地址范围控制访问。

从v2.4.8开始,主机require指令支持表达式

需要ip

ip供应商允许基于远程客户端的IP地址来控制对服务器的访问。当指定,则请求被允许,如果IP地址匹配的访问。Require ip ip-address

完整的IP地址:

Require ip 10.1.2.3
Require ip 192.168.1.104 192.168.1.205

主机允许访问的IP地址

部分IP地址:

Require ip 10.1
Require ip 10 172.20 192.168.2

IP地址的前1至3个字节,用于子网限制。

网络/网络掩码对:

Require ip 10.1.0.0/255.255.0.0

网络abcd和网络掩码wxyz用于更细粒度的子网限制。

网络/ nnn CIDR规范:

Require ip 10.1.0.0/16

与前面的情况类似,除了网络掩码由nnn个高1位组成。

请注意,以上最后三个​​示例完全匹配同一组主机。

可以如下所示指定IPv6地址和IPv6子网:

Require ip 2001:db8::a00:20ff:fea7:ccea
Require ip 2001:db8:1:1::a
Require ip 2001:db8:2:1::/64
Require ip 2001:db8:3::/48

注意:由于IP地址是在启动时解析的,因此表达式不会在请求时求值。

需要主机

host供应商允许基于远程客户端的主机名来控制对服务器的访问。当指定的,那么如果主机名匹配的请求被允许访问。Require host host-name

一个(部分)域名

Require host example.org
Require host .net example.edu

名称匹配或以该字符串结尾的主机被允许访问。仅匹配完整的组件,因此上面的示例将匹配,foo.example.org但不匹配fooexample.org。无论HostnameLookups指令的设置如何,此配置都将导致Apache对客户端IP地址执行双向反向DNS查找。它将对IP地址进行反向DNS查找,以找到关联的主机名,然后对主机名进行正向查找,以确保其与原始IP地址匹配。仅当正向和反向DNS一致且主机名匹配时,才允许访问。

需要转发DNS

forward-dns供应商可以访问基于简单的主机名被控制的服务器。当 指定,对应于所有的IP地址 允许访问。Require forward-dns host-namehost-name

host提供程序相比,此提供程序不依赖于反向DNS查找:它只是查询DNS的主机名,并允许客户端查找其IP是否匹配。因此,它仅适用于主机名,不适用于域名。但是,由于不使用反向DNS,因此它将与使用动态DNS服务的客户端一起使用。

Require forward-dns bla.example.org

从名称解析IP的客户端 bla.example.org将被授予访问权限。

forward-dns供应商在2.4.19添加。

Require local

local供应商可以访问服务器,如果任何下列条件为真:

这提供了一种便捷的方式来匹配源自本地主机的连接:

Require local

安全须知

如果要将内容代理到服务器,则需要注意,客户端地址将是代理服务器的地址,而不是客户端的地址,因此Require 在此上下文中使用伪指令可能无法实现您的意思。请参阅参考资料 mod_remoteip,以找到该问题的一种可能的解决方案。

可用语言: zh  |  fr 

最佳

注释

注意:
这不是“问答”部分。此处放置的评论应指向有关改进文档或服务器的建议,如果实施或被认为无效/偏离主题,我们的主持人可以将其删除。有关如何管理Apache HTTP Server的问题,应直接指向我们的IRC频道#httpd(位于Freenode上),或发送至我们的邮件列表
目前,此页面已禁用评论。