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认证原理的更多相关文章

  1. Kerberos认证原理及基于Kerberos认证的NFS文件共享

    目录 Kerberos认证原理 简介 client访问server过程 一.Authentication Service Exchange (AS Exchange) 二.Ticket Grantin ...

  2. Kerberos认证原理简介

    1.1 What is Kerberos 1.1.1 简单介绍 Kerberos是一个用于鉴定身份(authentication)的协议, 它采取对称密钥加密(symmetric-key crypto ...

  3. kerberos认证原理---讲的非常细致,易懂

    前几天在给人解释Windows是如何通过Kerberos进行Authentication的时候,讲了半天也别把那位老兄讲明白,还差点把自己给绕进去.后来想想原因有以下两点:对于一个没有完全不了解Ker ...

  4. 在kerberos认证过程中Active Directory的作用

    LDAP介绍 1),ladp(Lightweight Directory Access Protocol),轻量级目录访问协议,提供被称为目录服务的信息服务,特别是基于X.500(构成全球分布式的目录 ...

  5. 图解Kerberos认证工作原理

    本文是我在看了这篇英文说明之后的总结 https://technet.microsoft.com/zh-cn/library/cc961976.aspx 是总结,不是翻译,所以是我看后按自己的理解写的 ...

  6. Kerberos认证与攻击学习总结

    0.背景 聆听了n1nty大佬(90后黑客代表)的谆谆指导,学习了n1nty大佬的基本操作,决定总结一下,做一个简要的读书笔记,也把之前自己记录的关于Windows的安全的一些博客能够串联起来.所以首 ...

  7. kerberos认证协议分析

    Kerberos认证协议分析 Kerberos认证协议流程 如上图: * 第一步:client和认证服务器(AS)通信完成认证过程,如果认证成功AS返回给client一个TGT(用来向TGS获取tic ...

  8. SSH认证原理和批量分发管理

    SSH密码认证原理 几点说明: 1.服务端/etc/ssh目录下有三对公钥私钥: [root@m01 ssh]# ls moduli ssh_config sshd_config ssh_host_d ...

  9. Cloudera Hadoop启用Kerberos认证

    一.Kerberos 二.安装 node01服务器安装Kerberos的核心服务master KDC,node02和node03安装Kerberos client cm也安装在node01上了 1.m ...

随机推荐

  1. 快速体验 Laravel 自带的注册、登录功能

    快速体验 Laravel 自带的注册.登录功能 注册.登录经常是一件很伤脑筋的是,Laravel 提供了解决方案,可以直接使用它.试过之后,感觉真爽! 前提:本地已安装好了 PHP 运行环境.mysq ...

  2. Python函数部分(1)

    之前,我们编代码时程序遵循的原则是:根据逻辑从上至下实现功能,其往往用一大段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复制到现需功能处.这种方式虽然可以应付一般性 ...

  3. Overview of Azure Storage

    Azure Storage types Blob storage. Containers for data blobs. The three types of blobs are: Page blob ...

  4. cesium 飞线 瓣体传感器(雷达扫描) 效果

    参考:github地址 本人新手,npm webpack 这些还是一知半解,只记录自己得到成功结果的操作步骤,可能存在多余或错误的步骤. 1.github 把代码下载下来,解压. 2.webstorm ...

  5. Python request SSL证书问题

    错误信息如下: 1 requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'tls_process_s ...

  6. 剑指offer-机器人的运动范围

    题目描述 地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子. 例如,当k为18时,机器人能 ...

  7. bios下能看到硬盘,进入系统看不到的解决方法

    新加了个固态硬盘 安装完系统后,打开我的电脑 看不到老硬盘的分区,进入磁盘管理也看不到. 最后,重启 选择老硬盘进入系统后, 再重启,进入新硬盘的系统, 就显示出来了

  8. 【论文阅读】Deep Mixture of Diverse Experts for Large-Scale Visual Recognition

    导读: 本文为论文<Deep Mixture of Diverse Experts for Large-Scale Visual Recognition>的阅读总结.目的是做大规模图像分类 ...

  9. monent API详解

    参考链接:https://www.jianshu.com/p/9c10543420de

  10. FB面经 Prepare: Count Unique Island

    数unique island, 比如 110000 110001 001101 101100 100000 总共两个unique岛,不是四个 方法可以是记录每次新的岛屿搜索的路径,left,right ...