不熟 iptables,请 V 友帮我看看? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
win7pro
V2EX    Linux

不熟 iptables,请 V 友帮我看看?

  •  
  •   win7pro 2019-07-17 16:48:36 +08:00 4538 次点击
    这是一个创建于 2366 天前的主题,其中的信息可能已经有所发展或是发生改变。
    下面这段 iptable 设置,input 这组默认是 policy DROP,但最后一行“ ACCEPT all -- anywhere anywhere ”是不是意思就全部都允许通过了?等于上面的都白配置了是吗?
    不熟 iptables,求指教。

    ----------------------

    Chain INPUT (policy DROP)
    target prot opt source destination
    ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
    ACCEPT tcp -- anywhere anywhere tcp dpt:http
    ACCEPT tcp -- anywhere anywhere tcp dpt:https
    ACCEPT tcp -- anywhere anywhere tcp dpt:28888
    ACCEPT all -- anywhere anywhere

    Chain FORWARD (policy DROP)
    target prot opt source destination

    Chain OUTPUT (policy ACCEPT)
    target prot opt source destination
    ACCEPT all -- anywhere anywhere
    第 1 条附言    2019-07-17 17:40:08 +08:00
    抱歉,我没描述清楚,我的疑惑是:INPUT 这一组的最后一行 ACCEPT all -- anywhere anywhere 是不是实际上允许了外网所有请求过来的所有端口都允许访问了呢?
    19 条回复    2019-07-18 13:17:51 +08:00
    qbqbqbqb
        1
    qbqbqbqb  
       2019-07-17 17:16:21 +08:00
    后面还有“ state RELATED,ESTABLISHED ”的限定呢。这个是允许已经建立的连接的封包通过。比如防护墙内侧用户使用浏览器 HTTP ( tcp,客户端随机端口,服务端 80 端口)上网,服务器的回应包就会被这条规则放行。
    qbqbqbqb
        2
    qbqbqbqb  
       2019-07-17 17:24:10 +08:00
    如果没有这条规则的话,防火墙后面的机器就统统“上不了网”了,因为下面的几条规则只放行了 80,443,28888 三个端口,而一般客户端软件都是使用随机端口的。添加这条规则可以实现“由内向外发起的连接不受限制”的目的。
    tankren
        3
    tankren  
       2019-07-17 17:27:15 +08:00   1
    有规则顺序的
    qbqbqbqb
        4
    qbqbqbqb  
       2019-07-17 17:27:48 +08:00   1
    对不起,刚才看错了,说的是第一行

    最后一行还确实是全部允许通过,看起来确实像是配置错误。也可能是使用了某些 GUI 的防火墙配置软件,误将设置“默认规则”设为了“允许”,据我所知,某些配置软件的“默认规则”是加在最后的。
    win7pro
        5
    win7pro  
    OP
       2019-07-17 17:37:02 +08:00
    @qbqbqbqb 感谢,看来的确要把 input 的最后一行干掉~
    win7pro
        6
    win7pro  
    OP
       2019-07-17 17:38:29 +08:00
    @qbqbqbqb 抱歉,我没描述清楚,我的疑惑是:input 的最后一行 ACCEPT all -- anywhere anywhere 是不是等于外网访问进来的请求全部都放行了呢?
    defunct9
        7
    defunct9  
       2019-07-17 17:44:08 +08:00   1
    iptables -L -n
    julyclyde
        8
    julyclyde  
       2019-07-17 17:57:53 +08:00   1
    不要看 iptables -L,因为显示的内容不全
    要看 iptables-save (注意没有空格,是连续的)
    win7pro
        9
    win7pro  
    OP
       2019-07-17 18:05:39 +08:00
    @julyclyde 这个样子滴

    # Generated by iptables-save v1.4.7 on Wed Jul 17 06:04:28 2019
    *filter
    :INPUT DROP [253698:14633144]
    :FORWARD DROP [0:0]
    :OUTPUT ACCEPT [7431660:14180627739]
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 28888 -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A OUTPUT -o lo -j ACCEPT
    COMMIT
    # Completed on Wed Jul 17 06:04:28 2019
    razaura
        10
    razaura  
       2019-07-17 18:11:14 +08:00   1
    omph
        11
    omph  
       2019-07-17 18:13:25 +08:00   1
    iptables -vnL 才比较全
    最后一行是允许环回接口的,不要删
    win7pro
        12
    win7pro  
    OP
       2019-07-17 18:19:01 +08:00
    @omph

    Chain INPUT (policy DROP 254K packets, 15M bytes)
    pkts bytes target prot opt in out source destination
    13M 7554M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
    457K 26M ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
    28971 1579K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
    508 30316 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:28888
    354K 21M ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0

    Chain FORWARD (policy DROP 0 packets, 0 bytes)
    pkts bytes target prot opt in out source destination

    Chain OUTPUT (policy ACCEPT 7438K packets, 14G bytes)
    pkts bytes target prot opt in out source destination
    4684K 6751M ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
    win7pro
        13
    win7pro  
    OP
       2019-07-17 18:20:28 +08:00
    感谢各位。我是希望外网访问服务器只保留端口 80,443,28888 ( ssh 用),其余外网访问进来的全部拒绝。
    tankren
        14
    tankren  
       2019-07-17 21:13:10 +08:00 via Android   1
    根据 pfsense 的情况 是先允许你这几个端口 然后别的全部阻止
    izoabr
        15
    izoabr  
       2019-07-18 00:00:55 +08:00   1
    先看默认策略,然后看最后一条策略。
    默认策略不允许通过,但是最后一条是所有都过了,相当于把默认策略给干了。
    所以 INPUT 链最后的结果是允许任何来源,任何协议,任何端口,去任何地方。
    omph
        16
    omph  
       2019-07-18 01:33:51 +08:00   1
    已经很清楚了

    Chain INPUT (policy DROP)
    ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0

    Chain OUTPUT (policy ACCEPT)
    ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0

    lo 就是环回接口( loopback ),这两条规则允许这个接口所有方向的流量
    win7pro
        17
    win7pro  
    OP
       2019-07-18 12:13:30 +08:00
    @omph 所以,我要把 -A INPUT -i lo -j ACCEPT 这一行删掉对吗:)

    # Generated by iptables-save on Wed Feb 13 14:01:07 2019
    *filter
    :INPUT DROP [8:632]
    :FORWARD DROP [0:0]
    :OUTPUT ACCEPT [4:416]
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 28888 -j ACCEPT
    #是下面这一行删掉就 O 了吗?#
    -A INPUT -i lo -j ACCEPT
    #是上面这一行删掉就 O 了吗?#
    -A OUTPUT -o lo -j ACCEPT
    COMMIT
    # Completed on Wed Feb 13 14:01:07 2019
    izoabr
        18
    izoabr  
       2019-07-18 12:31:54 +08:00   1
    @win7pro #17 不好意思,我也粗心看错了,最后一行的 any 是有 lo 限定的,-o lo 的意思是从 lo 端口出去的放行,所以还是有包能匹配到默认的 DROP 策略的。
    win7pro
        19
    win7pro  
    OP
       2019-07-18 13:17:51 +08:00
    @izoabr 谢谢,那这个 iptables 设置不用改了,哈哈
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     944 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 20ms UTC 21:20 PVG 05:20 LAX 13:20 JFK 16:20
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86