马哥教育网络班第22期+第14周作业

week14:
系统的INPUT和OUTPUT默认策略为DROP;
1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;
web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机;
2、在工作时间,即周一到周五的8:30-18:00,开放本机的ftp服务给172.16.0.0网络中的主机访问;
数据下载请求的次数每分钟不得超过5个;
3、开放本机的ssh服务给172.16.x.1-172.16.x.100中的主机,x为你的座位号,新请求建立的速率一分钟不得超过2个;
仅允许响应报文通过其服务端口离开本机;
4、拒绝TCP标志位全部为1及全部为0的报文访问本机;
5、允许本机ping别的主机;但不开放别的主机ping本机;
6、判断下述规则的意义:
  # iptables -N 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
  # iptables -A clean_in -p tcp ! --syn -m state --state NEW -j DROP
  # iptables -A clean_in -p tcp --tcp-flags ALL ALL -j DROP
  # iptables -A clean_in -p tcp --tcp-flags ALL NONE -j DROP
  # iptables -A clean_in -d 172.16.100.7 -j RETURN 
  # iptables -A INPUT -d 172.16.100.7 -j clean_in
  # iptables -A INPUT  -i lo -j ACCEPT
  # iptables -A OUTPUT -o lo -j ACCEPT
  # iptables -A INPUT  -i eth0 -m multiport -p tcp --dports 53,113,135,137,139,445 -j DROP
  # iptables -A INPUT  -i eth0 -m multiport -p udp --dports 53,113,135,137,139,445 -j DROP
  # iptables -A INPUT  -i eth0 -p udp --dport 1026 -j DROP
  # iptables -A INPUT  -i eth0 -m multiport -p tcp --dports 1433,4899 -j DROP
  # iptables -A INPUT  -p icmp -m limit --limit 10/second -j ACCEPT
7、通过tcp_wrapper控制vsftpd仅允许172.16.0.0/255.255.0.0网络中的主机访问,但172.16.100.3除外;
对所被被拒绝的访问尝试都记录在/var/log/tcp_wrapper.log日志文件中;

题目1
环境:
    # iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    # iptables -A OUTPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
    # iptables -p INPUT DROP
    # iptables -p OUTPUT DROP
    # iptables -A INPUT  -i eth0 -p tcp --dport 80 -m time --weekdays Mon  -m limit --limit 100/second  
    -m string --algo bm --string "admin" -j DROP
    # iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT

题目2:
    # iptables -A INPUT -s 172.16.0.0 -p tcp -m multiport --dports 20,21 -m time --weekdays 1,2,3,4,5 
    --timestart 08:30:00 --timestop 18:00:00 -m limit --limit-burst 5 -m state --state NEW -j ACCEPT

题目3:
    # iptables -A INPUT -p tcp --dport 22 -m iprange --src-range 172.16.0.1-172.16.0.100 -m limit 
    --limit 2/minute -m state --state NEW -j ACCEPT
    # iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state RELATED -j ACCEPT

题目4:
    # iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
    # iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

题目5:
    # iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
    # iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT

题目6:
    (1)新建一条自定义链:clean_in;
    (2)添加规则:丢弃广播包;
    (3)添加规则:丢弃对于172.16.255.255地址的icmp包;
    
    (4)添加规则:丢弃syn标志位不为1的新建立的tcp包;
    (5)添加规则:丢弃tcp标志位全为1的包;
    (6)添加规则:丢弃tcp标志位全为0的包;
    (7)添加规则:对于目的地址为172.16.100.7的包返回到默认规则链;
    
    (8)添加规则:INPUT链中对于目的地址为172.16.100.7的包交由clean_in链进行处理;
    
    (9)添加规则:在INPUT链中允许对于目的地址为回环口的报文;
    (10)添加规则:在OUTPUT链中允许对于来自于回环口的报文;
    
    (11)添加规则:在INPUT链中,流入接口为eth0的tcp报文中拒绝对于53,113,135,137,139,445端口的访问;
    (12)添加规则:在INPUT链中,流入接口为eth0的udp报文中拒绝对于53,113,135,137,139,445端口的访问;
    (13)添加规则:在INPUT链中,流入接口为eth0的udp报文中拒绝对于1026端口的访问;
    (14)添加规则:在INPUT链中,流入接口为eth0的tcp报文中拒绝对于1433,4899端口的访问;
    
    (15)添加规则:在INPUT链中,接收每秒不超过10次的icmp报文请求;

题目7:
    在/etc/hosts.allow文件中,添加:
    vsftpd:172.16.0.0/255.255.0.0 EXCEPT 172.16.100.3
    在/etc/hosts.deny文件中,添加:
    vsftpd:ALL:spawn /bin/echo "`date`: %c try to login %s %d" >> /var/log/tcp_wrapper.log

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

(0)
devondevon
上一篇 2016-12-12 10:50
下一篇 2016-12-12 10:50

相关推荐

  • 关于大型网站技术演进的思考(二):存储的瓶颈(2)

    原文出处: 夏天的森林   上篇里我讲到某些网站在高并发下会报出503错误,503错误的含义是指网站服务端暂时无法提供服务的含义,503还表达了网站服务端现在有问题但是以后可能会提供正常的服务,对http协议熟悉的人都知道,5开头的响应码表达了服务端出现了问题,在我们开发测试时候最为常见的是500错误,500代表的含义是服务端程…

    2015-03-11
  • GREP命令学习笔记

    GREP命令,全称:Global search REgular expression and Print out the line. 是一个非常强大的文本搜索命令,与SED(stream editor,文本编辑工具)和AWK(文本分析、报告生成器)并称文本处理三剑客。 一.GREP命令基本使用格式 grep [OPTIONS] PATTERN [FILE&#…

    Linux干货 2016-06-22
  • CentOS系统详解(启动流程、kickstart)&bash脚本编程之while/函数用法

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区; (1) 为硬盘新建两个主分区;并为其安装grub; (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个分区提供rootfs; (3) 为rootfs提供bash、ls、cat程序及所依赖的库文件…

    Linux干货 2016-11-28
  • N21-第二周博客

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理命令有复制、删除与移动:cp,mv,rm cp(复制档案或目录) [root@study ~]# cp [-adfilprsu] 源(source) 目标(destination) [root@study ~]# cp [options] source1 source2 s…

    Linux干货 2016-07-16
  • VSFTP通过pam_mysql插件创建进行基于mysql的虚拟用户

      1、对pam_mysql-0.7RC1包进行编译安装 编译安装环境配置 编译安装所需的包如下: ~]#yum -y groupinstall "Development Tools" "Server Platform Development" ~]#yum -y install mariadb-server…

    Linux干货 2016-11-14
  • Linux运维之基础拾遗

    博客具体内容请移步博客园: http://www.cnblogs.com/ITOps/p/6151766.html

    Linux干货 2016-12-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-14 10:12

    博客完成的非常好,答案是不是放错了呢?细心,加油!