《Unix Linux操作系统安全技术.ppt》由会员分享,可在线阅读,更多相关《Unix Linux操作系统安全技术.ppt(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、操作系统安全操作系统安全 第八章第八章 Unix/Linux 操作系统安全技术操作系统安全技术计算机科学与工程系 第八章第八章 Unix/Linux操作系统安全技术操作系统安全技术8.1 账户安全管理账户安全管理8.2 口令安全与访问控制口令安全与访问控制8.3 文件系统安全文件系统安全8.4 日志查看与分析日志查看与分析8.5 网络服务安全网络服务安全8.6 备份与恢复备份与恢复计算机科学与工程系Unix安全模型安全模型UNIX是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统。因为安全可靠,高效强大的特点,其在服务器领域得到了广泛的应用。图8-1为
2、Unix操作系统的一个安全模型:计算机科学与工程系8.1 账户安全管理账户安全管理8.1.1 root账户的管理 在UnixLinux系统中,root账号就是一个超级用户账户。以超级用户可以对系统进行任何操作。1超级用户超级用户而UnixLinux超级用户账户可以不止一个。在Unix系统中,只要将用户的UID和GID设置为0就可以将其变成超级用户,但并不是所有的超级用户都能很容易的登录到Unix系统中,这是因为,Unix系统使用了可插入认证模块(PAM)进行认证登录,PAM要求超级用户只能在指定的终端上进行访问,这种指定的终端是可以保证安全的。2root账户的安全账户的安全root用户账户也是
3、有密码的,这个密码可以对那些通过控制台访问系统的用户进行控制,即使是使用su命令的用户也不例外。计算机科学与工程系8.1.3 PAM认证机制认证机制8.1.3 PAM认证机制认证机制嵌入式认证模块(PAM)机制采用模块化设计和插件功能,使得管理员可以轻易地在应用程序中插入新的鉴别模块或替换原先的组件,而不必对应用程序做任何修改,从而使软件的定制、维持和升级更加轻松,因为鉴别机制与应用程序之间相对独立。应用程序可以通过PAM API(由pam.conf控制)方便的使用PAM提供的各种鉴别功能,而不必了解太多的底层细节。计算机科学与工程系PAM认证机制认证机制计算机科学与工程系8.2 口令安全与访
4、问控制口令安全与访问控制Unix中常用的口令机制中常用的口令机制用户口令技术影子口令机制一次性口令机制计算机科学与工程系8.3 文件系统安全文件系统安全文件和目录的权限文件系统完整性检查计算机科学与工程系8.3.1 文件和目录的权限文件和目录的权限Unix系统中的每个文件和目录都有访问许可权限,文件或目录的访问权限分为三种:只读只写可执行有三种不同类型的用户可对文件或目录进行访问:文件所有者同组用户其他用户每一文件或目录的访问权限有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。计算机科学与工程系8.3.1 文件和目
5、录的权限文件和目录的权限确定了一个文件的访问权限后,用户可以利用系统提供的的命令对权限进行设置chmod命令来重新设定不同的访问权限。chown命令来更改某个文件或目录的所有者。chgrp命令来更改某个文件或目录的用户组 计算机科学与工程系8.3.2文件系统完整性检查文件系统完整性检查对于庞大的系统文件,管理员对每一个文件都进行检查室难以想象的,而Tripwire能够提供这种帮助,它不是为了抵御攻击者而设计的,然而它能够帮助判断系统的一些重要文件是否被攻击者修改,即系统完整性检查工作。Tripwire是目前最为著名的UNIX下文件系统完整性检查的软件工具,这一软件采用的技术核心就是对每个要监控
6、的文件产生一个数字签名,并保留下来。当文件现在的数字签名与保留的数字签名不一致时,那么现在这个文件必定被改动过了。计算机科学与工程系 8.3.3 NFS简介及相关安全性问题简介及相关安全性问题1.NFS的基本工作原理NFS由服务器端和客户机端两部分组成。NFS是通过RPC即远程过程调用来实现的,使得远程的计算机节点执行文件的操作命令就像执行本地文件的操作命令一样,可以执行创建文件、创建目录、删除文件、删除目录等文件操作命令。计算机科学与工程系 8.3.3 NFS简介及相关安全性问题简介及相关安全性问题2.NFS安全性的实现Linux所做的第一个安全措施就是启用防火墙。Linux所做的第二个安全
7、措施是服务器的导出选项。相关的导出选项有如下几类:(1)读写服务器访问;读写服务器访问;(2)UID与与GID挤压;挤压;(3)端口安全;端口安全;(4)锁监控程序;锁监控程序;(5)部分挂接与子挂接。部分挂接与子挂接。计算机科学与工程系8.4 日志查看与分析日志查看与分析Unix系统中,主要分为以下3种形式的日志系统:(1)记录连接时间的日志 系统中多个进程运行时,把记录写入到varlogwtmp和varrunutmp,这两个文件的更新由login等进程完成,以便于管理员跟踪谁在何时登录了系统。(2)进程统计 由系统内核执行。进程的执行和终止,都将被记录到统计文件 pacct和acct中。该
8、系统的目的是为系统中的基本服务提供命令使用情况统计。(3)错误日志 由syslog(8)执行各种系统守护进程、用户程序和内核通过syslog(3)向文件varlogmessages报告值得注意的事件。计算机科学与工程系日志文件及其功能说明日志文件及其功能说明 日志文件功能及说明access-log记录HttpWeb的传输acctpacct记录用户命令aculog记录Modem的活动btmp记录失败的记录lastlog记录最近几次成功登录的事件和最后一次不成功的登录message从syslog中记录信息sublog记录使用sudo发出的命令suslog从syslog中记录信息utmp记录当前登录
9、的每个用户wtmp一个用户每次登录进入和退出时间的永久记录计算机科学与工程系8.4.1 日志查看技术日志查看技术8.4.1 日志查看技术wtmp和utmp文件都是二进制文件,他们不能被诸如tail、cat命令进行剪贴或合并。用户需要使用who、w、users、last和ac来使用这两个文件包含的信息。计算机科学与工程系8.5 网络服务安全网络服务安全Unix系统之间安全通信的实现Kerberos认证机制安全外壳协议(SSH)。计算机科学与工程系Unix系统之间的安全通信主要是是靠UUCP实现的。UUCP,Unix-to-Unix Copy的缩写,UUCP系统主要完成远程文件传输,包括各种文件的
10、远程复制、执行系统之间的命令、维护系统使用情况的统计等等。UUCP是UNIX操作系统上最广泛使用的网络实用系统,在Internet兴起之前是UNIX系统之间连网的主要方式。主要是因为:(1)UUCP是各UNIX版通用的唯一标准网络系统(2)通过UUCP建立网络系统简单,8.5.1 Unix系统之间安全通信的实现系统之间安全通信的实现计算机科学与工程系 8.5.1 Unix系统之间安全通信的实现系统之间安全通信的实现计算机科学与工程系8.5.2 Kerberos认证机制认证机制计算机科学与工程系8.5.2 Kerberos认证机制认证机制计算机科学与工程系计算机科学与工程系计算机科学与工程系当用
11、户输入用户名和密码后,计算机将用户名发送给当用户输入用户名和密码后,计算机将用户名发送给 KDC。KDC 包含一个主数据库,该数据库保存了其领域内每个安全主包含一个主数据库,该数据库保存了其领域内每个安全主体独有的长期密钥体独有的长期密钥 KDC 查找用户的主密钥(查找用户的主密钥(KA),主密钥基于用户的密码。然后,),主密钥基于用户的密码。然后,KDC 创建两项:一个与用户共享的会话密钥(创建两项:一个与用户共享的会话密钥(SA)和一张票证)和一张票证授予式票证(授予式票证(TGT,Ticket-Granting Ticket)。)。TGT 包含包含 SA、用户、用户名和过期时间的第二个副
12、本。名和过期时间的第二个副本。KDC 使用它自身的主密钥使用它自身的主密钥(KKDC)加密此票证,此主密钥只有)加密此票证,此主密钥只有 KDC 知道知道 目标服务器目标服务器KDC用户用户KABKABTGT+SATGT+时间戳时间戳用户名用户名客户端计算机从客户端计算机从 KDC 接收到信息,并通过单向哈希函数加密接收到信息,并通过单向哈希函数加密用户的密码,这样就将密码转换成了用户的用户的密码,这样就将密码转换成了用户的 KA。客户端计算。客户端计算机现在有一个会话密钥和一个机现在有一个会话密钥和一个 TGT,这样就可以与,这样就可以与 KDC 安全安全通信了通信了 当当 Kerberos
13、 客户端需要访问同一域中的成员服务器上的资源时,客户端需要访问同一域中的成员服务器上的资源时,它会联系它会联系 KDC。客户端将提供。客户端将提供 TGT 和用已经与和用已经与 KDC 共享的会话密共享的会话密钥加密的时间戳钥加密的时间戳,接着,接着,KDC 创建一对票证,一张给客户端,另创建一对票证,一张给客户端,另一张给客户端需要访问的资源所在的服务器一张给客户端需要访问的资源所在的服务器,KDC 获取服务器的获取服务器的票证,并使用服务器主密钥(票证,并使用服务器主密钥(KB)加密它。然后)加密它。然后 KDC 将服务器的将服务器的票证嵌套在客户端的票证内,这样,客户端的票证也含有该票证
14、嵌套在客户端的票证内,这样,客户端的票证也含有该 KABKerberos 身份验证的工作原理身份验证的工作原理计算机科学与工程系计算机科学与工程系计算机科学与工程系计算机科学与工程系计算机科学与工程系 8.5.2 Kerberos认证机制(课本)认证机制(课本)Kerberos协议把身份认证的任务集中在身份认证服务器(AS)上执行。AS中保存了所有用户的口令。在Kerberos认证体制中,还增加了另外一种授权服务器TGS(Ticket-Granting Server)。首先用户申请票证授权证,AS验证C的访问权限后,准备好票证Tickettgs和C与TGS用户会话密钥Kc,tgs,并用口令导出
15、的Kc加密后回送票证授权证。然后用户请求服务授权证,工作站要求用户输入口令,并用它导出密钥Kc,以Kc对所得消息进行解密的Kc,tgs,用户将Tickettgs连同个人信息发给TGS,TGS实现对C的认证后,准备好服务授权证Ticketv及会话密钥Kc,v用Kc,tgs加密后发给用户C,用户C将获得的Ticketv连同个人信息发送给服务器V,服务器对信息认证后,给用户提供相应的服务 计算机科学与工程系图8-4 Kerberos认证过程 8.5.2 Kerberos认证机制认证机制(课本)(课本)计算机科学与工程系8.5.3 SSH协议协议SSH的英文全称是Secure Shell。通过使用SS
16、H,你可以把所有传输的数据进行加密,这样入侵者的攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗。计算机科学与工程系8.5.3 SSH协议协议1.基于口令的安全验证基于口令的安全验证只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器。计算机科学与工程系8.5.3 SSH协议协议2.基于密匙的安全验证基于密匙的安全验证需要依靠密匙,就是说用户必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果用户要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用用户的密匙进行安全验证。服务器收到请求之后,先在用户所在的服务器的家目录下寻找公用密匙,然后把它和用户发送过来的公用密匙进行比较。如果一致,服务器就用公用密匙加密“质询”并把它发送给客户端软件。客户端软件收到“质询”之后就可以用私人密匙解密再把它发送给服务器。用这种方式,用户必须知道自己密匙的口令。与第一种级别相比,第二种级别不需要在网络上传送口令。