找回密码
 注册
查看: 707|回复: 1

iptables 实验报告

[复制链接]
发表于 2005-4-24 23:31:16 | 显示全部楼层 |阅读模式
[code:1]iptables 包检查顺序实验报告:

以ICMP包作为分析对象,使用loopback 测试
1.设置iptables,对个条链分别进行记录
[root@MagicLinux yuan]# iptables -L -t filter
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning ip-options prefix `[filter-INPUT]:'

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning ip-options prefix `[filter-OUTPUT]:'
[root@MagicLinux yuan]# iptables -L -t mangle
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning ip-options prefix `[mangle-PREROUTING]:'

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning prefix `[mangle-INPUT]:'

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning ip-options prefix `[mangle-OUTPUT]:'

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning ip-options prefix `[mangle-POSTROUTING]:'
[root@MagicLinux yuan]# iptables -L -t nat
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning prefix `[nat-PREROUTING]:'

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning prefix `[nat-POSTROUTING]:'

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
LOG        icmp --  MagicLinux           anywhere            LOG level warning prefix `[nat-OUTPUT]:'


2.查看/proc/kmsg 的记录情况确定包在iptables 中的流向
必须先在一个终端对 /proc/kmsg 进行监听,然后在另一个终端输入ping -c 1 127.0.0.1,这样就会在前面监听kmsg的终端取得监听结果。
[root@MagicLinux proc]# ping -c 1 127.0.0.1
[root@MagicLinux proc]# cat kmsg
<4>[mangle-OUTPUT]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[nat-OUTPUT]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[filter-OUTPUT]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[mangle-POSTROUTING]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[nat-POSTROUTING]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0

<4>[mangle-PREROUTING]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[mangle-INPUT]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0
<4>[filter-INPUT]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0DF PROTO=ICMP TYPE=8 CODE=0 ID=24846 SEQ=0

<4>[mangle-OUTPUT]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0
<4>[filter-OUTPUT]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0
<4>[mangle-POSTROUTING]:IN= OUT=lo SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0

<4>[mangle-PREROUTING]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0
<4>[mangle-INPUT]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0
<4>[filter-INPUT]:IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=43590 PROTO=ICMP TYPE=0 CODE=0 ID=24846 SEQ=0




从实验数据表明,ICMP包在iptables的中流向为:

                                                 OUT
                                              ^
                                              |
                                   [nat-POSTROUTING]
                                                ^
       IN                                      |
                                       [mangle-POSTROUTING]
        |                                       ^
       V                                       |
[mangle-PREROUTING]                   [filter-OUTPUT]
        |                                       ^
       V                                       |
[mangle-INPUT]                             [nat-OUTPUT]
        |                                        ^
       V                                        |
[filter-INPUT]                       [mangle-OUTPUT]
        |                                        ^
       V                                        |
--------------------------------------------------------   
|                 本机程序                                       |
--------------------------------------------------------


不过nat表的PREROUTING 在这里并没有介入检查。根据此ICMP包的走向,基本可以推断其他包的在IPTABLES中的流向。以上实验供大家参考。
mangle->nat->filter
albatross
2005.4.23 22:16[/code:1]
发表于 2005-4-26 10:43:57 | 显示全部楼层
够好
怎么没人顶呀
回复

使用道具 举报

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

本版积分规则

GMT+8, 2025-2-22 17:20 , Processed in 0.021879 second(s), 15 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

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