武装到“芯”里 Linux操作系统安全初探(2)

来源:zol 作者:王宪阁
  

  也许你会说,Windows操作系统里不也内置了防火墙,Linux系统内置防火墙有什么特殊之处。其实,iptables不仅仅是一个防火墙,而且即便是一个防火墙,它与我们常见的Windows操作系统下的防火墙相比,更加的专业性能更强大。

  iptables是与Linux内核集成的IP信息包过滤系统,如果Linux系统连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该系统有利于在Linux系统上更好地控制IP信息包过滤和防火墙配置。

  netfilter/iptables IP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。

  虽然netfilter/iptables IP信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter和iptables组成。

  netfilter组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。

  iptables组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。除非您正在使用 Red Hat Linux 7.1 或更高版本,否则需要下载该工具并安装使用它。

  netfilter/iptables 的最大优点是它可以配置有状态的防火墙,这是 ipfwadm 和 ipchains 等以前的工具都无法提供的一种重要功能。有状态的防火墙能够指定并记住为发送或接收信息包所建立的连接的状态。防火墙可以从信息包的连接跟踪状态获得该信息。在决定新的信息包过滤时,防火墙所使用的这些状态信息可以增加其效率和速度。这里有四种有效状态,名称分别为 ESTABLISHED 、 INVALID 、 NEW 和 RELATED。

  状态 ESTABLISHED 指出该信息包属于已建立的连接,该连接一直用于发送和接收信息包并且完全有效。INVALID 状态指出该信息包与任何已知的流或连接都不相关联,它可能包含错误的数据或头。状态 NEW 意味着该信息包已经或将启动新的连接,或者它与尚未用于发送和接收信息包的连接相关联。最后, RELATED 表示该信息包正在启动新连接,以及它与已建立的连接相关联。

  netfilter/iptables 的另一个重要优点是,它使用户可以完全控制防火墙配置和信息包过滤。您可以定制自己的规则来满足您的特定需求,从而只允许您想要的网络流量进入系统。

  另外,netfilter/iptables 是免费的,这对于那些想要节省费用的人来说十分理想,它可以代替昂贵的防火墙解决方案。
 


SELinux 国家级的安全子系统

  SELinux是Security-Enhanced Linux的简称,是美国国家安全局NSA(The National Security Agency)和SCC(Secure Computing Corporation)开发的 Linux的一个扩张强制访问控制安全模块。原先是在Fluke上开发的,2000年以GNU GPL发布。

  SELinux(Security-Enhanced Linux) 是对于强制访问控制的实现,是Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。

  对于目前可用的 Linux安全模块来说,SELinux 是功能最全面,而且测试最充分的,它是在 20 年的 MAC 研究基础上建立的。SELinux 在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念。

  大部分使用SELinux的人使用的都是SELinux就绪的发行版,他们都是在内核中启用SELinux的,并且提供一个可定制的安全策略,还提供很多用户层的库和工具,它们都可以使用 SELinux 的功能。

  SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。

  众所周知,标准的UNIX安全模型是"任意的访问控制"DAC。就是说,任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件扔到/tmp目录下,那么在DAC情况下没人能阻止他!而MAC情况下的安全策略完全控制着对所有资源的访问。这是MAC和DAC本质的区别。SELinux提供了比传统的UNⅨ权限更好的访问控制。

    编辑点评:

    Linux操作系统在服务器领域已经占据了很强的领地,这与其自身的免费、开源以及极高的安全性分不开的。做好Linux操作系统的维护,需要善用Linux系统高效的工具资源。只有熟练运用、熟知Linux脾性才能将这个默默无闻的宝物发挥到极致。

 

 


时间:2013-02-21 09:31 来源:zol 作者:王宪阁 原文链接

好文,顶一下
(1)
50%
文章真差,踩一下
(1)
50%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量