通过nginx禁止IP访问来防御spamer
作者:dianso 发布时间:November 24, 2010 分类:沒事折騰
最近没管理博客,后台全是垃圾评论了,直接通过的我不知道有多少,spam 列表里就有 1500 了。

标签:打算直接用 nginx 添加黑名单来禁止这些 ip 访问,首先去 phpmyadmin 导出这些 spamer 的 IP,直接运行下面的命令:
SELECT DISTINCT comment_author_IP,comment_approved FROM wp_comments WHERE comment_approved != '1';
然后全选,导出为 SQL 文件,导出的都是这样的格式:
('122.158.91.114', '0'),
('125.224.73.30', 'spam'),
('222.240.138.86', 'spam'),用记事本来替换吧:
('替换为 deny
', '0'),
', 'spam'),这些替换成 ;
最后得到的就是这样的
deny 122.158.91.114;保存为 iplist.conf
上传到 /usr/local/nginx/conf,然后编辑 nginx.conf,添加:
include iplist.conf;
最后,重启 nginx:
kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
这样,在黑名单的 IP,访问网站的时候就 403 错误了
Dianso‘s Blog
WP后台已经集成了黑名单功能,不光能屏蔽IP还能根据关键词进行屏蔽,你这有点麻烦,还得VPS
[img]http://s.014.cc/2010/12/ebe19734-82c9-40d3-83dc-c9c19e9a559b.jpg[/img]
后台黑名单我的都几百个了,没多大用,进了spam列表,删除都需要很久
留言墙太强大了。。。
每天都会收到很多来自国外网站的垃圾邮件,都是手工把他们删除掉,博主的方法没太看明白,不知道怎么操作。
这点是太强了,直接封IP的……
这个是放在 http 下,还是server下?
@Magento小工: 这个是直接写入nginx的conf文件才能生效