Username: Password:

Linux防火墙入门:基本观念
来源:linux宝库作者:linux宝库 发布时间:2007-09-30 00:00:00


  以下介绍防火墙入门时,所需要的一些基本观念。

  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)

  第一种比第二种安全,在设定上比较单纯。但第二种,比较容易使用,唯较容易忽略了某些考量。

  

喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