Kerberos 学习笔记
最近在工作中调试vmware identity manager 产品的SSO功能,有机会深入了解了一下Kerberos的工作原理,随笔记录一下,以作将来回顾之用。
什么是Kerberos,参看wiki- https://en.wikipedia.org/wiki/Kerberos_(protocol)。简单说Kerberos是一种网络认证协议,它是通过使用秘钥加密的方式来提供客户端,服务器程序之间的安全认证。例如,微软Windows2000以后的系统认证过程就是基于Kerberos的。
为什么叫Kerberos,Kerberos传说是希腊神话中的守护地狱的一条有三个头的大狗,貌似在哈利波特第一部<哈利波特与魔法石>也有一只三头狗。三个头代表了Kerberos协议中的三方,Client,Server和KDC.
图片出处: http://mccltd.net/blog/?p=1053
网上对Kerberos的协议介绍有好多,http://blog.csdn.net/wulantian/article/details/42418231这篇博客是讲的比较透彻深入的,然而读下来恐怕还是比较烧脑,时间一长恐怕也就忘记了。本文中对Kerberos的介绍会通过一个简单的例子来进行,来帮助粗线条地理解Kerberos的认证方式,会和具体的协议细节有所差异。
我们假设一个场景,战争年代,有两个地下工作者张三,李四在被派到某处从事秘密工作,现在张三因为工作需要,找到了开酒馆掩护身份的酒馆老板李四,张三现在要做的事情,就是向李四证明我就是张三,不是钓鱼执法的,这是一个典型的认证的过程。
那怎么做呢?张三,李四的派出机构早就给他们设计好了认证过程,在这里的派出机构就是Kerberos协议中的KDC,比如微软的AD域服务器。在两人出发之前,发给了每个人一把钥匙(对应用户密码或者密码hash数值),派出机构也保留了一把备用钥匙(AD域服务器上保存着每个域用户的密码或者密码hash数值)。张三,李四就分别对应client和server了。
1. 张三要向派出机构报告一下:我要和李四接头,给我一个接头暗号呗。
2. 派出机构收到张三要和李四接头的请求以后,就发了两个小盒子给张三,并且上了锁,只能用两人自己的钥匙才能打开。
第一个盒子里面有一张纸条写着接头暗号:宝塔镇河妖。张三的钥匙可以打开这个盒子
第二个盒子里面有两张纸条,一张纸条也写着接头暗号:宝塔镇河妖。第二张纸条写着:来人是张三。zh只有李四的钥匙才能打开这个盒子。张三是打不开这个盒子的,确保张三不会篡改里面的内容。
3. 张三收到两个小盒子以后,就用自己的钥匙打开了第一个小盒子,看到接头暗号:宝塔镇河妖。
4. 然后张三就带着第二个盒子去找开酒馆的李四了,见到李四,张三把第二个盒子交给李四,并且说出了接头暗号:宝塔镇河妖,并且宣称自己是张三。
5. 李四用自己的钥匙打开了张三带给他的盒子,看到了接头暗号是宝塔镇河妖。然后又看到另外一张纸条上写着来人是张三。嗯,都对得上。他就是张三,那现在先把酒摆上喝点,咱们谈谈下一步的工作安排吧。
这个例子用来讲述Kerberos的基本的工作原理,当然Kerberos协议要比这个例子复杂的多。所以您可千万别较真,要是我钥匙丢了怎么办,有人把小盒子掉一个包之类的,该怎么办?这些就是Kerberos协议要进一步解决的问题了,就需要您自己去看Kerberos协议的细节了。
关于作者:Sam Zhao,EUC解决方案部门经理。在软件开发,测试,项目管理方面有13年IT从业经历,发表过五个专利以及合著书一部
最近在工作中调试vmware identity manager 产品的SSO功能,有机会深入了解了一下Kerberos的工作原理,随笔记录一下,以作将来回顾之用。
什么是Kerberos,参看wiki- https://en.wikipedia.org/wiki/Kerberos_(protocol)。简单说Kerberos是一种网络认证协议,它是通过使用秘钥加密的方式来提供客户端,服务器程序之间的安全认证。例如,微软Windows2000以后的系统认证过程就是基于Kerberos的。
为什么叫Kerberos,Kerberos传说是希腊神话中的守护地狱的一条有三个头的大狗,貌似在哈利波特第一部<哈利波特与魔法石>也有一只三头狗。三个头代表了Kerberos协议中的三方,Client,Server和KDC.
图片出处: http://mccltd.net/blog/?p=1053
网上对Kerberos的协议介绍有好多,http://blog.csdn.net/wulantian/article/details/42418231这篇博客是讲的比较透彻深入的,然而读下来恐怕还是比较烧脑,时间一长恐怕也就忘记了。本文中对Kerberos的介绍会通过一个简单的例子来进行,来帮助粗线条地理解Kerberos的认证方式,会和具体的协议细节有所差异。
我们假设一个场景,战争年代,有两个地下工作者张三,李四在被派到某处从事秘密工作,现在张三因为工作需要,找到了开酒馆掩护身份的酒馆老板李四,张三现在要做的事情,就是向李四证明我就是张三,不是钓鱼执法的,这是一个典型的认证的过程。
那怎么做呢?张三,李四的派出机构早就给他们设计好了认证过程,在这里的派出机构就是Kerberos协议中的KDC,比如微软的AD域服务器。在两人出发之前,发给了每个人一把钥匙(对应用户密码或者密码hash数值),派出机构也保留了一把备用钥匙(AD域服务器上保存着每个域用户的密码或者密码hash数值)。张三,李四就分别对应client和server了。
1. 张三要向派出机构报告一下:我要和李四接头,给我一个接头暗号呗。
2. 派出机构收到张三要和李四接头的请求以后,就发了两个小盒子给张三,并且上了锁,只能用两人自己的钥匙才能打开。
第一个盒子里面有一张纸条写着接头暗号:宝塔镇河妖。张三的钥匙可以打开这个盒子
第二个盒子里面有两张纸条,一张纸条也写着接头暗号:宝塔镇河妖。第二张纸条写着:来人是张三。zh只有李四的钥匙才能打开这个盒子。张三是打不开这个盒子的,确保张三不会篡改里面的内容。
3. 张三收到两个小盒子以后,就用自己的钥匙打开了第一个小盒子,看到接头暗号:宝塔镇河妖。
4. 然后张三就带着第二个盒子去找开酒馆的李四了,见到李四,张三把第二个盒子交给李四,并且说出了接头暗号:宝塔镇河妖,并且宣称自己是张三。
5. 李四用自己的钥匙打开了张三带给他的盒子,看到了接头暗号是宝塔镇河妖。然后又看到另外一张纸条上写着来人是张三。嗯,都对得上。他就是张三,那现在先把酒摆上喝点,咱们谈谈下一步的工作安排吧。
这个例子用来讲述Kerberos的基本的工作原理,当然Kerberos协议要比这个例子复杂的多。所以您可千万别较真,要是我钥匙丢了怎么办,有人把小盒子掉一个包之类的,该怎么办?这些就是Kerberos协议要进一步解决的问题了,就需要您自己去看Kerberos协议的细节了。
关于作者:Sam Zhao,EUC解决方案部门经理。在软件开发,测试,项目管理方面有13年IT从业经历,发表过五个专利以及合著书一部
本文转自 桌面虚拟化 51CTO博客,原文链接:http://blog.51cto.com/vmwareeuc/1870674
Kerberos 学习笔记相关推荐
- 大数据技术-Kerberos学习笔记
目录 Kerberos概述 Kerberos部署 Kerberos基本使用 Kerberos数据库操作 Kerberos认证操作 Kerberos生成Keytab Hadoop Kerberos配置 ...
- 学习笔记(十五)——镜像的知识点与注意事项
学习笔记(十五)--镜像的知识点与注意事项 一.基础知识 1.SQL Server镜像只有两种模式:高安全模式和高性能模式.两种模式的主要区别在于在事务提交后的操作. 在高性能模式下,主体服务器不需要 ...
- ZooKeeper官方文档学习笔记03-程序员指南03
我的每一篇这种正经文章,都是我努力克制玩心的成果,我可太难了,和自己做斗争. ZooKeeper官方文档学习笔记04-程序员指南03 绑定 Java绑定 客户端配置参数 C绑定 陷阱: 常见问题及故障 ...
- sqlserver 2012实施与管理学习笔记(一):选型和部署之单机部署、故障转移群集与日志传送
sqlserver 2012实施与管理学习笔记(一):选型和部署之单机部署.故障转移群集与日志传送 数据库的选型和部署 sqlserver的安装和升级 选择高可用性和灾难恢复技术 故障转移群集 日志传 ...
- KALI LINUX渗透测试学习笔记
KALI LINUX渗透测试学习笔记 (苑房弘主讲) 第1章 课程介绍 任务1:Kali Linux渗透测试介绍.exe 安全问题的根源: 分层思想 只求功能实现 最大的威胁是人 渗透测试: 尝试挫败 ...
- 【Flink】学习笔记-20200302更新
flink-notes flink的一些学习笔记,将在github上持续更新 https://github.com/pierre94/flink-notes 一.技术博客索引 Flink中文官方文档 ...
- 2021-08-31《内网安全攻防》学习笔记,第二章-域内信息收集(转自PowerLiu)
<内网安全攻防>学习笔记,第二章-域内信息收集 2020-07-212020-07-21 15:08:47阅读 1.1K0 2.1 内网信息搜集概述 当渗透测试人员进入内网后,面对的是一片 ...
- Ranger学习笔记
Ranger学习笔记 1 简介 Apache Ranger 是 Hadoop 平台上操作.监控.管理数据安全的集中式安全管理框架.Ranger 的愿景是在 Apache Hadoop 生态系统中提供全 ...
- 《密码编码学与网络安全》William Stalling著---学习笔记(二)【知识点速过】【数字签名+密钥管理分发+用户认证】
提示:博文有点长,请保持耐心哦~ 前一篇文章: <密码编码学与网络安全>William Stalling著-学习笔记(一)[知识点速过][传统密码+经典对称加密算法+经典公钥密码算法+密码 ...
最新文章
- 备份集过期时间_TiDB备份恢复方式你知多少?
- Linux下实现文件双向同步
- I Cannot Breathe:如果没有这些软件的话(Mac篇)
- Vue 脚手架||Vue 脚手架的基本用法
- 【Nginx】判断URL中是否存在某个参数Parameter
- 【SSM面向CRUD编程专栏 1】Spring简介 xml配置文件 依赖注入 数据注入
- 本质矩阵 基础矩阵 单应矩阵 (1)
- IntelliJ IDEA For Mac 快捷键,够骚,速度收藏!
- Windows版navicat11破解
- SIP电话为什么突然断线
- 【股票】股票交易的手续费介绍以及计算
- MVP实现Recy多条目展示
- 三重积分平均值_质心计算
- AngularJs基础视频教程 大漠穷秋AngularJs基础教程 AngularJs入门教程
- wifi认证源码html,openwrt 实现本地wifidog简单认证,认证端纯html
- 数组中重复的元素(剑指Offe.03)
- Chevereto图片托管php源码_Chevereto图片托管 3.10.13|图片动画|PHP源码
- mysql 修改表字段
- 2011Android技术面试整理附有详细答案(包括百度、新浪、中科软等多家公司笔试面试题)
- 5V转换3.3V电平的几种简单方法