这里写目录标题

  • 什么是kerberos协议
    • kerberos协议简略流程以及详细流程
      • kerberos协议局限性

什么是kerberos协议

kerberos是一种网络认证协议,通过密钥系统为客户端以及服务器端提供认证服务,该过程不依赖于主机操作系统认证,不依赖主机地址信任,不要求网络内所有主机物理安全(假定该网络上的所有数据可以任意进行读取,修改)。kerberos作为可信任的第三方服务,是通过传统密码技术,进行安全服务的.

kerberos协议简略流程以及详细流程

首先要明白参与对象,一共有三个,客户端(client),服务器端(server),以及KDC(密钥分发中心)就是我们说的域控DC,其中KDC中又有几个名词,CD(活动目录,DC类似于门卫,而CD就是门卫手里的名单,允许谁进行访问,谁不能进行访问)TGT(票据授予的票据),TGS(票据授予服务,为客户端生成某个服务的票据),AS(客户认证,为客户端生成TGT的服务)
粗略流程如下
1.客户端向kerberos请求,希望访问某个服务器,kerberos得到请求后,通过AD判断该用户是否可以访问,是否在白名单中,如果可信,返回AS,AS会发送一个TGT个客户。
2.客户端得到TGT后,继续向kerberos请求,希望获取访问某个服务器的权限,通过TGT判断出客户是否具有该权限,如果具有,则发送一个允许访问的Ticket
3.客户端得到Ticket后,就可以发起请求访问服务器了
详细流程如下
1.客户端向kerberos发送请求访问某个服务器的请求,在AD检查完信息后,
AS会返回两条信息,一条client/TGS会话密钥,用来客户端与TGS通信,使用用户的NTLM哈希进行加密第二条TGT,包含1中的密钥,用户id,有效时间,通过TGS密钥加密。客户端收到TGT后,用自己的NTLM哈希解密,获得TGS密钥,但是不需要解密消息二,就可以直接向TGS发起请求.
2.客户端像TGS发起两条信息,一条是刚才消息二的信息和索要服务的服务ID,第二条是用户id与时间戳,通过TGS密钥加密。Kerberos在收到请求后,kerberos先查询所需服务ID是否存在,并用TGS密钥解密消息三获得用户ID时间戳,核对后,再给客户端发送两条信息,一条是客户端服务器票据,另外一条是client/ss会话密钥,通过client/TGS密钥加密。随后客户端用消息1中的client/TGS解密消息6,得到client/ss密钥,而消息五无法被解密,因为其通过服务器密码加密.
3.客户端拿到client/ss密钥后,就能发起请求了,他向服务器发送两条消息消息5,用服务器密钥加密的客户端服务器票据,第二条新的用户id时间戳,使用client/ss会话密钥加密,服务器 收到后,用自己的密钥得到client/ss密钥,和服务器客户端票据,在使用client/ss密钥解密,得到新id,时间戳,最后服务器向客户端发送确认,用client/ss密钥加密,客户端收到后,解密验证并开始通信
图片就百度上随便找了个

kerberos协议局限性

1.如果kerberos服务器出问题,那就没办法请求服务了
2.票据具有时效性,时间一般不超过十分钟
3.DC被控制,全部寄
4.客户端防御差,hash或密码泄露

