620 likes | 786 Views
网格安全. 内 容. 网格安全需求 网格安全研究现状及面临的问题 网格安全研究内容 相关的安全技术分析 密码技术 PKI SSL Kerberos Web Service 安全技术 网格安全实现 Globus Security Infrastructure(GSI). 内 容. 网格安全需求 网格安全研究现状及面临的问题 网格安全研究内容 相关的安全技术分析 密码技术 PKI SSL Kerberos Web Service 安全技术 网格安全实现 Globus Security Infrastructure(GSI). 网格安全需求.
E N D
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关的安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关的安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
网格安全需求 • 网格的建立,以Internet作为通信支撑平台 • Internet是一个开放性、异构性极大的公共网络,这使得在Internet上运行的网格作业面临各种各样的安全威胁 • 数据被截取 • 信息的内容被篡改或删除 • 假冒合法用户和服务器,等 • 在网格环境中,需要采取各种有效的安全措施防止这样的情况发生,确保系统安全
身份验证 访问授权 1.作业提交 5.结果返回 2.连接资源代理 审计 4.结果存储 3.计算作业调度 数据机密性和完整性 4 3 入侵检测 用户单一登录 一个典型的网格作业执行过程
网格安全需求(续) • 在网格安全设计中,需要考虑网格的这样一些特性 • 网格是一个异构的环境 • 用户和资源数量很大,且动态可变 • 网格计算环境中的计算过程可在其执行过程中动态地请求、启动进程和申请、释放资源 • 资源可能需要不同的认证和授权机制,这些机制和策略的改变是受限的 • 资源和用户可属于多个组织 • 网格的特性需要网格安全是 • 标准的 • 自主的/自治的 • 可扩展的 • 透明的
网格安全需求(续) • 网格安全的设计目标是 • 支持在网格计算环境中主体之间的安全通信,防止主体假冒和数据泄密 • 需要支持跨虚拟组织边界的安全,避免采用集中管理的安全系统 • 需要支持网格用户的“单一登录”,包括跨多个资源和站点的计算所进行的信任委托和信任转移
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关的安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
网格安全研究现状 • 已有的安全技术 • 密码技术:对称加密/非对称加密 • 安全传输技术:IPSEC/IPv6,SSL/SSH,S/MIME • 安全认证技术:PKI和Kerberos • 访问控制技术:DAC/MAC/RBAC,防火墙 • Web Service安全技术 • 现有的网格安全实现 • Globus Security Infrastructure
网格安全研究现状(续) • GGF安全工作组讨论的安全标准 • Security Working Groups has defined: • AuthZ(Authorization Frameworks and Mechanisms); • OGSA-SEC(Open Grid Service Architecture Security); • CAOPs(Certificate Authority Operations); • OGSA-AuthZ(Open Grid Service Architecture Authorization). • Research Groups is discussing: • SAAAR(Site Auth, Authorization, Accounting Requirements); • ARRG(Authority Recognition). • Completing Groups has implemented: • GSI(Grid Security Infrastructure).
网格安全所面临的问题 • 现有系统和技术的集成 • 现有系统与技术的集成需要网格安全体系结构对现有安全体系结构和跨平台、跨主机模式进行集成。 • 不同主机环境之间协同工作 • 一个网格作业,往往需要访问多个不同的站点才能获得所需的资源。这需要域和主机环境的服务能够交互,协同工作。协同工作需要域间有严格的用户身份认证机制,以及安全的通信通道等来保证。 • 相互交互的主机环境之间的信任关系 • 网格作业需要跨越多个安全域,这些域中的信任关系在点对点的跨越中起着重要的作用。端点间的信任关系需要用策略清楚地进行描述。 • 网格的动态特性,使得信任关系很难预先建立,它需要支持动态的。
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
网格安全的研究内容 • 为网格环境提供标准化的安全服务规范和可靠的安全保障 • 网格安全结构 • 网格安全结构和模型 • 网络安全协议 • 安全通信协议 • 加密算法,等 • 网格安全机制和策略 • 网格环境中认证,授权,访问控制,单一登录 • 跨域的动态信任,等 • 网格安全应用支持 • 安全审计 • 安全监控 • 入侵监测与报警 • 与防火墙的兼容集成,等
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关的安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
密码技术 • 密码系统是最基础的技术 • 密码技术的目的 • 保护信息传递的机密性 • 获得对所发出/接收信息在事后的不可抵赖 • 保障数据的完整性 • 根据密钥类型的不同将现代密码技术分为两类 • 对称加密(秘密钥加密)系统 • 非对称加密(公开密钥加密)系统
Public Key Infrastructure (PKI) • PKI是国际上目前较为成熟的解决开放式互联网络信息安全需求的一套体系 • PKI的核心技术基础是基于公钥密码学的“加密”技术和使用证书的“签名”技术 • 基于公开密钥技术和数字证书,通过验证数字证书持有者身份,为系统提供安全保障 • PKI实现了对称加密和公钥加密技术的结合
Owner Public Key Infrastructure (PKI) • PKI 将一个公钥与一个相应的用户捆绑在一起 • PKI 采用非对称的加密方法: • 每个实体有两个密钥:公钥和私钥 • 用一个密钥加密的数据只能用另外一个密钥进行解密 • 公钥可向外公开,但私钥只有用户自己知道 • 公钥与用户信息被封装在X.509证书中 • 认证双方通过认证,协商产生一个对称密钥,实现通信加密
Owner PKI 概述 • X.509 证书 • 认证中心 (Certificate Authorities,CAs) • 证书策略 • 命名 • 申请一个证书 • 证书请求 • 注册中心(Registration Authority,Ras)
Name Issuer Public Key Signature … X.509证书格式 • 一个X.509证书将一个公钥与一个名称捆绑在一起 • 由一个信任的第三方(即发布者,Issuer)签发证书请求,将一个公钥和一个名称(及其它的一些信息)捆绑在一起
Name Issuer Public Key Signature State of Illinois John Doe 755 E. Woodlawn Urbana IL 61801 State of Illinois Seal BD 08-06-65 Male 6’0” 200lbs GRN Eyes X.509证书 • 证书与出租车司机的执照类似
Name: CA Issuer: CA CA’s Public Key CA’s Signature 认证中心 (CAs) • 是一个可信任的第三方机构 (Certificate Authorities,CAs) • CA需要签发自己的证书(即root CA),并以一种可信任的方式进行分布 • CA主要负责对用户的密钥或证书发放、更新、废止、认证等管理工作 • CA可以具有层次结构
申请证书 • 为了申请一个证书,用户需要先产生一个密钥对(公钥/私钥对) • 私钥被以用户所输入的口令进行加密,并存储在足有私钥拥有者能够访问的地方 • 公钥被加入到证书请求中 • 证书中除了用户产生的公钥外,还有用户的一些其它相关信息 Encrypted On local disk Certificate Request Public Key
证书校验 • 产生证书请求后,用户将这个证书请求发送到CA • 通常,CA有一个注册中心(Registration Authority,RA)验证用户的证书请求 • 确保这个名称在整个CA中是唯一的 • 这个名称是用户的真实名称 • Etc. • RA将通过校验的用户证书请求提交给CA Certificate Authority Certificate Request Public Key State of Illinois ID
Name Issuer Public Key Signature 证书签发 Certificate Request Public Key • CA对证书请求进行签发,并发送给用户 Certificate Authority Sign
Secure Socket Layer (SSL) • SSL协议是由Netscape首先发表的网络资料安全传输协议 • 也被称为 TLS (Transport Layer Security) • 其首要目的是在两个通信站点间提供秘密而可靠的连接
Secure Socket Layer (SSL) • 使用证书和 TCP sockets 提供安全连接 • 双方使用证书进行相互认证 • 信息保护 • 通信的机密性(加密) • 数据的完整性 SSL/TLS Certificates TCP Sockets
Secure Socket Layer (SSL) • SSL的先进之处在于它是一个独立的应用协议,其它更高层协议能够建立在SSL协议上
Kerberos • Kerberos最初是MIT(麻省理工学院)为Athena项目开发的,是TCP/IP网络设计的可信任的第三方认证协议 • Kerberos提供了一种在开放式网络环境下进行身份认证的方法,并允许个人访问网络中不同的机器,它使网络上的用户可以相互证明自己的身份
Kerberos • Kerberos采用对称密钥体制(采用DES,也可用其它算法代替)对信息进行加密 • 基本思想是:由于Kerberos是基于对称密码体制,它与网络上的每个实体分别共享一个不同密钥,能正确对信息进行解密的用户就是合法用户。用户在对应用服务器进行访问之前,必须先从第三方(Kerberos服务器)获取该应用服务器的访问许可证(ticket)
Kerberos的认证过程 • AS:Kerberos Server(认证服务器) • TGS:Ticket-Granting Service(许可证颁发服务器)
Kerberos缺陷 • Kerberos的设计是与MIT校园环境结合的产物,在分布式系统存在一些局限性 • 原有的认证很可能被存储或被替换,虽然时间戳是专门用于防治重放攻击的,但在许可证的有效时间内仍然可能奏效 • 认证码的正确性是基于网络中所有的时钟保持同步 • Kerberos防止口令猜测攻击的能力很弱,攻击者可收集大量的许可证,通过计算和密钥分析进行口令猜测 • 实际上,最严重的攻击是恶意软件攻击 • 另外,Kerberos服务器的损坏将使得整个安全系统瘫痪 • 而且在分布式系统中密钥的管理、分配、存储都存在问题
WS-Security(Web Service Security) • Web services • 由WSDL(Web Services Description Language ) 进行描述 • 处理由XML编码的SOAP 信息 • 在 HTTP之上传递 • 被广泛部署的分布式服务 • web services 是当今商业界的热点 • WS-Security为 Web services提供安全保证 • its first roadmaps and draft specifications have been published in April 2002 by IBM, Microsoft and Verisign.Standardisation activity has been transferred to the OASIS-Open consortium. • Web Services Security 1.0 is now an OASIS standard. • Seeing:http://www.oasis-open.org/committees/wss/
WS-Security • WS-Security模型非常复杂 • 每个参与端点需要表示在与其它端点进行安全会话时所希望应用的安全策略 • 指定所支持的认证机制 • 所必需的数据完整性和机密性 • 信任策略,privacy policies,及其它的安全约束 • 基于已有的安全模型 (Kerberos, PKI, 等) • 基于XML 和 安全协议
内 容 • 网格安全需求 • 网格安全研究现状及面临的问题 • 网格安全研究内容 • 相关的安全技术分析 • 密码技术 • PKI • SSL • Kerberos • Web Service安全技术 • 网格安全实现 • Globus Security Infrastructure(GSI)
Grid Security Infrastructure (GSI) • 主要内容 • GSI概述 • GSI安全功能 • GSI的主要APIs • 一个运用GSI的实例
Grid Security Infrastructure (GSI) • Grid Security Infrastructure(GSI)属于The Globus Project™ • 由Argonne National Laboratory和USA Information Sciences Institute联合研发 • 是Globus Toolkit™中的安全功能模块,为系统提供安全支持 • 相关链接:http://www.globus.org/security/
Globus Security:The Grid Security Infrastructure • GSI是Globus为用户和应用程序提供用来安全地访问网格资源的一组工具、类库和协议 • 基于公钥加密技术, X.509证书,和SSL通信协议 • 对这些标准进行了扩展,以能够进行单一登录和授权代理 • GSI的实现遵循GSS-API • GSS-API是由IETF所提出的通用安全服务API(Generic Security Service API)
Grid Security Infrastructure (GSI) • GSI is: Proxies and delegation (GSI Extensions) for secure single Sign-on Proxies and Delegation SSL/ TLS PKI (CAs and Certificates) SSL for Authentication And message protection PKI for credentials
Grid Security Infrastructure (GSI) • GSI能够提供的安全功能 • 安全认证 • 通信加密 • 私钥保护 • 委托授权 • 单一登录
安全认证 • 安全认证是对请求者和接受者双方的身份进行验证的一个过程,是在SSL上进行的 • 一个成功的安全认证,将 • 校验一个请求连接的合法性 • 为其后的双方通信提供一个会话密钥 • GSI的安全认证是基于用户的私钥创建一个代理,从而为用户提供认证方法。用户如果没有创建这个代理,就不能提交作业,也不能传输数据
通信加密 • GSI 用数字证书进行相互认证,并通过 SSL/TLS 实现对数据的加密,以保证通信的安全 • Globus Toolkit 中包含 OpenSSL,用于在网格客户机和服务器之间创建加密的管道 • 通信加密是在安全认证之后,由认证的双方产生一个会话密钥,通过这个会话密钥加密通信通道
主机证书和私钥的存储和保护 • /etc/grid-security • hostcert.pem: 在相互认证过程中,服务器所使用的证书 • hostkey.pem: 与服务器证书相对应的私钥 (read-only by root) • /etc/grid-security/certificates • CA certificates: 在校验证书时,被信任的CA证书 • ca-signing-policy.conf: 定义了一些CA签发证书的策略
用户证书和私钥的存储与保护 • $HOME/.globus • usercert.pem: 用户的证书(证书中包含的信息有subject name, public key, CA signature,等) • userkey.pem: 与用户证书相对应的私钥 (私钥由用户的口令进行加密保护) • /tmp • Proxy file(s):用户所签发的代理证书,这是一些临时存储的文件,包含了未加密保护的代理私钥和证书(readable only by user’s account)
委托授权 • 当用户与服务器认证成功后,将被委托授权 • 通过将用户DN号(唯一的证书主体名称)映射到本地用户账号 • grid-mapfile: 将grid subject names 映射到本地用户账号的文件(存储在/etc/grid-security目录下) • 通过映射,网格用户的作业将由这个本地用户根据自己的权限处理
Gridmap File实例 • Gridmap文件由Globus管理员维护 • 将Grid-id映射到本地用户名如下: # Distinguished name Local username "/C=US/O=Globus/O=NPACI/OU=SDSC/CN=Rich Gallup” rpg "/C=US/O=Globus/O=NPACI/OU=SDSC/CN=Richard Frost” frost "/C=US/O=Globus/O=USC/OU=ISI/CN=Carl Kesselman” u14543 "/C=US/O=Globus/O=ANL/OU=MCS/CN=Ian Foster” itf
单一登录(Single sign-on) • 为了实现企业的信息化、电子商务和其他需求,越来越多的信息系统在网上出现。这些应用系统都维护着自己的安全策略,这使得 • 用户需要使用其中的任何一个企业应用的时候都需要做一次身份认证,而且每一次认证使用的认证信息(用户名和密码)不能保证一致,这对于用户来说必须记住每一个系统的用户名和密码 • 系统管理员需要对每一个系统设置一种单独的安全策略,而且需要为每个系统中的用户单独授权以保证他们不能访问他们没有被授权访问的网络资源
单一登录 • 以上传统的用户登录对用户和系统管理员都极为不便 • 为了解决这样的问题,人们提出了单一登录(single sign-on)的概念 • 从用户的角度来看,单一登录的机制是指用户在特定的逻辑安全域中,只需进行一次登录即可访问在此逻辑安全区域中不同应用系统中的被授权的资源,当超越了安全区域边缘时才要求再次登录
单一登录 • GSI以X.509证书实现认证,并通过对X.509证书进行扩展,产生代理证书,用户通过使用代理证书实现单一登录 • 代理证书包含一个不同于用户密钥对的公钥和私钥对,在认证会话中使用的就是这个密钥对。由于代理证书生命周期很短,过期则密钥失效。这样,即使私钥被暴露,危害也有限。这也允许在存储代理的私钥时不用口令进行加密保护。因此,对代理来说,就没有口令了 • 这样,用户输入一次口令,用自己的数字证书产生代理证书后,在代理证书的有效期内,用户使用自己的代理证书进行认证,就可在特定的逻辑安全区域中多次访问不同的数据资源,而不需要再次输入口令