马哥教育网络20期+第十四周课程练习

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

# iptables -P INPUT DROP
# iptables -P OUTPUT DROP

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

周一不允许访问

#iptables -A INPUT -p tcp --dport 80 -m time ! --weekdays Mon -j ACCEPT
#iptables -A OUTPUT -p tcp --dport 80 -m state --state ESTABLISHED -j ACCEPT

新请求速率不能超过100个每秒

# iptables -A INPUT -p tcp --dport 80 -m limit --limit 100/s

web包含admin字符串的页面不允许访问

# iptables -A INPUT -p tcp --dport 80 -m string --algo bm --string 'admin' -j REJECT

web服务器仅允许响应报文离开主机

# iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

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

# iptables -A INPUT -p tcp --dport 21 -s 172.16.0.0 -m time ! --weekdays 6,7  -m time --timestart 8:30 --timestop 18:00 -m limit --limit 5/m

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

# iptables -A INPUT -p tcp --dport 22 -m iprange --src-range 172.16.0.1-172.16.0.100 -m limit --limit 2/m
# iptables -A OUTPUT -p tcp --sport 22 -m iprange --dst-range 172.16.0.1-172.16.0.100 -m state --state ESTABLISHED -j ACCEPT

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

# iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

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

# iptables -A INPUT  -p icmp --icmp-type 0 -j ACCEPT
# iptables -A OUTPUT  -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

丢弃同网络的的icmp协议包

# 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

丢弃syn状态不为1且为NEW 的连接

# iptables -A clean_in -p tcp –tcp-flags ALL ALL -j DROP

丢弃所有tcp标志位为1的数据包

# iptables -A clean_in -p tcp –tcp-flags ALL NONE -j DROP

丢弃所有tcp标志位为0的数据包

# iptables -A clean_in -d 172.16.100.7 -j RETURN

如果是访问172.16.100.7的,就返回clean_in链

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

(1)
Net20_有马Net20_有马
上一篇 2016-11-14
下一篇 2016-11-14

相关推荐

  • sed & vim练习

    1、 删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符  2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符 3、在/root/install.log每一行行首增加#号 4、在/etc/fstab文件中不以#开头的行的行首增加#号 5、处理/etc/fstab路径,使用s…

    学员作品 2016-08-10
  • sed 流编辑器 练习

    8-9 sed 练习 1、删除/etc/grub2.conf文件中所有以空白开头的行行首的 空白字符 sed 's@^[[:space:]]@@g' /etc/grub2.conf  2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空 白字符的行的行首的#和空白字符 sed 's@^#[[:space:]]\{1…

    学员作品 2016-08-10
  • 2016/08/03:用户管理与权限

    名称解析:User IDentifier UID 组名:Group IDentifier GID                                     &nbsp…

    学员作品 2016-08-05
  • for,while,until循环

    一、用until实现下列作业 1、每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统。 #!/bin/bash until  who | grep "^\<hacker\>" > /var/log/l…

    学员作品 2016-08-22
  • 【惊爆】马哥linux2016最新全套课程(内部泄密版)

    你知道么,马哥linux2016最新全套课程(内部泄密版)被曝光了,小编刚刚得到消息,然后就给大家分享出来了,大家快来点评下,话说2016版课程如何?且听小编慢慢为你道来 全新内容,全新阵容,引入ELK和Docker内容,更加贴合生产环境应用,全新的Centos7搭载完善的实战实验室,强大的不像实力派,特别需要说明的一点:0首付0利率,机会不容错过!!! 高…

    学员作品 2015-10-21
  • Selinux的基本命令及练习

    配置SELinux 相关命令:       getenforce: 获取selinux当前状态       sestatus :查看selinux状态      &nbs…

    学员作品 2016-09-19

评论列表(1条)

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

    作业是不是没写全啊?