如何通过隐藏非公开文件来提高WordPress的安全性?

时间:2012-11-22 作者:Yoga

e、 g。

curl -I http://ma.tt/blog/wp-config.php
200 OK
wp配置。php不是面向公众的文件,因为它当前只返回空白页面,所以为什么不返回404呢。(所以不会被谷歌缓存)

此外,对于文件,如readme.html, 它应该隐藏起来,因为它会泄露你的wordpress版本,例如。http://ma.tt/blog/readme.html

因此,目前我在web服务器级别选择了几个文件和块,例如:。

wp-config.php
wp-config-sample.php
license.txt
readme.html
 ..
但是因为有这么多文件,特别是在wp-adminwp-include 文件夹,有没有更好的方法来提高安全性?

3 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

我不会为自述文件而烦恼,因为可能没有黑客会在试图入侵该网站之前检查你的WP版本。不会为/wp includes和/wp admin中的任何内容而烦恼,因为我相信核心团队会在默认安装中确保代码的安全,并且这些文件不包含任何特定于我的站点的信息。

要保护的文件是wp config。php,因为它包含DB访问详细信息和/wp内容目录,因为主题和插件开发人员不太擅长安全性。对于wp config,只需在中拒绝访问。htaccess

<files wp-config.php>
order allow,deny
deny from all
</files>
对于/wp-content/plugins和/wp-content/theme,通过添加来拒绝对任何非animage、js或css文件的访问。htaccess具有以下内容。如果插件或主题不能与此配置配合使用,它们可能不会遵循WP编码准则,最好不要使用它们。

<Files ^(*.jpeg|*.jpg|*.png|*.gif|*.js|*.css)>
   order deny,allow
   deny from all
</Files>
对于/wp内容/上载,您不能真正拒绝访问,因为您不知道将上载哪种类型的文件,因此最好的做法是不允许在该目录中执行php、perl、pyton,并按照以下规则将它们作为纯文本提供

<FilesMatch "\\.(php|pl|py|jsp|asp|htm|shtml|sh|cgi)$">
ForceType text/plain
</FilesMatch>
一旦您感到满意,您可能应该将所有内容合并为一个。根目录下的htaccess可获得更好的性能

SO网友:Mridul Aggarwal

首先需要更正的是,如果您在wp admin下阻止文件,您将无法使用wordpress管理面板。虽然您可以阻止“wp admin/includes”文件夹下的文件

现在的解决方案是:-
您不需要键入所有的名称,您可以使用正则表达式来阻止ex的文件模式。编写正则表达式来阻止位于wp includes文件夹中的所有文件很容易。

如果在同一wordpress目录中没有其他文件,那么可以使用白名单方法,即只允许特定文件,而不是阻止特定文件。具体来说,您将只允许位于wp admin&;中的文件;wp内容文件夹(&W);当然是主wordpress文件(index.php)

如果您的主题(&A);插件不使用任何动态生成的文件,您只需阻止所有php文件直接访问,wp admin&;中的文件除外;指数php

无论您采取什么方法,只要记住只阻止php文件&;除此之外,浏览器将无法加载所有管理面板的CSS&;javascript。

SO网友:T.Todua

简而言之:

你在浪费时间-你无法提高安全性。阅读优秀答案:

https://wordpress.stackexchange.com/a/198441/33667

结束

相关推荐

Contact Form Security

在Wordpress中构建我自己的联系人表单。除了典型的电子邮件etc验证和可能的验证码之外,我还需要考虑任何其他安全步骤。我没有向数据库发送任何数据。