zoukankan      html  css  js  c++  java
  • Linux下使用ipset封大量IP

    如果网站遭受大量ip攻击,显然使用iptables一个一个屏蔽不现实了,只好借助ipset进行批量封禁IP。

    1、介绍:

        ipset是iptables的扩展,它允许你创建 匹配整个地址集合的规则。而不像普通的iptables链只能单IP匹配, ip集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行高效的查找,除了一些常用的情况,比如阻止一些危险主机访问本机,从而减少系统资源占用或网络拥塞,IPsets也具备一些新防火墙设计方法,并简化了配置

    2、安装:

     yum install ipset

    3、创建一个ipset

     ipset默认可以存储65536个元素,使用maxelem指定数量
     ipset create blacklist hash:net hashsize 4096 maxelem 1000000 #黑名单 
     ipset create whitelist hash:net hashsize 4096 maxelem 1000000 #白名单
     ipset  create  blacklist  hash:ip  hashsize  4096  maxelem  1000000 #黑名单 
     ipset  create  whitelist  hash:ip  hashsize  4096  maxelem  1000000 #白名单

        PS:hash:net指定了可以往集合里添加IP段或IP地址,hash:ip指定了可以往集合里添加IP地址。

    4、在ipSet添加、删除IP

     ipset add blacklist 10.10.10.xx //添加IP
     ipset del blacklist 10.10.10.xx  //删除IP

    5、创建防火墙规则,在iptables添加一条记录:

    -A INPUT -m set --match-set blacklist src -j DROP

    6、将ipset规则保存到文件中

    ipset save blacklist -f blacklist.txt
    ipset save whitelist -f whitelist.txt

    7、删除ipset

    ipset destroy blacklist
    ipset destroy whitelist

    8、导入ipset规则

    ipset restore -f blacklist.txt
    ipset restore -f whitelist.txt
    **************************************************************************************
    当你的才华还撑不起你的野心的时候,你就应该静下心来学习;当你的能力还驾驭不了你的目标时,就应该沉下心来,历练;梦想,不是浮躁,而是沉淀和积累,只有拼出来的美丽,没有等出来的辉煌,机会永远是留给最渴望的那个人,学会与内心深处的你对话,问问自己,想 要怎样的人生,静心学习,耐心沉淀,送给自己,共勉。
    **************************************************************************************
  • 相关阅读:
    MySQL的主从复制配置
    MySQL多实例安装配置实现
    cmake编译安装MySQL5.5.32
    MySQL数据库备份与恢复
    MySQL字符集那些事
    MySQL忘记密码怎么办??
    MySQL创建用户以及授权
    svn commit is not under version control 和 git常用指令
    App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file
    2016年猴年大吉
  • 原文地址:https://www.cnblogs.com/macoffee/p/13692067.html
Copyright © 2011-2022 走看看