windows认证原理kerberos协议详解相关推荐

  1. 思科ccna认证工程师NETCONF协议详解网工必看

    思科ccna认证工程师NETCONF协议详解网工必看,这些年随着SDN的热潮,一个诞生了十年之久的协议再一次引起了人们的重视,它就是NETCONF协议. 网络配置协议NETCONF(Network C ...

  2. 全网最详细 | Kerberos协议详解

    目录 Kerberos基础 PAC特权属性证书 1. PAC结构 2. PAC凭证信息 3. PAC签名 4. KDC验证PAC 5. PAC在kerberos中的优缺点 Kerberos实验 AS- ...

  3. Kerberos协议详解

    协议的安全主要依赖于参加者对时间的松散同步和短周期的叫做Kerberos票据的认证声明. 下面是对这个协议的一个简化描述,将使用以下缩写: AS(Authentication Server)= 认证服 ...

  4. 基于51的串行通讯原理及协议详解(uart)

    串行与并行通讯方式 并行:控制简单,传输速度快.线多,长距离成本较高且同时接受困难. 串行:将数据字节分成一位一位的行驶在一条传输线上进行传输.如图: 同步与异步串行通讯方式 同步串行通讯方式:同步通 ...

  5. HTTPS协议详解(三):PKI 体系

    本文大部分内容摘自:http://www.wosign.com/faq/faq2016-0309-03.htm 尊重知识产权,转载注明Wosign -------------------------- ...

  6. 应用层协议:HTTP与HTTPS协议详解、二者的区别

    http协议详解 1.HTTP协议:超文本传输协议 是一种分布式.合作式.多媒体信息系统服务,面向应用层的协议.是一种通用的,不分状态的协议.是一种请求/应答协议. 1.1.HTTP/1.0和HTTP ...

  7. HTTP协议详解(转)

    HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1.0的第 ...

  8. WebSocket协议详解及应用

    标签:websocket WebSocket协议详解及应用(七)-WebSocket协议关闭帧 本篇介绍WebSocket协议的关闭帧,包括客户端及服务器如何发送并处理关闭帧.关闭帧错误码及错误处理方 ...

  9. 一篇有点长的HTTP协议详解

    一.HTTP简介 01.什么是HTTP HTTP(HyperText Transfer Protocol ,超文本传输协议),是一个基于请求与响应的,无状态的,应用层的协议,常基于TCP/IP协议传输 ...

最新文章

  1. Matplot pyplot绘制单图,多子图不同样式详解,这一篇就够了
  2. linux简单目录,Linux下各目录简单整理
  3. input type=range标签用法实例代码
  4. taskAffinity(Activity默认Application,Application默认包名,Task默认根Activity) singleInstance放入新栈
  5. SparkSQL读取hive中的数据,行转列的两种方式【行转列专用函数,UDAF】
  6. Qt文档阅读笔记-QGraphicsItem events解析与实例
  7. 在linux搭性能测试环境,性能测试学习第七天-----JMeter之linux环境部署篇
  8. paip.提升用户体验之全角半角
  9. Android 应用程序模块: 应用, 任务, 进程, 和线程
  10. 计算100以内奇数和偶数的数量
  11. 单路电压表c语言编程,基于ADC0809和AT89S52单片机的数字电压表的设计
  12. 第十六天(配置BPDU,TCN BPDU)
  13. M*LMM缩略图文件管理模式模块开发(一个含有listview和gridview浏览模式的文件管理器)
  14. ValueError: Variable eval_net/l1/w1 already exists, disallowed. Did you mean to set reuse=True or...
  15. Android自定义键盘的几个小点
  16. JAVA网络编程个人笔记 第4章 inet地址
  17. mysql group by 季度_sql server如何按季度分组统计所有的数据
  18. 用Win10秘钥激活Windows 10:更改产品密钥与密钥重置
  19. STL——stack
  20. 【Google Earth Studio】初步探索

热门文章

  1. 我的数字化IT项目管理体系
  2. 计算机显示屏对比度怎么调整,如何在笔记本电脑上调整显示器的亮度和对比度...
  3. 开发、部署系统环境 - 隔离型多系统
  4. c语言中函数isalpha,isalpha C语言中isalnum()函数和isalpha()函数的对比
  5. 用chrome 播放GB28181中的视频
  6. 书法教学仪的功能特性及参数有哪些?
  7. spring boot在线考试系统 毕业设计-附源码461317
  8. 榜单:揭示年度值得借鉴的100个创新案例
  9. Java获取手机号码归属地
  10. 如何提高客户满意度?为什么客户服务尤其重要?