社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 银行

  • 15838阅读
  • 2回复

WordPress防护技巧

级别: 管理员
发帖
8532
金币
2762
威望
3231
贡献值
0
元宝
0
WordPress 的确是一个很出色的平台,有着丰富的第三方插件和主题,也给博客主和广大读者提供了很棒的体验。但是,如果你不重视网站安全的话,你的博客很快就会成为黑 客眼中甜美的蛋糕了。在本文中,我们将会讨论到一下 WordPress 的安全隐患和一些应对方法。






问题出在哪了?
对于一个像 WordPress 一样复杂的 CMS,用户的程序是在不同的服务器上运行的,第三方插件,第三方主题也可能会存在一些缺陷。当破坏者通过某些缺陷进入了你的网站的话,你就有麻烦了。


如果你运行的是一个易手攻击的 WordPress,黑客可以进行以下几种破坏:


1、在你的网站上执行任意代码。
2、注入脚本,HTML代码或者是直接编辑你的帖子。
3、导致无法访问(使网站崩溃,CPU 和带宽过载)。
4、注入或者执行 SQL 命令。
5、获取重要数据,例如你的密码。
6、把用户带到另外的网站,可能还是钓鱼网站。
7、跨站伪造记录(CSRF)。
8、在你的网站上创建一个隐藏的帖子,这个帖子只对搜索引擎可见,而且是导向到黑客的站点的。
9、植入后门。这样就算你修复了那些缺陷黑客还是可以进入你的网站。
10、在你的 PHP 核心代码和主题文件里面植入一段加密代码。
被黑的主要原因
一个很重要的原因就是你用的是过时的东西,比如 WordPress 核心程序,插件,主题。这就是为什么现在有那么多的相关服务来把升级变得更简单。其中 WP remote 和 InfitniteWP 是两个免费又好用的服务。


还有一些其他常见的原因:


1、在下载了没有来源的主题,通常这些主题都是有后门的。
2、从一个感染了病毒的电脑进入你的 WordPress 网站。
3、管理员帐号的密码过于简单。
在哪里获得最新的漏洞信息
在 WordPress 3.X,已知的漏洞已经有30个,如果你的 WordPress 还是更旧的版本,漏洞就会更加多。这里有一个 Secunia 提供的所有已知 WordPress 漏洞的列表,或者你可以直接去关注一下 WordPress 的开发进展,订阅开发团队的博客 WordPress development blog。


给你的博客上把锁
1、定时备份博客。这样就能确保你在任何时候都可以重建网站。
2、确保你的 WordPress 核心系统是最新的。
3、确保插件和主题是最新的。
4、不要使用未知来源的主题,通常都是有后门的,特别是那些放到免费网盘里面的破解主题。
5、用一个没有其他站点使用过的高强度密码。
6、确保你用来登录 WordPress 站点的电脑是没有病毒的。
7、监控服务器和用户数据,调查可疑的行为。
8、使用空白的 index.html 文件来禁止其他用户访问主题和插件目录。
9、在你的 meta 描述里面把你的 WordPress 版本好去掉。
10、通过 htaccess 文件来保护 WordPress 的 wp-admin 文件夹。
还有一些很好用的插件,我个人推荐以下几个:


Wordfence 提供免费的防火墙,病毒扫描,和流量监控。


Bulletproof 针对 XSS, RFI, CRLF, CSRF, Base64, Code Injection and SQL 注入的防护。


Better WordPress security 提供傻瓜式的操作。


Lockerpress 自定义登录 URL,更换管理员,还有一些自定义过滤的选项。


希望本文可以帮到各种读者朋友。
QQ: 378890364 微信:wwtree(省短信费) 紧急事宜发短信到0061432027638  本站微博:http://t.qq.com/wwtree QQ群:122538123
级别: 管理员
发帖
8532
金币
2762
威望
3231
贡献值
0
元宝
0
只看该作者 沙发  发表于: 2013-01-15
WordPress启用network多用户版本
WordPress 从3.0 版本开始,就不再单独开发wordpress mu 版本,而是将多用户版本(MU: multiple user)整合到了Wordpress 普通版本中,一起维护和更新,被称为network或者multisite(MS)。在最新版本wordpress 3.2.1 安装包中,我们看到wordpress/wp-admin 目录下有个network 文件夹,就是wordprss 3+的多用户版本文件包所在目录位置。
wordpress 3.0 + 如何开启wordpess 多用户版本,只需下载最新的普通单用户wordpess 安装包即可:WordPress下载。然后和普通版本一样,安装Wordpress博客之后, 登录后台启用Network,下面记录的是wordpress开启network 多用户版本的步骤(官方教程:wordpress create a network)。
WordPress 多用户版本的启用有两种方式可供选择,使用二级域名创建多用户网站(如site1.farlee.info),或使用二级目录创建多用户网站(如 farlee.info/stie1)。首先检查服务器空间和域名是否符合系统需求:
    二级域名:Apache 配置中启用了二级域名通配符 wildcard subdomains (很多共享虚拟主机没有开启该功能);同时域名支持DNS 泛域名解析二级目录:启用了 mod_rewrite,可以读取 .htaccess文件。如果能启用permalinks 永久固定链接,说明符合条件。
