Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3304400
  • 博文数量: 266
  • 博客积分: 3081
  • 博客等级: 中校
  • 技术积分: 2640
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-04 10:35
个人简介

没什么好介绍的!穷屌丝一个~

文章分类

全部博文(266)

文章存档

2021年(3)

2020年(1)

2019年(2)

2016年(5)

2015年(1)

2014年(1)

2011年(9)

2010年(16)

2009年(31)

2008年(58)

2007年(111)

2006年(2)

2005年(26)

我的朋友

分类: LINUX

2007-06-02 23:07:07

1.limit(来源:http://cha.homeip.net/blog/archives/2006/03/iptables_limit.html)
iptables limit 參數備忘

限某位同志的收/发包速率....因为她在下载.
iptables -I FORWARD -d 192.168.0.21 -j DROP
iptables -I FORWARD -d 192.168.0.21 -m limit --limit 1/s --limit-burst 2 -j ACCEPT
iptables -I FORWARD -s 192.168.0.21 -j DROP
iptables -I FORWARD -s 192.168.0.21 -m limit --limit 1/s --limit-burst 2 -j ACCEPT


    * 限制特定封包傳入速度
    * 限制特定埠口連入頻率
    * iptables Log 記錄參數備忘
    * 自定 Chain 使用備忘
    * 防治 SYN-Flood 碎片攻擊

限制 ping (echo-request) 傳入的速度

    限制前, 可正常每 0.2 秒 ping 一次

    ping your.linux.ip -i 0.2

    限制每秒只接受一個 icmp echo-request 封包

    iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 1 -j ACCEPT
    iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

        --limit 1/s 表示每秒一次; 1/m 則為每分鐘一次

        --limit-burst 表示允許觸發 limit 限制的最大次數 (預設 5)

    再以每 0.2 秒 ping 一次, 得到的回應是每秒一次

    ping your.linux.ip -i 0.2

限制 ssh 連入頻率

    建立自訂 Chain, 限制 tcp 連線每分鐘一次, 超過者觸發 Log 記錄 (記錄在 /var/log/messages)

    iptables -N ratelimit
    iptables -A ratelimit -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A ratelimit -p tcp --syn -m limit --limit 1/m --limit-burst 1 -j ACCEPT
    iptables -A ratelimit -p tcp -j LOG --log-level "NOTICE" --log-prefix "[RATELIMIT]"
    iptables -A ratelimit -p tcp -j DROP

    引用自訂 Chain, 限制 ssh (tcp port 22) 連入頻率

    iptables -A INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT (特定 IP 來源不受限制)
    iptables -A INPUT -p tcp --dport 22 -j ratelimit

    參考資料: Mike's Blog - How to limit attack attempts in Linux

    sshd_config 設定備忘:

        * LoginGraceTime 30 密碼輸入時限為 30 秒
        * MaxAuthTries 2 最多只能輸入 3 次密碼

同理可證

    iptables -N pinglimit
    iptables -A pinglimit -m limit --limit 1/s --limit-burst 1 -j ACCEPT
    iptables -A pinglimit -j DROP

    iptables -A INPUT -p icmp --icmp-type echo-request -j pinglimit

    亦可達到每秒只接受一個 echo-request 封包

補充: 清除自訂 Chain

    iptables -L -n --line-number
    iptables -D INPUT n
    iptables -F ratelimit
    iptables -X ratelimit

防治 SYN-Flood 碎片攻擊

    iptables -N syn-flood
    iptables -A syn-flood -m limit --limit 100/s --limit-burst 150 -j RETURN
    iptables -A syn-flood -j DROP

    iptables -I INPUT -j syn-flood

    模擬攻擊

    wget http://www.xfocus.net/tools/200102/naptha-1.1.tgz
    wget ftp://rpmfind.net/linux/freshrpms/redhat/7.0/libnet/libnet-1.0.1b-1.src.rpm
    tar -zxf naptha-1.1.tgz
    rpmbuild --recompile libnet-1.0.1b-1.src.rpm
    cp -r /var/tmp/libnet-buildroot/usr/* /usr/local/
    cd naptha-1.1
    make

    ./synsend your.linux.host.ip 80 local.host.eth0.ip 0.1

    若成功抵擋, 不久後會出現 Can't send packet!: Operation not permitted 的訊息


相關網頁:

    * Linux 2.4 Packet Filtering HOWTO (big5)

Posted by Jamyy at 2006年03月17日 09:08
Trackback Pings

TrackBack URL for this entry:
阅读(1616) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~