since2012/04/23

     
 
最近更新日期:2011/07/22

大标题的图示9.6 重点回顾
  • 要拥有一部安全的主机,必须要有良好的主机权限设定;随时的更新套件;定期的重要数据备份;完善的员工教育训练。 仅有防火墙是不足够的;
  • 防火墙最大的功能就是帮助你『限制某些服务的存取来源』,可以管制来源与目标的 IP ;
  • 防火墙依据封包抵挡的阶层,可以分为 Proxy 以及 IP Filter (封包过滤) 两种类型;
  • 在防火墙内,但不在 LAN 内的服务器所在网域,通常被称为 DMZ (非军事区),如图 9.1-4所示;
  • 封包过滤机制的防火墙,通常至少可以分析 IP, port, flag (如 TCP 封包的 SYN), MAC 等等;
  • 防火墙对于病毒的抵挡并不敏感;
  • 防火墙对于来自内部的网络误用或滥用的抵挡性可能较不足;
  • 并不是架设防火墙之后,系统就一定很安全!还是需要更新套件漏洞以及管制使用者及权限设定等;
  • 核心 2.4 以后的 Linux 使用 iptables 作为防火墙的软件;
  • 防火墙的订定与『规则顺序』有很大的关系;若规则顺序错误,可能会导致防火墙的失效;
  • iptables 的预设 table 共有三个,分别是 filter, nat 及 mangle ,惯用者为 filter (本机) 与 nat (后端主机)。
  • filter table 主要为针对本机的防火墙设定,依据封包流向又分为 INPUT, OUTPUT, FORWARD 三条链;
  • nat table 主要针对防火墙的后端主机,依据封包流向又分为 PREROUTING, OUTPUT, POSTROUTING 三条链, 其中 PREROUTING 与 DNAT 有关, POSTROUTING 则与 SNAT 有关;
  • iptables 的防火墙为规则比对,但所有规则都不符合时,则以预设政策 (policy) 作为封包的行为依据;
  • iptables 的指令列当中,可以下达的参数相当的多,当下达 -j LOG 的参数时,则该封包的流程会被纪录到 /var/log/messages 当中;
  • 防火墙可以多重设定,例如虽然已经设定了 iptables ,但是仍然可以持续设定 TCP Wrappers ,因为谁也不晓得什么时候 iptables 会有漏洞~或者是规则规划不良!

大标题的图示9.7 本章习题
  • 为什么我架设了防火墙,我的主机还是可能中毒?
    防火墙不是万灵丹,他还是可能被病毒或者是木马程序所入侵的! 此外,如果你的主机本身就已经提供了多个网络服务,则当该网络服务的软件有漏洞时, 防火墙仍然无法克服该服务的漏洞的!因此仍然需要持续的进行主机的监视与后端分析工作
  • 请说明为何架设了防火墙,我的主机还是可能被入侵?入侵的依据可能是什么方法?
    因为防火墙仅是抵挡某些不受欢迎的封包,如果你有开放 WWW 的服务时,则要求你主机 port 80 的封包将可直接进入你的主机,万一 WWW 套件有漏洞时,那么就可能被入侵了!所以软件的更新很重要!
  • 我们知道核心为 2.6 的 Linux 使用的防火墙机制为 iptables ,请问,如何知道我的 Linux 核心版本?
    利用 uname -r 可以查得!
  • 请列出 iptables 预设的两个主要的 table ,以及各个 table 里面的 chains 与各个 chains 所代表的意义;
    filter 为预设的 Table,里头预设的链有:
    • INPUT:为来自外部,想要进入主机的封包;
    • OUTPUT:为来自主机,想要离开主机的封包;
    • FORWARD:为主机内部网域与外部网域的封包(不论进或者出),但该封包不会进入主机。
    还有 nat 这个 table:
    • PREROUTING:进行路由之前的封包传送过程
    • OUTPUT:离开主机的封包传送过程;
    • POSTROUTING:已经经过路由了,然后才进行的过滤规则。
  • 什么是 iptables 的预设政策 (Policy)?若我要针对 filter 的 INPUT 做成 DROP 的默认政策,指令如何下达?
    当封包的所有属性都不在防火墙的规则当中时,那么这个封包能否顺利的通过防火墙,则以 Policy 作为这个封包的最终动作了!
    iptables -P INPUT DROP
  • 假设今天我的 Linux 仅是作为 Client 之用,并没有对 Internet 进行任何服务, 那么你的防火墙规划应该如何设定比较好?
    既然没有对 Internet 提供任何服务,那么(1)请将所有的对外埠口先关闭吧!(2)防火墙规则当中,最重要的是 INPUT 的 Policy 一定要 DROP ,然后将『 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 』即可!
  • 我要将来自 192.168.1.50 这个 IP 来源的封包,只要是向我的 21~23 埠口要求的封包,就将他抵挡,应该如何下达 iptables 指令?
    iptables -A INPUT -p tcp -s 192.168.1.50 --dport 21:23 -j DROP
  • 我要将我自己主机 ping 的响应功能取消,应该如何下达 iptables 的指令?
    因为 ping 能否响应用的是 icmp 的 type 8 (请参考网络基础内的 ICMP 相关内容),所以我可以这样做:
    iptables -I INPUT -p icmp --icmp-type 8 -j DROP
  • 请说明为何这个指令是错误的?『iptables -A INPUT -p udp --syn -s 192.168.0.20 -j DROP』?
    因为只有 TCP 封包才会具有 SYN 的标志, UDP 并没有 SYN 的标志啊!所以上面的指令是错误的
  • DNS 的要求是必须的,那么我该如何设定我的主机可以接受要求 DNS 的响应呢?
    因为 DNS 的来源是 port 53 ,因此要接受来自 port 53 的封包就成为了:
    iptables -A INPUT -p udp --sport 53 -j ACCEPT
    iptables -A INPUT -p tcp --sport 53 -j ACCEPT
  • 如何取消 iptables 在我的系统上面?
    先要清除规则后,才能够将 iptables 移除!不过,我们主要将规则清除即可!
    iptables -F; iptables -X; iptables -Z
    iptables -t nat -F; iptables -t nat -X; iptables -t nat -Z
  • 如何储存目前的防火墙机制,以及如何将上次储存下来的机制回复到目前的系统中?
    请利用 iptables-save 以及 iptables-restore 这两个指令,配合命令重导向即可! 也可以使用 /etc/init.d/iptables save 来储存喔!
  • 如果你的区网当中有个 PC 使用者老是连上 Internet 乱搞,你想要将他的 IP 锁住,但他总是有办法修改成其他 IP 来连外, 那你该怎么办?让他无法继续连外?
    可以利用封锁网络卡卡号 MAC 来处理!

大标题的图示9.8 参考数据与延伸阅读

 
     
http://linux.vbird.org is designed by VBird during 2001-2011. ksu.edu 

本网页主要以Firefox配合解析度 1024x768 作为设计依据     鸟哥自由软件整合应用研究室