WordPress站点安全解决方案–你的WordPress站点安全吗?

2012年9月9日 | 分类: 搭建博客 | 标签: , ,

随着WordPress由博客系统转型为CMS系统,再加上无限的资源和个性化主题、插件可供用户选择,国内越来越多的用户开始使用 WordPress搭建自己的博客、CMS站点,甚至于企业站点。但是搭建一个站点没有想象中的那么容易,你的站点是否经常备份、是否针对站点进行了安全 设置?如果你想知道自己的站点是否安全,请仔细检查以下几条:

1、打开浏览器,在地址栏中输入http://你的WordPress安装地址/wp-admin/images/ ,看看有什么效果?

解决方案:在这个目录下放入一个空白的index.html。同样也可以在其他你不想让别人看到的目录中放置index.html,例如wp-content目录。

2、打开浏览器,在地址栏中输入http://你的WordPress安装地址/wp-admin/ ,随意输入用户名和密码,看看你的博客允许你输错多少次?

解决方案:使用Login Lockdown插 件。使用Login Lockdown插件在一定程度上阻止别人测试你的密码,如果探测到一个 IP 段在一时间段内登录失败的次数超过了某一数目,就会自动锁定其登录功能,并禁止此 IP 段的使用者登入系统。这个登录失败的次数和限制登录的时间间隔等,都可以在你的后台设置。

3、是不是任何人都可以打开你的WordPress后台登陆页面?

解决方案

方法一:限制所有但除了自己的 IP (适用于静态IP用户)

如果你的是一个单一用户博客,你可能需要限制通过 IP 连接 WP‐ADMIN 的权限。请确保你所使用的是静态 IP。WP-ADMIN 中的 .HTACCESS 文件如下:

1 Order deny,allow
2 Allow from a.b.c.d #That’s your static IP
3 Please add some example for allowed ip ranges
4 Deny from all

保存文件,然后试图通过代理访问 wp-admin 目录,应该会被限制连接,然后使用自己的IP 再次连接。如果设置的一切正常,WP‐ADMIN 会被限制连接,除了通过你所设置的 IP。

方法二:需要密码 .htpasswd (推荐解决方案

当然,推荐的选项是设置密码保护,这意味着你仍然可以在任何地方连接到 wp-admin 目录,但我们增加了一道防线,以防越权操作。

.htaccess 文件 WP‐ADMIN 中的 .HTACCESS 文件如下:

1 #this file should be outside your webroot.
2 AuthUserFile /srv/www/user1/.htpasswd
3 AuthType Basic
4 AuthName “Blog”
5 require user youruser #making this username difficult to guess can help mitigate password brute force attacks.

.htpasswd 文件 正如已经说明的,该文件可以放到网站目录之外的地方,上层目录是个很好的选择。

1 $ htpasswd ‐cm .htpasswd blog
2 New password:
3 Re‐type new password:
4 Adding password for user blog

.htpasswd 文件已经在当前目录中创建了,请确保本文件的地址符合 wp‐admin/.htaccess 中 AuthUserFile 所设置的地址。

现在测试一下看看是否已经工作了。当你试图登录博客时会要求你输入用户名和密码以获得连接权限。如果没有出现的话,查看一下加密密码文件,然后查看所提供的地址是否正确。

4、WordPress后台 – 用户,你的用户列表中是否包括 admin ?

解决方案:你应该把默认的管理员用户名删除或者从 admin 修改为一个更难被猜到的名字,因为现行的 WordPress 版本都很容易因为用户枚举而被攻击。这样做可以缓和暴力破解密码的攻击。注意:你应该假设袭击者会知道你的用户名,所以确保密码足够的复杂。

5、在你博客前台的某个地方是否可以找到你的WordPress后台的登录用户名?

解决方案:WordPress 中有一个很好的方法,就是可以隐藏你的登录名。在“用户”设置中,你可以把你的“对外显示为”更改为你的昵称,这样在你发布文章的时候,给访客回复的时候,显示的就是你的昵称,而不是你的后台登录名。

6、WordPress根目录 wp-config.php 中,以下内容代码中的**部分是否已经包含安全码,或者仍是默认的提示语句(put your unique phrase here)?

1 define('AUTH_KEY', '**');
2 define('SECURE_AUTH_KEY', '**');
3 define('LOGGED_IN_KEY', '**');
4 define('NONCE_KEY', '**');

解决方案:使用WordPress.org 私钥生成服务(https://api.wordpress.org/secret-key/1.1/salt/),生成安全码。

7、你的博客是否经常备份,以确保出现意外能够第一时间恢复?

解决方案:使用WordPress Database Backup插件可以很方便的备份你的博客数据库,并定时自动发送到你的邮箱,这样可以防止网站服务器挂了,备份也没了。切记,切勿把备份文件放到服务器!

8、是不是通过查看页面源代码就能够知道你的博客使用了哪些插件?

解决方案:这个要去修改代码源文件,比较麻烦,难度较大。

9、是不是通过查看页面源代码就能知道你使用的WordPress版本?

解决方案:很多的袭击者或自动程序会在实施攻击以前 试图获取软件的版本,去除 WordPress 的版本信息可以使某些基于特定版本进行袭击的袭击者们失去信心。BlogSecurity WordPress Noversion 插件 (bs‐wp‐noversion) 可以防止 WordPress 版本漏洞,是一个简单但超级实用的插件。

注意:该插件可能对那些依赖于 WordPress 版本信息的插件产生影响。

10、你是否给你的博客空间配置了监控,以确保你的博客挂掉了,你也能第一时间获得通知?

解决方案:你可以使用第三方的博客监控服务。你可以自己使用PHP轻松监控你的网站运行状态,具体参考这里

11、你的WordPress和插件是否都是最新版?

解决方案:如果你的博客程序或插件是直接从开发者的站点获得的,那么你可能已经使用了最新版本,你可以安装 WordPress Plugin Tracker 插件来跟踪插件,查看是否使用了最新版本。安装并激活插件之后,运行该插件查看你是否正在使用最新的插件,截图如下:

如果插件的版本过时了,你会被该插件提醒,点击左边的插件标题就会直接转到对应的插件页面,然后选择是否升级。很简单的保持插件最新的方法。

12、你的WordPress博客是否搭建于免费空间?

解决方案:免费空间,说不定睡一觉做个梦后就挂掉了。现在虚拟主机费用也不是很高,每年一两百元就可以为自己找到一个稳定的住所,童鞋可以考虑一下老薛主机

13、你的博客空间上是否放置了类似PHP探针的东西?

解决方案:删除或者设置访问权限吧…

14、你的博客页面能否看到这么一句话:Powered By : WordPress

解决方案:该代码一般位于WordPress主题的footer.php文件中,找到对应的代码,删除!

15、你的人品好不好?

解决方案:这个…暂时没有解决方案

来源http://www.oome.org/wordpress-site-security-solutions-and-of-your-wordpress-site-safe.html

目前还没有任何评论.