如何保护Apache mod_info,但保持远程访问

我使用Apache的mod_info来显示有关我的服务器设置的详细信息。

的httpd-vhosts.conf

 # Set path below to be handled by mod_info. It will show server info. # For this to work, this module must be loaded (uncommented in httpd.conf) <Location /special/path> SetHandler server-info Order allow,deny Allow from 127.0.0.1 </Location> 

Allow from本机设置,因为这是在我的开发机器上。

这个模块允许我通过导航到/special/path来看到大量的信息。 我想在我的公共服务器上使用它,但需要以某种方式保护它,以便其他人无法加载该path。

该文档讨论的IP地址白名单,但我有一个组织的IP,由许多人共享。

保护这条道路最实际的方法是什么? Apache 2.4.16

您不仅限于设置IP访问控制,还可以使用<Location>范围内允许的任何其他访问控制,或其组合。 因此,使用RequireAll指令来同时要求一个特定的IP地址和设置authentication,并要求一个特定的login。

 <Location /special/path> SetHandler server-info AuthType Basic AuthName "Restricted Access To Special Location" AuthBasicProvider file AuthUserFile "/usr/local/apache/passwd/passwords" <RequireAll> Require ip 10.252.46.165 Require user BeetleJuice </RequireAll> </Location> 

将其设置为仅在127.0.0.1上可用,然后通过ssh隧道访问它。