当前位置:操作系统 > Unix/Linux >>

SuseLinux10杀手级组件:AppArmor

再过一百年,那时的历史学家将把我们描述为“超码的我”(Super Size Me)一代。但这并不仅仅表现在快餐店。我们想要更多时间、更多乐趣、更多的钱、更多的均等利益、生活中更多美好的东西。我们的社会正在追求更多的满足。当然,对于业界而言仅仅追求是不够的。人员创造更高价值、资本增值和IT投资取得更高回报直接关系到企业的生死存亡。

  随着性能、扩展性、管理性、可靠性、安全性、技术支持和投资回报要求的提高,Novell以其能够满足这种需求并超出预期水平而享有卓著声誉。最新推出的SUSE Linux Enterprise 10大大超出了企业对于世界一流企业级操作系统的期待。与任何新版系统一样,这个平台的服务器组件SUSE Linux Enterprise Server与其前身相比也增加了功能。该服务器三大新功能显著提升了其满足不断增长需求的超前能力。

  AppArmor安全应用程序

  存储架构

  服务器虚拟化

  ◆ 增加安全应用程序

  安全性一直是Linux操作系统的优势之一。不过,有时个别应用程序的漏洞还是留下了安全隐患。SUSE Linux Enterprise全面集成AppArmor安全应用程序框架消除了这种隐患,为每个应用程序专门加了一层重要的安全保护。

  AppArmor并不是SUSE Linux Enterprise Server(企业级服务器)的新功能。第9版系统包含开源内核模块和执行安全管理的组件,并且能够根据独立专用组件创建并解释策略。现在的AppArmor根据GNU通用公共授权完全公开提供,并且紧密集成在SUSE Linux Enterprise框架内。

  因此,AppArmor如何保证企业级应用安全成为一个重要问题。这一功能实际采用白名单方法规定允许应用程序执行的动作。这与规定所有不允许应用程序执行的动作的黑名单技术相反。

  黑名单在出现您不知道的新漏洞之前具有很好的保护作用,而出现新漏洞之后直到供应商为这些漏洞发布新补丁之前,却不能为您提供保护。

  AppArmor的白名单实际上是一种策略,用以管理应用的文件和目录访问,以及应用的POSIX功能。POSIX是IEEE将根特权分成不同组合的标准。换句话说,即使服务器应用需要根特权才能正常运行,与提供未加保护的根特权允许应用运行不同,AppArmor在内核层管理应用的文件访问和POSIX功能,将应用限定在一组资源和根特权实际范围之内。

  这种管理每种应用访问的白名单概念已经采用了一段时间。实际上,国家安全局开发了类似的解决方案,称作“安全增强Linux”。但由于性能的负面影响和实施中的困难,妨碍了这个解决方案的部署。而AppArmor对性能的影响很小,并且由于集成在SUSE Linux Enterprise Server中,因此部署十分方便。

  

  ◆ 即开即用保护

  SUSE Linux Enterprise Server中包含一组AppArmor为通用操作系统和应用软件预定义的策略,包括Apache Web服务器、Postfix邮件服务器、Sendmail邮件服务器、OpenSSH、squid、ntpd、nscd等。除Apache外,这些策略即开即用,不必修改。对于Apache,您需要给出提示,如Web页面中主目录位置等信息。

  点击YaST管理控制台中的Novell AppArmor图标,您可以通过四步流程制定AppArmor的应用策略。

  ◆ 服务器分析器

  AppArmor为您确定系统中哪些应用需要配置AppArmor策略提供了相应的工具。在YaST的AppArmor菜单中,点击AppArmor Reports(报告)图标,运行Application Audit Report(应用审计报告)。这个自动化程序可扫描服务器中收听开放式网络端口,尚未定义AppArmor策略的应用。服务器分析器(Server Analyzer)扫描结束后,将列出可由网络外部访问需要定义策略的应用。

  ◆ 策略模板生成器

  启动分析流程时,点击AppArmor主菜单的Add Profile Wizard(添加配置向导)图标。选择准备分析的应用,AppArmor将对选定的应用进行快速静态分析,然后生成这个应用程序专用的策略模板。

  ◆ 学习模式

  创建策略模板之后,配置向导自动进入学习模式,大部分策略开发都需要经过这个过程。在此期间,AppArmor框架监控应用的工作状态,需要访问的目录及文件,以及访问类型。当然,学习模式运行时,您需要在正常运行状态下使用应用程序。根据应用的复杂程度,这个过程可能需要持续几小时到几天不等。

  学习期间,应用程序不执行任何策略规则。因此,一定要保证在隔离的环境下运行应用程序,即保证学习良好行为期间,系统不会受到攻击:

  AppArmor在内核层管理应用的文件访问和POSIX功能,将应用限定在一组资源和根特权实际范围之内。

  ◆ 交互式优化器

  学习期间,AppArmor创建应用正常及可接受行为相关活动的大型日志。AppArmor中的Interactive Optimizer(交互式优化器)分析所有活动,其方法是由分析向导向您提出一系列问题,以快速确定这个应用程序相应的策略。

  例如,学习模式期间,应用可能访问某个目录中的某个文件。这时,分析向导将请您在以下选项中进行选择,确定控制访问的策略:

  Allow:可以访问这个目录中指定的文件,允许根据需要运行应用。访问可以包括也可以不包括读取、写入或执行模式。

  Deny:不得访问这个目录中指定的文件,防止应用程序正常运行。

  

  Glob:这个功能取路径中最后一项,在这个位置加通配符,表明应用程序可采用规定的访问模式访问这个目录中的所有文件。当您确信应用程序访问目录中其他文件不会造成安全问题,并且的确有必要访问其他文件时,这个功能非常实用。创建这种通配符策略定义可以显著缩短交互流程,因为交互式优化器可以自动确认,不需要再询问是否允许访问这个目录中的其他文件。点击两次“全局”(Glob)按钮可将全局范围加倍。这样,应用程序可以访问这个目录及其所有子目录中的每个文件。

  Glob w/Ext:这个功能与Glob相似,只是在路径最后一项处不放置完整通配符,而是放置带有扩展名的通配符。例如,您可以规定应用程序可访问这个目录中所有带某种扩展名的文件。

  Edit:这个弹出式对话框供您根据需要编辑目录路径及文件名。

  上述情况下,每当您对应用活动日志中有关操作的问题给出答复后,配置向导便会生成这个活动的策略规则。如果这个规则适用于日志中的其他活动,访问过程中向导会跳过这些活动。配置向导还可以确认其他应用程序的现有策略是否适用于您当前运行的应用程序。这样,当出现与现有策略相类似的活动时,向导会询问您是否对运行的应用程序采用这种策略。AppArmor配置向导的这种智能化功能可通过少量策略提问解决一千种,甚至更多活动相关的问题。

  回答完问题之后,配置向导将以加色格式指导您查看编辑策略,需要关注的策略规则用黄色加亮,便于您快速分析策略)。

  完成策略创建后(基本文本文件),您可以很方便地将这些策略发布给系统环境下采用同样应用程序,要求执行同样策略的其他服务器。同时,AppArmor还包含配置向导的更新功能,便于您轻松地更新现有应用策略,实施系统调整或加入新规则。应用策略生效后,AppArmor保存应用活动违背策略的日志。与配置向导一样,更新配置向导将分析日志,询问活动相关的问题,便于您完善现有策略。

  ◆ 全面提高存储可靠性、扩展性和可用性

  SUSE Linux Enterprise Server新型存储架构致力于在企业级服务器同样环境下具有更出色的表现。以更加可靠和可管理的架构支持小型文件系统或数百万文件高达TB容量的存储。从Web应用到数据库,以更加灵活的架构为各种应用提供支持;以更高的可用性(HA)改善集群性能。提高存储架构扩展能力以并行集群文件系统的方式进行扩展。

  上述能力的提升全部基于全面集成的三大存储架构组件:

  HA集群资源管理器

  

  集群卷管理器

  集群并行文件系统

  ◆ HA集群资源管理器

  存储架构的HA集群资源管理器(HA Cluster Resource Manager)就是过去的高可用性故障恢复集群。换句话说,这个集群软件可以识别发生故障的服务或服务器,并将相应的服务转移到集群中仍在运行的节点,从而保证服务器或服务的正常运行。HA集群资源管理器的重要组件是集成了新推出的Heartbeat 2。

  作为高可用性Linux开源项目,与之前的Heartbeat 1相比,Heartbeat 2显著提高了集群的扩展能力。与限于两个节点的集群不同,集群可以增加到六个节点。

  Heartbeat 2还新增了高级资源监控功能。这样,应用软件供应商可在其应用软件中加入小型监控代理,以便在应用软件停止正常运行时通知HA集群资源管理器。这种功能在应用软件不需要失效,但却停止运行或不能做出应有响应时非常重要。资源监控代理可以检测这种故障行为,通知HA集群资源管理器要么对应用进行重启,要么将其切换到集群中的另一服务器上。

  Heartbeat 2还与SUSE Linux Enterprise Server中的其他存储构件紧密集成,彼此可以进行交互。例如,如果HA集群资源管理器恢复故障资源,也可以通过其恢复文件系统故障。如果卷上发生切换,集群卷管理器可以识别这种切换,并反映到整个集群。这种集成的另一个重要作用是使存储架构具备管理功能。SUSE Linux Enterprise Server采用基于开放式标准的通用信息模型(CIM),显著提高了存储架构的管理能力。

  应用软件支持

  SUSE Linux Enterprise Server 9环境中运行的,以及通常称为高级LAMP栈(Linux, Apache, MySQL和PHP/Perl/Python)上运行的现有应用软件,均可以在SUSE Linux Enterprise Se
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,