zoukankan      html  css  js  c++  java
  • 网络知识之ipset

    ipset介绍

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

    1. ipset安装
      yum安装: yum install ipset
    2. 创建一个ipset
    ipset create xxx hash:net (也可以是hash:ip ,这指的是单个ip,xxx是ipset名称) 
    ipset默认可以存储65536个元素,使用maxelem指定数量
    ipset create blacklist hash:net maxelem 1000000 #黑名单 
    ipset create whitelist hash:net maxelem 1000000 #白名单 
    

    查看已创建的ipset

    ipset list
    3.加入一个名单ip

    ipset add blacklist 10.60.10.xx
    4.去除名单ip

    ipset del blacklist 10.60.10.xx
    5.创建防火墙规则,与此同时,allset这个IP集里的ip都无法访问80端口(如:CC攻击可用)

    iptables -I INPUT -m set –match-set blacklist src -p tcp -j DROP
    iptables -I INPUT -m set –match-set whitelist src -p tcp -j DROP
    service iptables save
    iptables -I INPUT -m set –match-set setname src -p tcp –destination-port 80 -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
    ipset的一个优势是集合可以动态的修改,即使ipset的iptables规则目前已经启动,新加的入ipset的ip也生效

    欢迎评论交流
  • 相关阅读:
    PostgreSQL杂记页
    程序员给女朋友周年纪念的浪漫
    实现乐鑫esp8266的无线OTA升级,实现远程在线升级固件
    XAOP的使用示范例子
    XPage的使用示范例子
    Python手势识别与控制
    Python人体肤色检测
    基于Opencv自带BP网络的车标简易识别
    iOS 自定义转场动画
    Python实时语音识别控制
  • 原文地址:https://www.cnblogs.com/linengier/p/9760107.html
Copyright © 2011-2022 走看看