如果要启用独立域名指向二级域名/目录的功能,可以使用插件:WordPress MU Domain Mapping
其次查看Wordpress MU设置要求:
    在后台设置的”WordPress address (URL)” 和 “Site address (URL)”必须相同;WordPress address (URL) 不能带有端口号;不能创建二级域名多用户wpmu的情况:Wordpress 主博客采用的是二级目录安装;WordPress address (URL) 为localhost 或ip地址;不能创建二级目录多用户wpmu的情况:离WordPress 安装时间超过了一个月。因此普通版安装好后尽快启用network 多用户功能,以防止出现固定链接问题。
第一步  WordPress备份
WordPress 数据库备份和文件备份。
第二步 服务器/域名配置
(使用二级目录这一步可略过):
    设置Apache 配置文件 httpd.conf,支持二级域名通配符指向,如加入 ServerAlias *.farlee.info域名DNS设置泛域名解析,如添加一条A记录:   *.farlee.info  127.1.1.1
第三步:修改wp-config.php 设置允许多用户多网站
打开博客配置文件wp-config.php ,找到/* That's all, stop editing! Happy blogging. */,在它之前(一般在define('WP_DEBUG', false);之后),添加define('WP_ALLOW_MULTISITE', true);保存,登录或重新刷新wp管理后台。访问 Administration > Tools > Network Setup:
Network setup
第四步:安装Wordpress Network多用户博客网站
若出现提示Warning: Please deactivate your plugins before enabling the Network feature.,先禁用所有激活的插件
创建wordpress 多网站network - 选择二级域名或二级目录
如上图所示,
    Addresses of Sites in your Network选择使用二级目录还是二级域名安装多用户版博客Server Address 以后如果想从二级目录换成二级域名的,建议设置成不要带www。Network Title 和 Admin E-mail Address 填上标题和管理员邮箱。
最后点击install 安装。
第五步:开启Wordpress Network
0. 备份 wp-config.php 和 .htaccess 文件.
1. 在/wp-content/目录下创建 blogs.dir 目录,文件目录权限和wp-content一致。
2. 在wp-config.php的/* That’s all, stop editing! Happy blogging. */之前添加如下代码(注意加在wp-config.php文件末尾是无效的,会提示Warning: An existing WordPress network was detected.Please complete the configuration steps. To create a new network, you will need to empty or remove the network database tables。复制根据你的博客配置在页面上自动生成的代码,如)
[pre]define( 'MULTISITE', true );define( 'SUBDOMAIN_INSTALL', false );$base = '/';define( 'DOMAIN_CURRENT_SITE', 'www.farlee.info' );define( 'PATH_CURRENT_SITE', '/' );define( 'SITE_ID_CURRENT_SITE', 1 );define( 'BLOG_ID_CURRENT_SITE', 1 );[/pre]3. 复制页面上自动生成的重写规则,加入到.htaccess 文件中,或替换已经生成的其他wordpress url重写规则。比如我使用下面的代码替换掉启用permalinks时生成的在<IfModule mod_rewrite.c> 和 </IfModule>之间的代码片段:
[pre]RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]# uploaded filesRewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]# add a trailing slash to /wp-adminRewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]RewriteCond %{REQUEST_FILENAME} -f [OR]RewriteCond %{REQUEST_FILENAME} -dRewriteRule ^ - [L]RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]RewriteRule . index.php [L]
[/pre]4. 重新登录
第六步:设置Network-wpmu
WordPress 3.2 在右上角点击用户名,在下拉列表中选择 Network Admin管理Network。
Network Admin 菜单
注:在wordpress 3.0中,超级管理员有一个新的network 管理菜单,wp3.1 则为Network Admin专门设置一个子版面,链接地址在管理面板的右上角的用户名旁边。然后可以在Settings 面板配置network选项(如设置允许新用户注册:Allow new registrations), 在 Sites 面板管理多网站。
关于多用户版Wordpress (WPMU/WPMS/Network) 必须知道的几点
    用户权限:所有注册用户都可以订阅所有Wordpress network网站。除了Network 管理员(超级管理员),其他网站管理员无法安装主题和插件,可以选择激活参超级管理员已经安装的主题。Permalinks:启用Network之后,创建的主博客(第一个博客)所有永久固定链接地址将被自动加上blog,如farlee.info变为farlee.info/blog。因此无法创建slug相同名称的静态页面。WordPress 插件:只有超级管理员(Network Admin)可以安装插件;Network Admin可以在Network网络管理面板启用全局插件(Network Activate),全局插件单个网站无法单独禁用;如果在Network 选项中设置了启用Plugins 插件页面,网站管理员(site admin)就可以在Plugins 菜单中单独为自己的博客网站启用已安装但Network Admin没有全局启用的插件(网站独立插件);通过FTP上传到wp-content/mu-plugins目录的插件是所有网站必须使用的强制插件(must-used plugins),只有删除这些文件才能取消这个插件,而且插件只能是单个php文件,或者通过单个文件使用include包含子文件夹。
