设有一台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 -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 -j LOG --log-prefix "<--my GO ON-->"
#设置OUTPUT链的默认处理策略为DROP
iptables -P OUTPUT DROP
#在OUTPUT链中追加一条规则,放行协议为TCP且源端口为80的数据包
iptables -A OUTPUT -p tcp --sport -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链)的数据包的限制

iptables练习题(四)的更多相关文章

  1. Linux对外提供服务 网络操作 端口操作 1.开启服务监听端口 2.设置防火墙,放行访问端口的包 iptables&netfilter 四表五链和通堵策略

    主题: Linux服务器上软件提供服务 1.网络操作 2.端口操作 1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机) 2.端口操作 1.开启服务监听端口 2.设置防火墙,放行访问 ...

  2. IPtables 之“四表五链”

    目录 架构图 IP tables 简介 包过滤防火墙 Iptables如何过滤 "四表" "五链" Iptables流程 架构图 公司架构模式(酒店迎宾比喻) ...

  3. iptables的四表五链

    iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables.真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构. iptables包含4个表, ...

  4. iptables(四)iptables匹配条件总结之一

    经过前文的总结,我们已经能够熟练的管理规则了,但是我们使用过的"匹配条件"少得可怜,之前的示例中,我们只使用过一种匹配条件,就是将"源地址"作为匹配条件. 那么 ...

  5. python3练习题四

    循环 题目: 答案: #!/usr/bin/env python3 #-*- coding:utf-8 -*- L = ['Bart', 'Lisa', 'Adam'] for i in L: pri ...

  6. iptables详解(2):四表五链

    关于iptables中“四表五链”,我们今天来好好唠唠: 1.表的概念: 我们把具有相同功能的规则的集合叫做"表",所以说,不同功能的规则,我们可以放置在不同的表中进行管理,而ip ...

  7. 第三十四章 Linux常规练习题(一)参考答案

    一.练习题一 1.超级用户(管理员用户)提示符是___#_,普通用户提示符是___$_. 2.linux关机重启的命令有哪些 ? 关机命令 重启命令 shutdown -h now shutdown ...

  8. iptables原理

    1.iptables防火墙简介 Iptables也叫netfilter是Linux下自带的一款免费且优秀的基于包过滤的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入.流出.流经服务器的数据包进 ...

  9. iptables日志探秘

    iptables日志探秘 防火墙的主要功能除了其本身能进行有效控制网络访问之外,还有一个很重要的功能就是能清晰地记录网络上的访问,并自动生成日志进行保存.虽然日志格式会因防火墙厂商的不同而形态各异,但 ...

随机推荐

  1. Flask 安装 快速入门

    $ pip install flask Flask自带的Server在端口5000上监听: ython app.py flask通过request.form['name']来获取表单的内容. 外部可见 ...

  2. PHP输出javascript,alert中文乱码解决办法

    echo '<html><head><meta http-equiv="Content-Type" content="text/html; ...

  3. CSS3自定义滚动条样式 -webkit-scrollbar (一)

    Webkit支持拥有overflow属性的区域,列表框,下拉菜单,textarea的滚动条自定义样式.当然,兼容所有浏览器的滚动条样式目前是不存在的. 滚动条的组成: ::-webkit-scroll ...

  4. C++ 类模板二(类模版与友元函数)

    //类模版与友元函数 #include<iostream> using namespace std; template<typename T> class Complex{ p ...

  5. hdu1027(n个数的按字典序排列的第m个序列)

    题目信息:给出n.m,求n个数的按字典序排列的第m个序列 http://acm.hdu.edu.cn/showproblem.php? pid=1027 AC代码: /**  *全排列的个数(次序) ...

  6. Oracle性能监控脚本(sql)

    1. 监控事例的等待 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) ...

  7. JavaScript格式化日期输出

     JavaScript Code  12345678910111213141516171819202122232425262728   <script>     window.onload ...

  8. web.config配置文件中的configSource属性

    每个网站里都会有一个web.config文件.修改Web.config文件会导致IIS重启,就是随意的回车一下也会导致重启.微软建议,不要将需要修改的配置内容保存在web.config中.而是单独放在 ...

  9. WHERE字句

    structured query language(非过程性的结构查询语言) 主要内容: 数据库怎么限制里面的数据: 数据库怎么排列里面的数据. WHERE子句: --WHERE字句起到的是对数据库查 ...

  10. Linux查看网络和IO性能问题

    Linux上使用iftop可以查看网络使用情况,使用iotop可以查看磁盘io使用情况 首先需要安装iftop和iotop: yum install iftop yum install iotop = ...