学习 WordPress安全白皮书
酋长的Blog中看到介绍 WordPress安全白皮书 :
关于WordPress的安全性,一直有组织在研究,比如BlogSecurity,他们发布的《WordPress安全白皮书》更是关于WordPress安全的一次总结,让人高兴的,国内热心的朋友把白皮书翻译成了中文,所以各位朋友可以很轻松的阅读。白皮书写的很详细,WordPress介绍,安装,使用WordPress的细节等等,详细而系统的讲解了如何做一个安全的WordPress博客。中文版《WordPress安全白皮书》
这里不是把内容重复一遍,而是结合实际(比如偶)来记录下学习笔记
。
安装WordPress
对于虚拟机的用户来说 “安装WordPress” 中自己先使用root创建数据库,然后创建限制用户来给Wordpress的步骤就可以免了,因为你大多情况下就是使用的限制用户!
编辑wp-config.php文件,添加AUTH_KEY ,SECURE_AUTH_KEY和LOGGED_IN_KEY 的值。内容可以到http://api.wordpress.org/secret-key/1.1/ 来生成!
手动修改数据库表前缀,这个建议在安装的时候就搞好,要不你已经安装过想改的话就用里边介绍的直接用phpmyadmin来操作数据库,或者用他给的插件WP Prefix Table Changer 来搞。Alpha 版本的插件,难免存在 bugs。酌情使用
创建非管理员权限用户日常使用,修改默认管理员名字(默认为admin)。其实不用像文档里说的那样复杂的操作数据库改名,你只要在创建个用户设为管理员,然后直接进去把admin删掉就可以啦,要还想弄个假体的,就在创建个普通的admin用户或者直接修改权限为普通的用户来。
im-web-gefunden 的 Role manager 插件功能的确很了得,哇哈哈,见识ing。
强化安装WordPress
主要是对管理区域进行限制操作。
限制 wpcontent 和 wpincludes
限制目录权限,拒绝所有的东西,除了对图片,CSS 和一些 JavaScript文件的请求。
考虑到性能问题,不建议使用.htaccess来做限制,使用.htaccess文件, 则Apache需要在每个目录中查找.htaccess文件,因此,无论是否真正用到,允许使用.htaccess文件都会导致性能的下降。另外,每次请求一个页面时,都需要读取.htaccess文件。
把以下的代码放到你的 .HTACCESS 文件中,这些 .HTACCESS 文件应该放在 WP‐CONTENT 和
WP‐ INCLUDES 目录下:
Order Allow,Deny
Deny from all
<Files ~ “.(css|jpe?g|png|gif|js)$”>
Allow from all
</Files>
这个办法很了得,学习啦 ,嘿嘿,
限制 wpadmin
限制所有但除了自己的 IP
如果你的是一个单一用户博客,你可能需要限制通过 IP 连接 WP‐ADMIN 的权限。请确保你所使用
的是静态 IP(注意ing)。WP-ADMIN 中的 .HTACCESS 文件如下:
Order deny,allow
Allow from a.b.c.d #That’s your static IP
Please add some example for allowed ip ranges
Deny from all
保存文件,然后试图通过代理访问 wp-admin 目录,应该会被限制连接。
经测试这个方法很准很有效 呵呵,以前还真不知道这也能限制ip哈哈。不知道有没有办法绕过去呢。
需要密码 .htpasswd
当然,推荐的选项是设置密码保护,这意味着你仍然可以在任何地方连接到 wp-admin 目录,
但我们增加了一道防线,以防越权操作。
.htaccess 文件
WP ‐ ADMIN 中的 .HTACCESS 文件如下:
#this file should be outside your webroot.
AuthUserFile /srv/www/user1/.htpasswd
AuthType Basic
AuthName “Blog”
require user youruser #making this username difficult to guess can help mitigate password
brute force attacks.
.htpasswd 文件
正如已经说明的,该文件 可以放到网站目录之外的地方,上层目录是个很好的选择。
$ htpasswd ‐cm .htpasswd blog
New password:
Re‐type new password:
Adding password for user blog
.htpasswd 文件已经在当前目录中创建了,请确保本文件的地址符合 wp‐admin/.htaccess 中
AuthUserFile 所设置的地址。
当你试图登录博客时会要求你输入用户名和密码以获得连
接权限。如果没有出现的话,查看一下加密密码文件,然后查看所提供的地址是否正确。
这个办法我暂时不测试啦,
SPAM(垃圾留言),有很多的插件可供选择,我们建议你使用以下的一种或两种:
Akismit – Automattic 的防垃圾留言插件(需要提供 API key)
SpamBam – BlogSecurity 的防垃圾留言插件
Blog 加密
这个一般人用不起呢,呵呵
需要注意的是:一旦安装了 SSL(HTTPS),我们还需要安装一个插件,使得我们登录时自动转向对应的 HTTPS 协议地址。
去除 WordPress 版本信息
可以不使用他介绍的插件,而仅仅在模板的functions.php中添加hook调用就可以,代码如下:
<?php remove_action(’wp_head’, ‘wp_generator’); ?>
安全扫描
在blogsecurity上边提供啦个WordPress 在线安全扫描( WordPress Scanner)如果有兴趣可以去看看,呵呵。
总的来说收获不少,呵呵,希望大家能亲眼看看那文档,虽然有些东西对自己不适用,不过那个整体的安全思考还是可以要领会一下的。
转载原创文章请注明,转载自:Lin’s空间|Only[http://clin003.com]
本文链接: http://clin003.com/wp-use/learning-wordpress-security-whitepaper-1438/
你有啥想法就说出来吧,只要不是ad就不会k掉你的o(∩_∩)o...哈哈
Google比较注重原创性和时效性,若非需要的内容可以尝试下以下搜素。

































不错的介绍
看似挺简单了点,不过还是挺实用的