您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > kerberos认证
1Kerberos认证2问题引出Internet安全一个问题在于用户口令明文传输,认证仅限于IP地址和口令。入侵者通过截获可获得口令,IP地址可以伪装,这样可远程访问系统。此外,系统处于用户控制之下,网络服务不能依靠工作站执行可靠认证。Kerboros是一种网上服务,其实体是客户、服务器,客户可以是主机,也可是处理事务的应用程序。3身份认证协议——KerberosMIT(麻省理工学院)开发的一种身份鉴别服务。“Kerberos”的本意是希腊神话中守护地狱之门的守护者。Kerberos提供了一个集中式的认证服务器结构,认证服务器的功能是实现用户与其访问的服务器间的相互鉴别。其实现采用的是对称密钥加密技术4Kerboros构成Kerboros由认证服务器,授予票据服务器,管理服务器,数据库传播软件、用户程序等构成。Kerboros是KDC(密钥分配中心),拥有所有客户机及其密钥的数据库。客户机首先要在该数据库中注册身份信息和秘密密钥5Kerberos系统AS:认证服务器AS(AuthenticatorServer)(起KDC的作用)TGS:票据许可服务器TGS(TicketGrantingServer)Client:客户Server:服务器6ServerServerServerServerKerberosDatabaseTicketGrantingServerAuthenticationServerWorkstationKerberosKeyDistributionService7记号Kerberos的记号C客户S服务器ADc客户的网络地址Lifetime票据的生存期TS时间戳Kxx的秘密密钥Kx,yx与y的会话密钥Kx[m]以x的秘密密钥加密的mTicketxx的票据Authenticatorxx的鉴别码8共享的密钥TGS与S共享KsAS与TGS共享KtgsAS与C共享Kc9Kerberos凭证票据(ticket):Ticket用来安全的在认证服务器和用户请求的服务之间传递用户的身份,同时也传递附加信息。用来保证使用ticket的用户必须是Ticket中指定的用户。Ticket一旦生成,在生存时间指定的时间内可以被client多次使用来申请同一个server的服务。鉴别码(authenticator):提供信息与Ticket中的信息进行比较,一起保证发出Ticket的用户就是Ticket中指定的用户。Authenticator只能在一次服务请求中使用,每当client向server申请服务时,必须重新生成Authenticator。10Kerberos中的票据两种票据服务许可票据(Servicegrantingticket)是客户请求服务时需要提供的票据;用TicketS表示访问应用服务器S的票据,TGS发放TicketS定义为EKS[IDC‖ADC‖IDS‖TS2‖LT4]。票据许可票据(Ticketgrantingticket)客户访问TGS服务器需要提供的票据,目的是为了申请某一个应用服务器的“服务许可票据”;票据许可票据由AS发放;用Tickettgs表示访问TGS服务器的票据;Tickettgs在用户登录时向AS申请一次,可多次重复使用;Tickettgs定义为EKtgs[IDC‖ADC‖IDtgs‖TS1‖LT2]。11KerberosV4认证过程示意图12KerberosV4认证过程(1)第一阶段,认证服务器的交互,用于获取票据许可票据:(1)C→AS:IDC‖IDtgs‖TS1(2)AS→C:EKc[KC,tgs‖IDtgs‖TS2‖LT2‖Tickettgs]其中:Tickettgs=EKtgs[KC,tgs‖IDC‖ADC‖IDtgs‖TS2‖LT2]13KerberosV4认证过程(2)第二阶段,票据许可服务器的交互,用于获取服务许可票据:(3)C→TGS:IDS‖Tickettgs‖AUC(4)TGS→C:EKc,tgs[KC,S‖IDS‖TS4‖TicketS]其中:Tickettgs=EKtgs[KC,tgs‖IDC‖ADC‖IDtgs‖TS2‖LT2]TicketS=EKS[KC,S‖IDC‖ADC‖IDS‖TS4‖LT4]AUC=EKc,tgs[IDC‖ADC‖TS3]注:C用自己的密钥可以解密EKc[KC,tgs‖IDtgs‖TS2‖LT2‖Tickettgs],获得Kctgs等。14KerberosV4认证过程(3)第三阶段,客户与应用服务器的交互,用于获得服务:(5)C→S:TicketS‖AUC(6)S→C:EKc,S[TS5+1]其中:TicketS=EKS[KC,S‖IDC‖ADC‖IDS‖TS4‖LT4]AUC=EKc,S[IDC‖ADC‖TS5]15Kerboros的不足它解决了连接窃听和用户身份认证问题,但有不足:1,必须维护Kerboros服务器,增加复杂度。2,Kerboros遭到入侵,网络安全被破坏3,无法阻止拒绝服务的攻击4,无法防止口令破解程序攻击5,维护困难16Kerberos域(realm)构成:一个完整的Kerberos环境包括一个Kerberos服务器,一组工作站和一组应用服务器。Kerberos服务器数据库中拥有所有参与用户的UID和口令散列表。Kerberos服务器必须与每一个服务器之间共享一个保密密钥。所有用户均在Kerberos服务器上注册。所有服务器均在Kerberos服务器上注册。领域的划分是根据网络的管理边界来划定的。17Kerberos域间的互通跨域的服务访问一个用户可能需要访问另一个Kerberos领域中应用服务器;一个应用服务器也可以向其他领域中的客户提供网络服务。域间互通的前提支持不同域之间进行用户身份鉴别的机制;互通域中的Kerberos服务器之间必须共享一个密钥;同时两个Kerberos服务器也必须进行相互注册。18远程服务访问的认证过程
本文标题:kerberos认证
链接地址:https://www.777doc.com/doc-4240508 .html