wordpress屏蔽垃圾评论

大部分垃圾评论都是用自动化软件来发的,它会先GET一个页面,然后再往wp-comments-post.php文件POST内容。
例如:

"GET /archives/589.html HTTP/1.1" 200 8490
"POST /wp-comments-post.php HTTP/1.1" 302 26

垃圾评论当中80%以上都是福建莆田市IP发的,鄙视下。

1、使用插件
垃圾评论过滤:Akismet插件
wordpress评论滑动解锁:myQaptcha插件

发现效果不好,Akismet虽然能过滤垃圾评论但是阻止不了机器人提交评论,而且一来就是几百个连接,VPS负载直接飙到4点几,CPU占用率也很高,导致博客打开异常慢。上个月Akismet统计过滤了1,477,296条的垃圾评论怪不得会慢。
myQaptcha安装后没有起色,看日志里被绕过了。

2、直接屏蔽IP
网上找了一个类似功能修改下。先看下IP在日志里是第几个字段,第一个就填$1,第二个就填$2以此类推。
先从日志中过滤出IP:

awk '/wp-comments-post/ { printf $1 "\n"}' /var/log/httpd/live-in.org-access_log* | sort | uniq -d -c | awk '$1 > 10 {printf $2 "\n"}' >/tmp/iptables.txt 2>/dev/null

结果保存到/tmp/iptables.txt中。

iptables屏蔽:

awk '{system("iptables -I INPUT -s "$0" -j DROP")}' /tmp/iptables.txt
service iptables save

将/tmp/iptables.txt内的IP添加到iptables中并保存。

查看添加的内容:

iptables -n -L |less

说明:-n表示不做DNS解析

PS:如果效果不好,直接屏蔽IP段!
PS2:再次添加iptables时使用如下,先删除当前规则再添加避免重复

awk '{system("iptables -D INPUT -s "$0" -j DROP;iptables -I INPUT -s "$0" -j DROP")}' /tmp/iptables.txt
service iptables save

参考资料:
http://blog.csdn.net/windcxb/article/details/6547688
http://www.qingting.org/2012/iptables-block-ip-rule
http://www.ctohome.com/FuWuQi/0d/535.html

《wordpress屏蔽垃圾评论》上的15个想法

  1. 我用的hoskter,之前我也是用vps做站的,垃圾评论就算了,蛋疼的是相比于空间,vps无法有效利用,都拿去做vpn,每个月还能有2T多的剩余流量…
    hoskter后台有屏蔽ip的东西,很方便

    1. hoskter是插件吗,没找到啊?你买的VPS流量有那么多啊,我的只有几百G,主要是垃圾评论频率太高了,相当于小型DOS攻击,主页都要打不开了。。

    1. 我的域名是有gmail的免费企业邮箱的,但是常常打不开。而且VPS也能发邮件,就用主机发吧。

        1. kazila.com这家的,达拉斯机房,看中的就是稳定。线路是时好时坏,我在公司也是联通线路,打开还行。

          1. 这家是几年前在LEB有过一次活动,最便宜的一款年付原价5折好象,当时入手的。一年300多人民币也心疼呢。

    1. 123我也用过,超售是公认的,只要在线率正常,最受不了超售导致经常性自动关机或宕机

评论已关闭。