Wordpress 多用户版插件
WordPress MU Sitewide Tags Pages:http://wordpress.org/extend/plugins/wordpress-mu-sitewide-tags/ 。wp推荐的插件,url地址改变,产生重复页面,个人觉得不合适。
垃圾评论插件  http://wordpress.org/extend/plugins/wp-hashcash/
google +1 插件:http://wordpress.org/extend/plugins/google/
多网站widgets 插件:http://wordpress.org/extend/plugins/diamond-multisite-widgets/ 可以获取最新网站列表,其他有问题。
多网站最新文章:http://wordpress.org/extend/plugins/multisite-latest-posts-widget/http://thejudens.com/eric/2009/08/wordpress-mu-list-blogs/
控制插件博客 http://firestats.cc/wiki/WPMUPluginCommander network可以直接实现相同功能。
QQ: 378890364 微信:wwtree(省短信费) 紧急事宜发短信到0061432027638  本站微博:http://t.qq.com/wwtree QQ群:122538123
级别: 管理员
发帖
8532
金币
2762
威望
3231
贡献值
0
元宝
0
只看该作者 板凳  发表于: 2013-01-16
开启WordPress多站点功能
WordPress 3.0以上的版本有一个很不错的功能:多站点,即一个WordPress可以管理多个站点,基本以前的WordPress MU(多用户版)一样。今天和大家分享一下WordPress 3.0开启多站点功能的方法,演示的版本为3.1.1英文版+中文语言包。
1.开启网络(Network)。默认的WordPress是没有开启多站点功能的,我们要开启【网络(Network)】,需要在根目录下的 wp-config.php 文件中,添加下面的代码
[table=592.5px][tr][td][pre]
1[/pre][/td][td][pre] define('WP_ALLOW_MULTISITE', true);
[/pre][/td][/tr][/table]

这样就可以在WordPress管理后台->【工具(Tools)】功能模版中看到【网络(Network)】这个功能了,如下图所示

2.点击【网络(Network)】,就进入到设置页面

(1)在这里需要选择WordPress网络是使用 子域名 还是 子目录 (两者的具体区别可以看上图的例如),这里倡萌选择 子域名。
小贴士:一般而言,所有的主机空间都支持 子目录  样式;但要使用 子域名 样式,必须同时满足下面的条件
①貌似必须是Linux主机,并且要安装并启用 mod_rewrite 模块(也就是要支持re_write),所以基本上Windows主机是不行的;
②你的主机必须支持 DNS 泛域名解析(即支持在A记录中添加一条星号 *.yourdmain.com 这样的解析)
据倡萌测试发现,一般 DirectAdmin 面板的空间貌似都不支持DNS 泛域名解析,而 cPanel 面板的主机空间有可能支持,或者也可以说 必须是可以添加 无数个 子域名 的主机空间才行。(测试条件有限,不一定完全正确)
注意:如果你的主机支持DNS 泛域名解析,并且你选择了 子域名 样式,那你就要在主机面板中添加 *.yourdmain.com 这样的子域名。并且将你以后要绑定的子域名解析指向到你的主机。
小建议:支持 DNS 泛域名解析的主机空间估计不好找,所以购买空间时一定要咨询主机商,一般的用户还是建议使用 子目录 保险些。
(2)网络详情中的信息可以随便填,然后点击【立即安装】
3.手动完成以下设置:(操作前请注意备份 wp-config.php 和 .htaccess 文件)

(1)在 wp-content 目录下 新建一个 blogs.dir 目录,可能要设置为755或777权限。
(2)按上图 第2点 所示,在 wp-config.php 中添加对应的代码到适当的位置。
(3)按上图 第3点所示,覆盖原来的 .htaccess 规则。
4.重新登录后台,就会发现在后台右上角有一个【网络管理(Network Admin)】,点击进去就可以管理 网络了,如下图

接下来倡萌还会不断发布WordPress 3.0多站点 的相关文章,敬请关注,如果你有任何问题或技巧,欢迎在下面留言交流。
QQ: 378890364 微信:wwtree(省短信费) 紧急事宜发短信到0061432027638  本站微博:http://t.qq.com/wwtree QQ群:122538123
描述
快速回复

您目前还是游客,请 登录注册
如果您在写长篇帖子又不马上发表,建议存为草稿