kerberos认证过程

在这里插入图片描述

  • KDC(Key Distribution Center): 密钥分发中心,里面包含两个服务:AS和TGS
  • AS(Authentication Server): 身份认证服务
  • TGS(Ticket Granting Server): 票据授予服务
  • TGT(Ticket Granting Ticket): 由身份认证服务授予的票据,用于身份认证,存储在内存,默认有效期为10小时
  • Pass The Ticket: 如果我们能够拿到用户的TGT,并将其导入到内存,就可以冒充该用户获得其访问权限

kerberos认证粗略流程:

1、Client向kerberos服务请求,希望获取访问Server的权限。 kerberos得到了这个消息,首先得判断Client是否是可信赖的, 也就是白名单黑名单的说法。这就是AS服务完成的工作,通过在AD中存储黑名单和白名单来区分Client。认证成功后,KDC此时生成一个随机字符串,叫Session Key,使用用户名对应的NTLM Hash加密Session Key,作为AS数据,使用KDC中某个用户(krbtgt)的NTLM Hash加密Session Key和客户端的信息,生成TGT

2、Client得到了TGT后,继续向kerberos请求,希望获取访问Server的权限。客户端需要提供TGT与第一步中AS数据使用自己NTLM Hash解密出来的Session Key加密的客户端信息跟时间戳。kerberos又得到了这个消息,这时候通过client 消息中的TGT,判断出了client拥有了这个权限。验证通过后,就会生成一个新的Session Key,我们称之为Server Session Key,这个Server Session Key主要用于和服务器(不是KDC)进行通信。同时还会生成一个Ticket,也就是最后的票据了。给了client访 问server的权限ticket(ST,也就是server hash,包含请求客户端的主机名和客户端信息加上server session key还有票据失效时间)。

3、client得到ticket后,终于可以成功访问server。client会用Ticket,Server Session Key加密的客户端信息与时间戳去请求server。这个ticket只是 针对这个server,其他server需要向TGS申请。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值