Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->Linux技术 ->Linux安全 ->让 Linux 更安全(三)
  相关分类: 
入门与提高
系统管理
网络应用
嵌入式系统
内核研究
服务器相关
发行版专区
Linux程序设计
Linux安全
BSD相关
桌面应用
  站内搜索: 
热门文章排行
热门文章排行 linux环境变量设置及保存地点 (04-22)
Apache 门户项目组介绍 (04-22)
黑客高级技巧 Linux后门技术及实践 (05-01)
安全多方位 Linux系统守护进程详解 (04-20)
UNIX 高手的10 个习惯 (04-22)
精采文章排行
精采文章排行 黑客高级技巧 Linux后门技术及实践 (05-01)
IP安全加密 IPSec安全技术全面接触 (05-01)
LINUX2.4.x网络安全框架 (04-26)
分级防御对Linux服务器的攻击 (04-26)
基于Linux开发的FireboxⅡFastVPN (04-26)
  ·黑客高级技巧 Linux后门技术及实践 ·LINUX2.4.x网络安全框架 ·分级防御对Linux服务器的攻击 ·基于Linux开发的FireboxⅡFastVPN ·十项Linux安全管理技巧经验总结 ·高级Linux安全管理技巧 ·发现Linux压缩格式漏洞 达第二最危险级别·Unix和Linux下的Acrobat Reader 5受攻击 ·Linux操作系统下防垃圾邮件基本功

让 Linux 更安全(三)

作者:Mario Eberlein    来源:IBM DW中国   点击:   日期:2007-04-22 [收藏] [投稿]

  IE是否经常中毒?推荐您

学习能够使您的 Linux™ 系统更能抵御攻击的技术,包括保护引导过程和本地文件、为服务和后台进程加锁、强制实行配额和限制、启用强制访问控制(mandatory access control),以及识别那些在使用新软件更新安全设施时可能会引入的安全漏洞。本系列的 第 1 部分 介绍了安全性的概念以及潜在的威胁。第 2 部分 列出了计划安全安装时需要谨记的事情。

在此系列文章中,您将看到怎么样以一种安全的方法来计划、设计、安装、配置和维护运行 Linux 的系统。除了安全概念的理论概述、安装问题、潜在的危险及其作用以外,您还将得到关于怎么样保护和加固基于 Linux 的系统的实用建议。我们将讨论最小化安装、加固 Linux 安装、授权/认证、本地和网络安全、攻击和怎么样防御攻击,以及数据安全、病毒和恶意程序。

本系列的 第 1 部分 通过给出关于安全概念和潜在危险的一般理解让您开始上手。 第 2 部分 引导您进行到下一个阶段,列出当计划一个安全安装时需要紧记的事情,其中包括制定一个详细的安全行动计划。

在本部分,我们将讨论加固(hardening)Linux 的步骤。

关于加固

要让加固行动更为成功,您应该:

  • 在系统连接到网络之前进行加固,以避免攻击。
  • 基于 最小权限原则(least-privilege model) 进行配置:系统应该为特定的功能只赋予其所需要的权限。类似地,用户应该只拥有他们所需要的最小限度的权限。

在完成初步计划并准备和执行了最小化安装后(见第 2 部分),您需要进行一些配置步骤。这些步骤通常被称作是加固 Linux。

  • 保护引导过程
  • 保护服务和后台进程
  • 保护本地文件
  • 强制实行配额和限制
  • 启用强制访问控制
  • 更新和添加安全补丁

保护引导过程

配置引导加载器(LILO 或者 Grub),以令其在引导时不被任何用户干涉;这样就防止了用户在引导提示时向内核传递参数。除非您需要远程引导(比如在远程的数据中心),不然就配置它让它要求输入密码。这是对有可能物理上接触机器的人的进一步防范;它可以防止某些事件的偶然攻击,比如使用参数 single 或者 init=/bin/sh 来获得 root shell,等等。不过,要注意,稍加努力就可以避开此防范机制(比如拆下硬盘驱动器并将其挂载到另一个系统上),除非您对文件系统也进行了加密。

对 LILO 而言,在 lilo.conf 配置文件(通常在 /etc 下)中使用参数 password 替换 prompt。对于 Grub,相应的参数是 Grub 配置文件(通常在 /boot/grub/grub/conf 下)中的 hiddenmenudefault 0password

在 /etc/inittab 中添加 sp:S:respawn:/sbin/sulogin,以确保当切换到单用户模式时运行级的配置要求输入 root 密码。

防止用户使用 Ctrl-Alt-Del 进行重新引导:在 /etc/inittab 中注释掉 ctrlaltdel 行,禁用 ctrlaltdel。通过向类似这样一行( #ca::ctrlaltdel:/sbin/shutdown -t5 -rf now)添加一个井号(#),您就可以防止那个组合键触发重新引导。

保护服务和后台进程

服务的安全配置的第一个步骤是,禁用所有不需要的服务。不提供的服务不会为潜在的入侵者所利用,有效地降低了风险。

为了找出所有启用的服务,需要检查若干个位置。另外,要禁用不安全的服务,并使用更为安全的选择来取代它们。例如,telnet 不是加密的,所以,使用加密的 ssh 服务来取代 telnet(见第 2 部分)。

当保护服务时,考虑这些方面:

  • /etc/inittab
  • /etc/init.d 中的引导脚本
  • inetd/xinetd 后台进程
  • TCP 封装器(wrappers)
  • 防火墙

/etc/inittab

在引导过程中,init 进程会去读取 /etc/inittab 文件中的条目。每一个条目 —— 每一行 —— 都定义了在特定的条件下运行哪个程序。这些程序或者本身是服务,或者是用于启动和停止服务。

init 进程能识别若干个称为 运行级(run levels) (由一个字母标识)的状态。当输入了运行级或者发生特定的事件(比如电源故障)时,就会考察那些条目,并执行适当的命令。

/etc/inittab 中条目的格式是,前面是条目的标签,随后是在哪些运行级下此条目要执行,然后是动作关键字以及包括命令行参数的需要执行的命令。所有这些域都由冒号隔开,典型的条目应该类似这样:

my_service:35:once:/usr/local/bin/my_service someparameter

(在 inittab 手册中可以找到动作关键字的完全列表。)

在这个示例中,条目的标签是 my_service。当输入的运行级为 3 或 5 时,它将使用参数 someparameter 来运行程序 /usr/local/bin/my_service。一旦这个程序被终止,它将不会再重新启动(动作关键字“once”)。

为了保护 Linux 系统,您应该理解 /etc/inittab 中所有条目的功能,并禁用潜在不必要的服务,方法是删除那个条目,或者在那一行的开头使用井号注释掉它。

在所有 Linux 系统中,都会有以下两类条目。第一类用来启动名为 /sbin/getty (或者类似的)的程序,这些通常是用来允许通过 Linux 虚拟控制台或者串行线登录。第二类会运行 /etc/rc.d 目录中通常名为 rc 的脚本,并将当前运行级作为参数给出。这个脚本控制服务的启动和停止(接下来会介绍)。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页12 3 4 5 6 下一页

上一篇: Linux 更安全(二)   下一篇:基于LINUX蜜网的防御系统
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·IP安全加密 IPSec安全技术全面接触

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。