01: kerberos认证原理
1.1 kerberos认证浅析
1、kerberos定义
1. Kerberos 是一种网络认证协议,其设计目标是通过密钥系统为客户机 / 服务器应用程序提供强大的认证服务。
2. Kerberos 作为一种可信任的第三方认证服务,是通过传统的密码技术(如:共享密钥)执行认证服务的。
3. Kerberos也能达到单点登录的效果,即当Client通过了Kerberos server的认证后,便可以访问多个Real Server。
2、kerberos几个重要组件
1. KDC:负责分发密钥的密钥分配中心
2. Client:需要使用kerbores服务的客户端
3. Service:提供具体服务的服务端
3、kerberos中几个重要概念
1. Client master key: KDC中存储的Client的密钥
2. Server master key: KDC中存储的Server的密钥
3. Sclient-Server:Client与Server之间的会话密钥
4. Client Info:记录了Client本身的Ip等基本信息
4、kerberos认证交互过程
1)client从KDC获取Sclient-Server
1. 用client公钥加密Sclient-Server发送给client【Sclient-Server + Client-master-key(加密)】
2. 用server公钥加密Sclient-Server+ ClientInfo发送给client【Sclient-Server + ClientInfo + Server-master-key(加密)】
2)client用Sclient-Server加密发送数据
1. Client用自己的mClient-master-key解密KDC传过来的第一个包获得会话密钥Sclient-Server
2. 并用Sclient-Server加密自己的的信息和时间戳打包后传送给Server,此时Client开始和Server交互
3)server用私钥获取Sclient-Server,并用Sclient-Server解密client信息
1. Server会收到两个数据包,一个用会话密钥(Sclient-Server)加密,一个用自己的(Server-master-key)加密。
2. Server先用自己的Server-master-key解密获取会话密钥(Sclient-Server)和一份关于Client的信息。
3. 然后Server拿到解密后获取到的会话密钥(Sclient-Server)再解开另外一个数据包,获得另一份关于Client的信息和时间戳。
5、kerberos认证图解

