51学通信论坛2017新版

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2478|回复: 0
打印 上一主题 下一主题

Linux基础11-iptables(防火墙)-(连载中)

[复制链接]

 成长值: 15613

  • TA的每日心情
    开心
    2022-7-17 17:50
  • 2444

    主题

    2544

    帖子

    7万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    74104
    跳转到指定楼层
    楼主
    发表于 2017-11-15 21:15:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    iptables
    附件
    CC攻击器-邪恶十六进制2.0 模拟cc攻击
    python写的暴力破解的脚本 模拟暴力破解攻击
    linux的防火墙 iptables
    名词解释
    dip|sip source(源) destination(目的,目标)
    sport|dport
    netfilter(iptables)
    netfilter --工作在内核软件,实现数据包的过滤。
    iptables --工作应用层一个软件,用来控制netfilter。
    1.netfilter/iptables包过滤防火墙(tcp/ip四层)
    1)应用层 --通过软件为用户提供接口
    2)传输层 --提供可靠或不可靠的数据传输(TCP/UDP)使用端口来标示服务类型 sport dport
    3)网络层 --提供路由和选址(icmp) sip dip
    4)数据链路层 --传输数据帧(MAC) s _mac arp写 在局域网内泛洪 来找到我们对应的MAC
    5)物理层 --传输透明比特流 eth0 eth1
    过滤的依据: s_mac/sip/dip/sport/dport/状态(三次握手/四次断开)SYN DDOS攻击怎么防御我们DDOS 小流量
    netfilter的逻辑架构: nat 10


    image
    netfilter防火墙的元素及关系:
    netfilter==>表==>链==>规则
    三张表:
    filter 防火墙表,允许和拒绝都在这里实现
    nat 地址转换
    mangle 数据包整形
    五条链:
    INPUT 本机进站的数据流
    OUTPUT 本机出站的数据流
    FORWARD 路由的数据流
    POSTROUTING 路由后的数据流
    PREROUTING 路由前的数据流
    表跟链的对应关系:
    filter:INPUT,OUTPUT,FORWARD
    nat: OUTPUT,PREROUTING,POSTROUTING
    mangle:INPUT,OUTPUT,FORWARD,PREROUTING,POSTROUTING
    四种数据流:
    本机进站的数据流:packet-->ethX-->PREROUTING-->INPUT-->本机
    本机出站的数据流:packet-->OUTPUT-->POSTROUTING-->ethX-->destination
    路由的数据流:
    出去: packet-->eth0-->PREROUTING-->FORWARD-->POSTROUTING-->eth1--destination
    回来: packet-->eth1-->PREROUTING-->FORWARD-->POSTROUTING-->eth0--destination
    本机访问本机: 本机-->packet-->lo-->PREROUTING-->INPUT-->本机
    本机-->packet-->OUTPUT-->POSTROUTING--lo-->本机
    表的匹配顺序:
    mangle-->nat-->filter
    防火墙规则匹配顺序:
    1.按顺序匹配,如果第一条匹配到了就直接执行这条规则的动作,不往下匹配其它规则.
    2.如果第一条匹配不到,第二条也匹配不到,继续往下匹配直到找到匹配的规则,如果找不到匹配默认规则.
    传输层:协议(tcp/udp)
    端口(sport/dport)
    网络层:
    IP地址(sip/dip/icmp) ping
    数据链路层:
    mac地址(--mac-source)
    物理层:
    从哪个网卡进来 -i eth0 eth1 服务器2个地址 外网地址 一个内网地址
    iptables操作命令#iptables --helpUsage: iptables -[AD] chain rule-specification [options] iptables -[RI] chain rulenum rule-specification [options] iptables -D chain rulenum [options] iptables -[LFZ] [chain] [options] iptables -[NX] chain iptables -E old-chain-name new-chain-name iptables -P chain target [options] iptables -h (print this help information) --append -A chain 追加规则 --delete -D chain 删除规则 --delete -D chain rulenum 删除指定序号的规则 --insert -I chain [rulenum] 插入一条规则(default 1=first) 插入会插入表的第一行 --replace -R chain rulenum 替换一条规则 --list -L [chain] 显示出链或者链中的规则 --flush -F [chain] 在一个链或者所有链中清空规则 --zero -Z [chain] 清空计数 --new -N chain 创建用户自定义链 --delete-chain -X [chain] 删除用户自定义链 --policy -P chain target 指定默认规则 Change policy on chain to target --rename-chain -E old-chain new-chain 重命名用户自定义链Options: --proto -p [!] proto 指定协议,!代表取反 --source -s [!] address[/mask] --指定源地址 source specification --destination -d [!] address[/mask] --指定目标地址 destination specification --in-interface -i [!] input name[+] --指定数据从哪个网口进来 network interface name ([+] for wildcard) --jump -j target --匹配动作 target for rule (may load target extension) --goto -g chain jump to chain with no return --match -m match --扩展匹配 extended match (may load extension) --numeric -n --端口和IP以数值方式显示,不作反解 --out-interface -o [!] output name[+] --指定数据从哪个网口出去 network interface name ([+] for wildcard) --table -t table --指定使用哪个表 (default: `filter') --verbose -v --显示详细信息 --line-numbers --显示规则的序号 --exact -x expand numbers (display exact values)

      查看
    # iptables -t nat -L -n -v --line# iptables -t filter -L -n# iptables -t filter -L INPUT# iptables -t filter -L INPUT -v -n# iptables -t filter -L INPUT -n -v --line# watch -n 0.1 iptables -L INPUT --line -n -viptables -nv -L

      追加 插入 替换 删除
    追加规则:# iptables -t filter -A INPUT -i lo -j ACCEPT插入规则:# iptables -t filter -I INPUT -i eth0 -j ACCEPT --插入成为第一条# iptables -t filter -I INPUT 3 -i eth0 -j ACCEPT --插入成为第三条规则替换规则:# iptables -t filter -R INPUT 3 -i eth1 -j ACCEPT --替换成为指定规则删除规则:# iptables -t filter -D INPUT 2 --删除指定链指定编号的规则+++++++++++#iptables -t filter -A INPUT -i lo -j ACCEPT#iptables -t filter -A OUTPUT -o lo -j ACCEPT#iptables -t filter -A INPUT -i eth0 -s 192.168.0.0/24 -d 192.168.0.250 -j ACCEPT# iptables -t filter -A INPUT -i eth1 -j ACCEPT# iptables -L INPUT -n --line -v# iptables -t filer -I INPUT 2 -i eth2 -j ACCEPT 插入默认第二条# iptables -t filter -I INPUT -i eth3 -j ACCEPT 插入默认第一条# iptables -t filter -R INPUT 1 -i eth4 -j ACCEPT 替换默认第一条#iptables -t filter -D INPUT 1 删除默认第一条# iptables -t filter -F INPUT 清空filter所有INPUT链#iptables -t filter -F #iptables -L INPUT -n --line -v空规则: 1、清空一张表# iptables -t filter -F注意不会清除默认规则 2、清空一条链中的规则# iptables -t filter -F INPUT新建/删除用户自定义的链:# iptables -t filter -N uplooking 新建# iptables -t filter -X uplooking 删除# iptables -t filter -X 清空filter表中所有用户自定义链+++++++++iptables -t filter -N TCPiptables -t filter -N UDPiptables -t filter -A INPUT -i lo -j ACCEPTiptables -t filter -A INPUT -p tcp -j TCP++++++++更改默认规则:# iptables -t filter -P INPUT ACCEPT# iptables -t filter -P INPUT DROP

    声明:本文转载自网络。版权归原作者所有,如有侵权请联系删除。
    扫描并关注51学通信微信公众号,获取更多精彩通信课程分享。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|51学通信技术论坛

    GMT+8, 2025-1-31 12:40 , Processed in 0.052848 second(s), 32 queries .

    Powered by Discuz! X3

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表