6.防止图片盗链。
大多数虚拟主机和VPS都是限制流量的,而图片往往会消耗绝大部分流量。我们在希望自己文章被更多人访问和传播的同时又不得不去面对图片链接带来的巨大流量。所以防止图片外链是绝对必要的。
解决:修改 .htaccess 文件添加以下代码,之前一定记得备份。
RewriteEngine On#Replace ?mysite\.com/ with your blog urlRewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]RewriteCond %{HTTP_REFERER} !^$#Replace /images/nohotlink.jpg with your "don't hotlink" image urlRewriteRule .*\.(jpe?ggifbmppng)$ /images/nohotlink.jpg [L]
修改完成之后只有你的网站可以引用图片,而其他外部引用都会被替换为nohotlink.jpg 文件。你可以在nohotlink.jpg 里展示版权信息。当然你也可以指定替换为一个不存在的文件。
7.创建一个插件来阻止恶意请求。
黑客往往使用恶意查询来修着博客的薄弱点用来攻击,虽然WordPress自身有比较完善的防护机制,但也不是没有提高的余地。
解决:创建一个文本文件粘贴以下代码,并保存为 blockbadqueries.php 。上传到你博客的wp-content/plugins文件夹下,进入后台开启这个插件。
/*Plugin Name: Block Bad QueriesPlugin URI: http://perishablepress.com/press/2009/12/22/protect-wordpress-against-malicious-url-requests/Description: Protect WordPress Against Malicious URL RequestsAuthor URI: http://perishablepress.com/Author: Perishable PressVersion: 1.0*/
global $user_ID;
if($user_ID) {if(!current_user_can('level_10')) {if (strlen($_SERVER['REQUEST_URI']) 255 strpos($_SERVER['REQUEST_URI'], "eval(") strpos($_SERVER['REQUEST_URI'], "CONCAT") strpos($_SERVER['REQUEST_URI'], "UNION+SELECT") strpos($_SERVER['REQUEST_URI'], "base64")) {@header("HTTP/1.1 414 Request-URI Too Long");@header("Status: 414 Request-URI Too Long");@header("Connection: Close");@exit;}}}?
修改后如果有过长请求(超过255个字符)或者URI中存在PHP函数就会返回一个414错误。
8.删除你的WordPress版本号,切记!
WordPress会在头文件里显示版本号。告诉攻击者你版本号往往意味着他们可以少走很多弯路,为了不让他们长驱直入为什么不隐藏版本号呢?
解决:粘贴如下代码至 functions.php 文件,保存并刷新你的博客。
remove_action('wp_head', 'wp_generator');
现在看,是不是没有版本号了。
9.修改默认管理员名。
蛮力攻击是破解一个密码最简单的办法之一。 该方法很简单:尽可能多的尝试不同的密码。如果他们知道的用户名,他们只需要破解密码。 这就是为什么你应该改变默认的“管理员”用户名——“admin”的原因。请注意,WordPress的3.0版本会让您选择您想要的默认用户名。 但是这个方法依然适合3.0以前的版本。
解决:打开数据库执行如下SQL语句,“Your New Username”为你想修改的用户名。
UPDATE wp_users SET user_login = 'Your New Username' WHERE user_login = 'Admin';
修改后使用新的管理员名户名登陆。
10.防止目录浏览。
默认情况下,大多数主机允许目录列表。 因此,如果在浏览器的地址栏键入www.yourblog.com/wp-includes,就会看到在该目录下的所有文件。 这无疑是一个安全风险,因为黑客可以看到上一次进行了修改的文件并访问它们。
解决:修改 .htaccess 文件添加以下代码,之前一定记得备份。
Options -Indexes
注意修改后并不会影响用户正常的访问这些文件