zoukankan      html  css  js  c++  java
  • iptables练习题(四)

    设有一台Linux服务器,利用iptables作为防火墙,要求新建一条名为MYCHAIN的新链,来实现只允许开放本机的http服务,其余协议和端口均拒绝。

    脚本:

    [root@miyan ~]# cat newchain.sh 
    #!/bin/bash
    #清除filter表中规则
    iptables
    -F
    #删除filter表中自定义的链 iptables
    -X
    #自定义名字为MYCHAIN的链 iptables
    -N MYCHAIN
    #MYCHAIN链中追加一条规则,功能为接收协议为TCP且目标端口为80的数据包 iptables
    -A MYCHAIN -p tcp --dport 80 -j ACCEPT
    #在MYCHAIN链中追加一条规则,返回调用该链出的下一条规则。 iptables
    -A MYCHAIN -j RETURN

    #将INPUT链的默认处理策略设置为DROP
    iptables
    -P INPUT DROP
    #接收本机环回测试的数据包进入 iptables
    -A INPUT -i lo -j ACCEPT #在INPUT链中追加一条规则,功能为跳转到MYCHAIN链中去执行其中的规则
    iptables
    -A INPUT -j MYCHAIN
    #在INPUT链中追加一条规则,功能是将访问本机TCP端口22的数据包记录到日志中,并在日志中加入前缀"<--my GO ON-->" iptables
    -A INPUT -p tcp --dport 22 -j LOG --log-prefix "<--my GO ON-->" #设置OUTPUT链的默认处理策略为DROP
    iptables
    -P OUTPUT DROP
    #在OUTPUT链中追加一条规则,放行协议为TCP且源端口为80的数据包 iptables
    -A OUTPUT -p tcp --sport 80 -j ACCEPT iptables -L

    分析:(1)前两条规则清空filter表中所有的规则,并删除了所有自定义的链,设置一个干净的环境。

       (2)接下来的四条规则自定了一条链MYCHAIN,此时仅仅是定义了,并未发挥作用。

       (3)iptables -A INPUT -i lo -j ACCEPT开放本机环回测试网卡进入的数据包

       (4)iptables -A INPUT -j MYCHAIN来调用前面定义的链MYCHAIN,类似于函数调用。

       (5)当在MYCHAIN链中执行到“-j RETURN”时流程返回到调用处继续匹配主链的规则,将访问本机22端口的数据包计入到日志中/var/log/messages.

       (6)iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT设置了针对本机发出(OUTPUT链)的数据包的限制

  • 相关阅读:
    Building a Space Station POJ
    Networking POJ
    POJ 1251 Jungle Roads
    CodeForces
    CodeForces
    kuangbin专题 专题一 简单搜索 POJ 1426 Find The Multiple
    The Preliminary Contest for ICPC Asia Shenyang 2019 F. Honk's pool
    The Preliminary Contest for ICPC Asia Shenyang 2019 H. Texas hold'em Poker
    The Preliminary Contest for ICPC Asia Xuzhou 2019 E. XKC's basketball team
    robotparser (File Formats) – Python 中文开发手册
  • 原文地址:https://www.cnblogs.com/XYJK1002/p/5378847.html
Copyright © 2011-2022 走看看