当前位置导航:炫浪网>>网络学院>>操作系统>>Linux教程

Linux 防火墙入门:基本观念


  以下介绍防火墙入门时,所需要的一些基本观念。
  TCP/IP
  Figure 2. TCP/IP 四层架构
   
  封包过滤
  所谓封包过滤,是一种小软件,它藉以检查 IP 封包的表头,来决定该封包的命运(接受/转向/丢弃/拒绝)。在 Linux 中,封包过滤的功能,已整合进入 Linux 核心(kernel)之中。
  如何得知核心目前是有支持封包过滤功能呢?
  查看此檔 /proc/net/ip_fwchains 是否存在便知(适用 Linux kernel 2.1.x~2.x)。
  若此檔不存在,则核心必须重新制作,打开封包过滤选项,重新编译安装之。
  IP 封包,如下图所示:
  Figure 3. IP 封包
   
  Figure 4. TCP 封包
   
  封包过滤程序,即根据 IP 封包的表头中的来源IP、目的IP、封包型态、取自TCP/UPD表头的 port 及其它一些旗标信息,来决定此封包最后的命运。
  至目前为止,Linux 核心封包过滤已发展到了第四代:
  第 1 代 : Linux 1.x 移植自 BSD 的 ipfw第 2 代 : Linux 2.0 ipfwadm第 3 代 : Linux 2.1~2.x ipchains第 4 代 : Linux 2.4~ iptables
  服务信道 (Service Ports)
  所谓服务信道(port)是指:主机中应用程序对外服务的管道。
  port 的范围从 0 到 65535。1~1023 保留给系统专用,仅有 root 权限者才能使用,称之为:privileged ports (特权信道)。1024 ~ 65535 则称为 unprivileged ports (非特权信道)。
  非特权信道有二种用途:
  · 开放给系统中其它应用服务程序使用,如 mysql 用 3306, X11 用 6000。
  · 当使用 client 端程序(如 ssh),连接到其它 server 主机的服务时(如 ssh server),系统会在 1024 ~ 65535 中,随机抽出一个未被占用的 port,指定给 client 联机端,来当作 client 端这边的通讯 port,此时 client端的IP、port 以及 server端的IP、port,四者形成联机时唯一的连结识别,当双方完成联机所需的沟通时,我们说:client 端和 server 端的联机,已经建立(ESTABLISHED)。(我们称这四者形成一组 socket pair。)
  如下图所示:
  Figure 5. client 和 server 联机图 (1)
   
  Figure 6. client 和 server 联机图 (2)
   
  常见的服务信道
  Table 1. port list
   
  IANA : port 的完整定义
  IANA port numbers
  封包的种类
  有三种 IP 封包,我们称之为 IP 网络讯息。这三种封包,正是封包过滤型防火墙所要专注的对象。它们各有不同的特性,如下所示:
  · ICMP (network layer / IP control / status messages)
  · UDP (request / response)
  · TCP (syn, syn/ack, ack 三向交握)
  其过程,如下图所示。
  Figure 7. ICMP ping and pong
  
   
  Figure 8. UDP request/response
   
  Figure 9. TCP 三向交握
   
  私有 IP 空间
  RFC 1918 里规定了三段范围的 IP,供私有网络(private network)实验用途使用,在公开的网络上它们不会被路由,正因为这种特性,因此极适合拿它们当作内部网络的 IP,从而达到保护内部网络的目的。列出如下:
  · Class A : 10.0.0.0/8 (整个 10.0.0.0 的 A Class 的 IP,约 1 千 6 百多万个可用 IP
  · Class B : 172.16.0.0/12 (共 16 个 B Class 的 IP,由 172.16.0.0 ~ 172.31.0.0,约一百万个可用 IP)
  · Class C : 192.168.0.0/16 (共有 255 个 C Class 的 IP,即:192.168.1.0 ~ 192.168.255.0,约 65000 个可用 IP
  NAT
  何谓 NAT ?
  NAT 的 Network Address Translation 的简称,简单来说,它是一种转换地址的技术,经常运用在防火墙的建置上,使得内部的私有 IP,转换成公开的 IP,而能和外界沟通。
  IDS
  何谓 IDS ?
  IDS 是 Intrusion detection system 的简称(入侵侦测系统),它是一种监测封包进出、比对入侵型态、预防入侵攻击,并能适时提出警告的防御系统。
  OLS3 推荐的 IDS 是 Snort,不输商用专业级的入侵侦测系统。
  Figure 10. 可爱的 Snort
  
  DMZ
  何谓 DMZ ?
  DMZ 是 De-militarized zone 的简称(非军事区),它是内部网络(军事区)和外部网络之间的一小段网络,该区可受 IDS 的侦测保护,亦可受防火墙的监控,或受其它安全机制的检测,有一点接近公开的网段,但却可以受到整个防火墙系统的保护。
  封包过滤预设政策(Default Packet-Filtering Policy)
  有二种预设的政策,设定防火墙时,要选择使用那一种。
  1. 丢弃所有,欲放行,需用设定将它打开。(deny-everything policy)
  2. 接受所有,欲丢弃,需用设定将它关闭。(accept-everything policy)
  第一种比第二种安全,在设定上比较单纯。但第二种,比较容易使用,唯较容易忽略了某些考量。
  
相关内容
赞助商链接