ipset的简单应用

2017-05-22  |  技术  |  1464 views

  首先,我们要了解一下ipset是什么?
  ipset是iptables的扩展,允许你创建匹配整个地址sets(地址集合)的规则。而不像普通的iptables链是线性的存储和过滤,ip集合存储在带索引的数据结构中,这种集合比较大也可以进行高效的查找。在许多的linux发布中ipset是一个简单的安装包,可以通过linux发行版提供的yum进行安装。

使用

  创建ip黑名单集合

ipset create banip hash:ip  

  这条命令创建名为banip的集合,以哈希方式存储,存储内容为ip地址。

  添加iptables规则

iptables -I INPUT -m set --match-set banip src -j DROP  

  如果源地址(src)属于 banip 这个集合,就进行 DROP 操作。这条命令中,banip 为访问黑名单,如果要把某个集合作为白名单,在set之后添加一个 ‘!’ 符号就可以了。

  添加黑名单ip

ipset add banip 123.123.123.123

  这样ip为123.123.123.123的源就访问不了我们的网站了。

  删除黑名单ip

ipset del banip 123.123.123.123

  执行之后,此ip又可以正常访问网站了。

  当然,ipset可做的可不止这些,有兴趣可以深入了解一下。

已有 2 条评论

  1. 替天行盗

    好文,拜读,以后常看学习。

    替天行盗May 26th, 2017 at 01:41 pm回复
    1. meelu

      谢谢~

      meeluFebruary 16th, 2019 at 04:08 pm回复

发表新评论