知道deny from all
指令将遍历其下的所有子目录和文件,并忽略“如果您忘记”复制.htaccess
文件或创建.htaccess
文件时输入错误的明显警告......
在 DocumentRoot 之外存储非公共文件与在 DocumentRoot的每个非公共目录中放置带有指令的文件之间是否存在安全风险?.htaccess
deny from all
知道deny from all
指令将遍历其下的所有子目录和文件,并忽略“如果您忘记”复制.htaccess
文件或创建.htaccess
文件时输入错误的明显警告......
在 DocumentRoot 之外存储非公共文件与在 DocumentRoot的每个非公共目录中放置带有指令的文件之间是否存在安全风险?.htaccess
deny from all
这里有几点需要考虑:
.htaccess 只会保护您的文件不被网络访问。例如,假设您有一个典型的 FTP 服务器设置,其中的虚拟用户仅限于文档根目录。如果攻击者获得了对您的 FTP 服务器的访问权(考虑到大多数 FTP 配置的不安全性,这并不是那么牵强),他们将可以访问 .htaccess 文件和文档根目录中的任何受保护文件。
这只是一个可能不适用于您的环境的示例,但我真正想要理解的想法是 .htaccess 文件不会为您提供那么深的安全性。它们在一种情况下(通过 Internet 访问)保护您,但在其他情况下不保护您。
您的服务器管理员可以禁用特定的 .htaccess 指令,禁用某些 Apache 模块(您的 .htaccess 文件可能会使用),甚至可以禁用 .htaccess 文件期间的使用。如果您无法控制 Apache 配置(我假设是这种情况,因为您选择使用 .htaccess 文件覆盖它),您也无法真正控制 .htaccess 文件是否为会受到尊重。这实际上取决于您与主机/服务器管理员的关系以及他们决定允许的内容。
最后,如果 .htaccess 文件可由运行 Apache 服务器的用户写入,则有决心的黑客可以修改该文件。前任。如果您使用的是 Wordpress,许多流行的主题将要求对 .htaccess 文件具有写入权限,以便它们可以控制 URL 重写。我想其他一些内容管理系统也会这样做。
尽管如此,使用 .htaccess 文件(或直接更改您的 Apache 配置文件)对您来说仍然是一种完全有效的安全措施。这取决于您的整个环境是什么样的——您的服务器是如何配置的,您要保护什么,等等。希望我至少给了您一些思考的东西。