马哥教育网络班21期+第14周课程练习

系统的INPUT和OUTPUT默认策略为DROP;

1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机;

INPUT链

# iptables -I INPUT 1 -p tcp --dport 80 -m connlimit ! --connlimit-above 100 -m time ! --weekdays Mon -j ACCEPT

OUTPUT链

# iptables  -I OUTPUT 1 -p tcp --sport 80 -m string --string "admin" --algo kmp -j REJECT

#iptables -I OUTPUT 2 -m state --state ESTABLISHED,RELATED -j ACCEPT

2、在工作时间,即周一到周五的8:30-18:00,开放本机的ftp服务给172.16.0.0网络中的主机访问;数据下载请求的次数每分钟不得超过5个;

INPUT链

# iptables -I INPUT 1 -s 172.16.0.0/16 -p tcp --dport 21 -m connlimit ! --connlimit-above 5 -j ACCEPT

OUTPUT链

# iptables -I OUTPUT 1 -m state --state ESTABLISHED,RELATED -j ACCEPT

3、开放本机的ssh服务给172.16.x.1-172.16.x.100中的主机,x为你的座位号,新请求建立的速率一分钟不得超过2个;仅允许响应报文通过其服务器端口离开本机;

INPUT链

# iptables -I INPUT 1 -p tcp --dport 22 -m iprange --src-range 172.16.53.1-172.16.53.100 -mlimit --limit 2/minute -j ACCEPT

OUTPUT链

# iptables -I OUTPUT 1 -m state --state ESTABLISHED,RELATED -j ACCEPT

4、拒绝tcp标志位全部为1及全部为0的报文访问本机;

INPUT链

# iptables -I INPUT 1 -p tcp --tcp-flags ALL ALL -j DROP
# iptables -I INPUT 2 -p tcp --tcp-flags ALL -j DROP

5、允许本机ping别的主机;但不开放别的主机ping本机;

INPUT链

# iptables -I INPUT 1 -p icmp --icmp-type 0 -j ACCEPT

OUTPUT链

# iptables -I OUTPUT 1 -p icmp --icmp--type 8 -j ACCEPT

6、判断下列规则的意义:

# iptables -N clean_in
新建一条自定义链“clean_in”
# iptables -A clean_in -d 255.255.255.255 -p icmp -j DROP
# iptables -A clean_in -d 172.16.255.255 -p icmp -j DROP 
丢弃所有同一物理网段或子网及172.16网络的icmp

# iptables -A clean_in -p tcp ! --syn -m state --state NEW -j DROP 
丢弃tcp标记除syn以外所有连接状态为新建的数据包
# iptables -A clean_in -p tcp --tcp-flags ALL ALL -j DROP
# iptables -A clean_in -p tcp --tcp-flags ALL NONE -j DROP
防止tcp NULL扫描
# iptables -A clean_in -d 172.16.100.7 -j RETURN
停止执行当前链中目标地址为172.16.100.7的后续Rules,并返回到调用链中

原创文章,作者:Jeason,如若转载,请注明出处:http://www.178linux.com/58302

(0)
JeasonJeason
上一篇 2016-11-14
下一篇 2016-11-14

相关推荐

  • 磁盘、文件系统管理

    linux磁盘、文件系统管理 硬盘:机械硬盘、固态硬盘     计算硬盘速度:IoPs:(Io  per  second ) 每秒20次 机械硬盘:     track:磁道     平均寻道时间  &nbsp…

    Linux干货 2016-08-25
  • 21期第一周网络练习作业

    计算机的组成部分及功能 由运算器、控制器、存储器、输入设备和输出设备组成 其中运算器负责数据的算术运算和逻辑运算,即数据的加工处理;   控制器负责对控制信息进行分析,控制并协调输入、输出操作或内存、外存访问;   存储器用来存放计算程序及参与运算的各种数据,实现类似人脑记忆功能的部件,分为内存和外存;  &…

    Linux干货 2016-07-12
  • GRUB Legacy&Trouble Shooting

    GRUB (Grand Unified Bootloader)        位于系统引导盘的MBR中的Boot Loader。        GRUB是一个来自GNU项目的启动引导程序。GRUB是多启动规范的实现,它允…

    Linux干货 2016-09-13
  • awk学习笔记

        awk是一种模式扫描和处理工具,相对于grep的查找,sed的编辑,它在对数据进行分析生成报表时显得尤为强大。awk通过逐行遍历一个或多个文件的方式,查找模式匹配到的行,而后以指定的分隔符(缺省为空格)进行切片,然后针对切片数据进行处理和分析。事实上,gawk有自己的语言,其本身就相当于一个解释器,允许用户创建…

    Linux干货 2015-08-04
  • 学习笔记–文本处理工具

    Linux下有很多文本处理工具,本文将介绍几款比较常用的文本处理工具,比如对文本查看的工具:cat和less,文本截取工具:head和tail,按列抽取文本工具:cut,按关键字查询文本工具:grep,下面将具体介绍各种工具的使用。 1、文本查看命令cat 用法: cat [OPTION]… [FILE]… cat命令一次性…

    Linux干货 2016-08-07
  • Android必备的Java知识点

     Android应用程序开发是以Java语言为基础的,所以需要有扎实的Java基础知识。首先熟悉java基本语法,然后熟悉设计模式等。         a) Java基础语法:看下面的《Java知识点列表》       b)设计模式:由于在Android系统的框架层当中,使用了大…

    Linux干货 2015-04-08

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-16 15:48

    写的很好, 期待你以后的佳作