1第12章Linux操作系统安全课程:网络操作系统教材:网络操作系统教程2第1章网络操作系统概述第2章WindowsServer2003概述第3章活动目录与域控制第4章WindowsServer2003系统管理与系统服务第5章WindowsServer2003网络服务第6章WindowsServer2003操作系统安全第7章Unix操作系统概述第8章shell工具及程序开发第9章Linux概述第10章Linux内核第11章Linux系统服务第12章Linux操作系统安全3Linux操作系统安全Linux身份验证Linux访问控制技术Linux内核安全技术Linux安全服务器的配置4Linux身份验证在使用本地身份验证的系统上禁用账户;在使用分布式身份验证的系统上禁用账户。禁用用户账户5Linux身份验证只用几个单行的文本文件编辑操作,就可以控制访问服务器的用户;Linux系统上/etc/nsswitch.conf文件中的条目决定了它如何解析对用户、组信息及其他主机信息的请求。编辑密码文件6Linux身份验证所有的系统管理员最终都会遇到这样的情形:一台机器以完整的多用户模式运行,所有的服务也都在运行,但同时却完全拒绝对机器的登录访问。#touch/etc/nologin拒绝用户访问7Linux身份验证将鉴别功能从应用程序中独立出来,单独进行模块化设计,实现和维护;为这些鉴别模块建立标准API,以便各应用程序能方便的使用它们提供的各种功能;同时,鉴别机制对其上层用户(包括应用程序和最终用户)是透明的。PAM安全验证机制8Linux身份验证PAM的分层体系结构9Linux访问控制技术1969年B.W.Lampson通过形式化表示方法运用主体(Subject)、客体(Object)和访问矩阵(AccessMatrix)的思想第一次对访问控制问题进行了抽象,主体是访问操作中的主动实体,客体是访问操作中的被动实体。通用访问控制框架10Linux访问控制技术1996年,ISO发表了通用访问控制框架技术标准,其基本的实体主要由主体、客体、访问实施组件和访问控制决定组件组成。通用访问控制框架11Linux访问控制技术Linux访问控制框架理论主要有GFAC、Flask和LSM三种。Linux访问控制框架理论及应用12Linux访问控制技术提供了一个用于表达和支持多安全策略的框架,其主要目标是:使得描述、形式化和分析各种访问控制策略更容易;使得用户可以从系统开发者提供的多个安全策略支持模块中选择几个进行配置,得到需要的安全策略,并且可以确信安全策略得到了正确的实施。通用访问控制框架13Linux访问控制技术Flask框架的安全服务器实现了由四个子策略组成的安全策略,这几个子策略分别是多级安全(MLS)策略、类型实施(TE)策略、基于标志的访问控制(IBAC)策略和基于角色的访问控制(RBAC)策略。Flask访问控制框架14Linux访问控制技术提供一个通用的访问控制安全模块框架,本身不提供任何具体的访问控制安全政策。LSM的实现框架结构分为两部分,其中一部分是其在内核中对用户进程的操作过程,另一部分是其用以判断进程访问权限的安全模块策略引擎。LSM访问控制框架15Linux内核安全技术Linux内核是作为单内核体系结构而实现的,为了获得Microkernelarchitecture(微内核体系结构)带来的可扩展性和可维护性,Linux引入了可装载内核模块(LoadableKernelModule,LKM)机制,用以保证内核的紧凑性和Linux本身固有的单一体系结构的优点。16Linux内核安全技术Linux内核是作为单内核体系结构而实现的,为了获得Microkernelarchitecture(微内核体系结构)带来的可扩展性和可维护性,Linux引入了可装载内核模块(LoadableKernelModule,LKM)机制,用以保证内核的紧凑性和Linux本身固有的单一体系结构的优点。可加载的内核模块17Linux内核安全技术LKM主要包括内核模块在操作系统中的加载和卸载两部分功能,内核模块是一些在启动的操作系统内核需要时可以载入内核执行的代码块,不需要时由操作系统卸载。可加载的内核模块18Linux内核安全技术可加载的内核模块LKM模块LKM模块module_list用户态insmodkmodrunning内核态19Linux内核安全技术可加载的内核模块清除关联LKM模块内存回收用户态rmmodkmoddeleted内核态20Linux安全服务器的配置系统记账Linux系统的日志信息管理最初开发的系统记账用于跟踪用户资源消费情况,从用户帐号中提取费用为目地的。现在可以把它用于安全目的,用以提供有关在系统中发生的各种活动的有价值信息。21Linux安全服务器的配置系统记账Linux系统的日志信息管理连接记账:连接记账是跟踪当前用户当前对话、用户登录和退出的活动。进程记帐:进程记帐是对进程活动的记录。22Linux安全服务器的配置系统日志Linux系统的日志信息管理/var/log/xferlog用于记录文件传输协议FTP的信息。其他日志文件,例如/var/log/messages文件通常包含许多系统和内核工具的输入项。23Linux安全服务器的配置BIOS安全Linux系统的启动和登录安全性设置BIOS密码且修改引导次序禁止从软盘启动系统可以增强系统的安全性。24Linux安全服务器的配置用户口令Linux系统的启动和登录安全性较好的用户口令是那些只有用户自己容易记得并理解的一串字符(最好是数字、字符和特殊字符混合而成),并且不要将口令记录在其他任何地方。25Linux安全服务器的配置删除默认账号Linux系统的启动和登录安全性应该禁止所有默认的被操作系统本身启动的并且不必要的账号,当用户第一次安装系统时就应该这么做,Linux提供了很多默认账号,而账号越多,系统就越容易受到攻击。26Linux安全服务器的配置避免显示系统和版本信息限制网络访问如果用户希望远程登录用户看不到系统和版本信息,可以通过一下操作改变/etc/inetd.conf文件:----telnetstreamtcpnowaitroot/usr/sbin/tcpdin.telnetd-h加-h表示telnet不显示系统信息,而仅仅显示“login:”。