首 页 » VPS安全 » Linux服务器 限制IP访问

Linux服务器 限制IP访问

2014-04-17 | 浏览人数: 8,348次 | 分类: VPS安全 | 10条评论 | 查看评论 发表评论

近段时间博主一直饱受垃圾评论的攻击,服务器一度负载太高而宕机。开始试了很多方法都不能很好的解决问题,最后通过屏蔽垃圾评论IP的方式,算是解决了这个问题,当然这个方法不是最好的,但是确实是非常实用的方法。

然后一些朋友就问我是怎么屏蔽这些垃圾评论的IP的,以及能否共享这些垃圾评论的IP,还有朋友问怎么提取自己博客的垃圾评论的IP,这个稍稍讲解下。

第一,nginx环境下

新建 denyip.conf 文件,在服务器/usr/local/nginx/conf目录下的nginx.conf里面,加上

include denyip.conf;

将屏蔽的IP放到 denyip.conf 里面

deny 110.83.0.0/16;

deny 110.84.111.0/24;

deny 110.85.124.56;

保存之后将 denyip.conf 上传到/usr/local/nginx/conf目录下,弄好之后记得重启nginx。

上面我列举了3中屏蔽类型,第一行的是屏蔽110.83.*.*的所有IP,第二行的是屏蔽110.84.111.*的所有IP,第三行是只屏蔽110.85.124.56这个IP。

第一行的屏蔽的范围较大,很容易误拦,第三行的疲敝最稳妥,但是IP越多导致文件会很大,也不算太可取,第二行的方式是我目前使用的,好处坏处介于2这之间,大家可以自由选择。

垃圾评论IP的收集
有人问我如何收集这些垃圾评论IP的,其实很简单,一个SQL就搞定,然后Excle处理下。

首先安装Akismet插件,这个插件会把垃圾评论标记为spam,只安装这一个就可以了,其他任何防评论插件请勿安装。

SELECT `comment_author_IP` FROM `wp_comments` WHERE `comment_approved`= ’spam’
执行好了之后,导出这些IP,保存csv格式,然后直接用Excle打开,排序,去重,就得到唯一的垃圾评论IP了。

得到垃圾评论了之后就可以按照上面的方式操作了。

第二,apache环境下

空间支持 .htaccess

<Limit GET HEAD POST>

order allow,deny

deny from 110.85.104.152

deny from 110.85.113

deny from 110.85.113.0/24

deny from 110.87

deny from 110.87.0.0/16

deny from 110.86.167.210 110.86.184.181

deny from 110.86.185.0/24 110.86.187.0/24

allow from all

</Limit>
apache下关于限制IP的写法比较多种,IP开始的第一行,是最普通的限制唯一IP,第二行跟第三行表达的内容是一样的,限制110.85.113.* 下所有的IP;第四五行也是一样的,限制110.87.*.* 下所有的IP;第六行是限制这2个IP,第7行就是显示这两个IP段;注意多个IP限制时用空格分开。

目前我收集的垃圾评论的IP
经过大约一周时间的统计,目前收集了一批垃圾评论的IP,用纯真IP批量跑了这些IP,其中以福建莆田市的居多,美国的也不少。如果你也饱受垃圾评论的攻击,可以用用这个方法和IP,我会定期更新IP数据的。
第三,iptables IP限制访问 指定IP访问

只允许指定的一个IP访问服务器

vi /etc/sysconfig/iptables

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

-A INPUT -s 165.232.121.17 -j ACCEPT
-A INPUT -j DROP
COMMIT

iptables 限制ip访问

通过iptables限制9889端口的访问(只允许192.168.1.201、192.168.1.202、192.168.1.203),其他ip都禁止访问
iptables -I INPUT -p tcp –dport 9889 -j DROP
iptables -I INPUT -s 192.168.1.201 -p tcp –dport 9889 -j ACCEPT
iptables -I INPUT -s 192.168.1.202 -p tcp –dport 9889 -j ACCEPT
iptables -I INPUT -s 192.168.1.203 -p tcp –dport 9889 -j ACCEPT

如果你之前的防火墙设置了永久关闭,则需要解除

chkconfig –list 查看启动服务,找到要关闭服务名
chkconfig –level 235 服务名 off 【在等级3和5为开机运行服务】

系统运行级别有0—6,就在/etc/inittab中的0-6

等级0表示:表示关机

等级1表示:单用户模式

等级2表示:无网络连接的多用户命令行模式

等级3表示:有网络连接的多用户命令行模式

等级4表示:不可用

等级5表示:带图形界面的多用户模式

等级6表示:重新启动2011/10/26

原创文章如转载,请注明:转载自深度VPS [ http://www.deepvps.com ]
[复制本文链接发送给您的好友]
  • 上一篇:
  • 下一篇:
  • 日志信息 »

    该日志于2014-04-17 21:52由 deepvps 发表在VPS安全分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

    相关日志 »

    共有10条评论 [点此发言]

    1. 1楼 神父 2014年04月17日 23:55

      禁止无头像的访客提交评论,这招也很酷的

      [回复]

      deepvps 2014年04月19日 16:08 回复:

      好办法,我试试哈,感谢

      [回复]

    2. 2楼 老李 2014年04月18日 10:28

      福建莆田的不仅发垃圾评论,还批量注册discuz用户,为的就是个人资料主页和个人签名网址,实在是可恶

      [回复]

      deepvps 2014年04月19日 16:08 回复:

      是的,分析了一下屏蔽的IP,大部分都是福建莆田和厦门的。

      [回复]

    3. 3楼 洛基卡 2014年04月18日 19:52

      我想买个vps搭建vpn自己用,麻烦您推荐一款。我对速度要求很高,价格无所谓,先谢谢啦

      [回复]

      deepvps 2014年04月19日 16:10 回复:

      可以看一下遨游,EMSHOST或者LOCVPS家的,都挺不错。

      [回复]

      iamfly 2014年04月19日 17:21 回复:

      测试评论 :smile:

      [回复]

    4. 4楼 垃圾易速 2014年04月21日 12:02

      易速网络就是骗子公司(www.emshost.com) 专门黑钱, 收到钱后就以各种理由封你帐号, 然后就不理你了

      [回复]

      deepvps 2014年04月21日 19:48 回复:

      不是吧,EMSHOST家还不错啊,以前博主也用过的。有啥问题可以私聊博主看看可以帮你解决不?

      [回复]

      垃圾易速 2014年04月22日 12:13 回复:

      易速网络那人不是叫左飞吗,只要你付款买它的服务器,马上禁用你的注册用户,从此无音信。这样的垃圾骗子你们居然还给它作广告还是推荐r ,那你这。。。 自己好自为之吧

      [回复]

    发表评论 »

    = 10 + 15 (防止机器人评论)

     疑问 冷笑 悲伤 坏蛋 感叹 微笑 脸红 大笑 吃惊 惊讶 困惑 酷 大声笑 恼火 古怪 转眼睛 给眼色 好主意 箭头 一般 哭了 绿人