6、kerberos细节
1)上面有个数据包是KDC经Client转发给Server的,为什么不直接发给Server?
1. 因为Server可能给多个Client提供服务,这样Server需要维护一个Client和会话密钥的对应表,这对Server是一个负担。
2)为什么要发两份关于Client的信息给Server?
1. 通过这两份数据的对比,Server就能判断出是不是对的Client在访问服务。
3)Client是如何判断自己在访问对的Server呢?
1. 因为Client给Server的一个数据包是用Server的master key来加密的所以只有对的Server才能解密。
4)为什么要用会话密钥
1. 通信方的master key是长期有效的,如果在网络上传输,一旦被截取,理论上来说只要有足够的时间是可以破解的。
2. 所以我们才用临时的会话密钥来通信,一段时间后会话密钥会过期,同时时间戳也防止了,恶意用户重复使用同一个数据包。
5)为什么要用时间戳?
1. 如果Client向Server传送的数据包被其他的Client截取,然后自己拿来向Server请求服务这,这样就会出问题
2. Server收到请求后将从解密后的数据包中获得的时间戳和当前时间对比,一旦超过一定范围将直接拒绝请求
1.2 kerberos常用命令
https://www.cnblogs.com/chwilliam85/p/9679845.html
https://www.cnblogs.com/kisf/p/7494203.html
1111111111111111111111111111
01: kerberos认证原理的更多相关文章
- Kerberos认证原理及基于Kerberos认证的NFS文件共享
目录 Kerberos认证原理 简介 client访问server过程 一.Authentication Service Exchange (AS Exchange) 二.Ticket Grantin ...
- Kerberos认证原理简介
1.1 What is Kerberos 1.1.1 简单介绍 Kerberos是一个用于鉴定身份(authentication)的协议, 它采取对称密钥加密(symmetric-key crypto ...
- kerberos认证原理---讲的非常细致,易懂
前几天在给人解释Windows是如何通过Kerberos进行Authentication的时候,讲了半天也别把那位老兄讲明白,还差点把自己给绕进去.后来想想原因有以下两点:对于一个没有完全不了解Ker ...
- 在kerberos认证过程中Active Directory的作用
LDAP介绍 1),ladp(Lightweight Directory Access Protocol),轻量级目录访问协议,提供被称为目录服务的信息服务,特别是基于X.500(构成全球分布式的目录 ...
- 图解Kerberos认证工作原理
本文是我在看了这篇英文说明之后的总结 https://technet.microsoft.com/zh-cn/library/cc961976.aspx 是总结,不是翻译,所以是我看后按自己的理解写的 ...
- Kerberos认证与攻击学习总结
0.背景 聆听了n1nty大佬(90后黑客代表)的谆谆指导,学习了n1nty大佬的基本操作,决定总结一下,做一个简要的读书笔记,也把之前自己记录的关于Windows的安全的一些博客能够串联起来.所以首 ...
- kerberos认证协议分析
Kerberos认证协议分析 Kerberos认证协议流程 如上图: * 第一步:client和认证服务器(AS)通信完成认证过程,如果认证成功AS返回给client一个TGT(用来向TGS获取tic ...
- SSH认证原理和批量分发管理
SSH密码认证原理 几点说明: 1.服务端/etc/ssh目录下有三对公钥私钥: [root@m01 ssh]# ls moduli ssh_config sshd_config ssh_host_d ...
- Cloudera Hadoop启用Kerberos认证
一.Kerberos 二.安装 node01服务器安装Kerberos的核心服务master KDC,node02和node03安装Kerberos client cm也安装在node01上了 1.m ...
随机推荐
- 01背包 || BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草 || Luogu P2925 [USACO08DEC]干草出售Hay For Sale
题面:P2925 [USACO08DEC]干草出售Hay For Sale 题解:无 代码: #include<cstdio> #include<cstring> #inclu ...
- 一篇搞懂python文件读写操作(r/r+/rb/w/w+/wb/a/a+/ab)
关于文件操作的几种常用方式,网上已有很多解说,内容很丰富,但也因此有些杂乱复杂.今天,我就以我个人的学习经验写一篇详细又易懂的总结文章,希望大家看完之后会有所收获. 一.核心功能 ‘r’ ...
- 去除桌面SVN问号
由于误操作,桌面文件全部带着问号. 找到一种比较方便的方法解决. 1.显示受保护文件.文件夹win7系统 - 随便打开一个文件夹 - 在菜单栏里点 工具 - 文件夹选项 - 查看 以下如图中选择 2 ...
- MySQL 的安装
MySQL的全部安装步骤. 1::本案例要求熟悉MySQL官方安装包的使用,快速构建一台数据库服务器: 安装MySQL-server.MySQl-client软件包 修改数据库用户root的密码 确认 ...
- UIPullRefreshFlash模块demo示例
UIPullRefreshFlash 模块概述:UIPullRefreshFlash模块对引擎新推出的下拉刷新接口进行了一层封装,app可以通过此模块来实现带炫酷动画效果的下拉刷新功能.使用此模块,在 ...
- 保护url时效性和安全性的一种解决方案
几乎都是同事小哥哥帮我铺路,给我参考链接,实现的理论方法以及知识,我只剩下看资料,敲代码,出错了也是他帮我看着一步步解释搞定过来的.嗯,大好人一枚. ok,思路: 是生成一个随机数放在url里面,当做 ...
- [转]理解 Bias 与 Variance 之间的权衡----------bias variance tradeoff
有监督学习中,预测误差的来源主要有两部分,分别为 bias 与 variance,模型的性能取决于 bias 与 variance 的 tradeoff ,理解 bias 与 variance 有助于 ...
- for里面是采用setInterval遍历二维数组,for循环到最后一个数的时候,才执行setInterval的问题解决
点击播放看效果 <!doctype html> <html lang="en"> <head> <meta charset="U ...
- Appium IOS 使用多模拟器并发执行测试
申明一下 转载请注明出处 复制粘贴请滚蛋 !!!!!!!! 最近在是用appium进行app的并发测试,并且Android已经实现在同一台PC机使用多个模拟器并发测试的功能 这里说一句模拟器使 ...
- JSP页面、包含
JSP页面概念: html称为静态页面,而与相对的JSP称为动态页面(一个特殊的servlet)二者的区别在于,html只能定义css,js.但是在JSP中除了html可以定义的文件外,还可以定义Ja ...