| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> kerberos认证协议 -> 正文阅读 |
|
[系统运维]kerberos认证协议 |
????????kerberos是一种网络认证协议,其设计目标是通过密钥系统为客户机/服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意地读取、修改和插入数据。在以上情况下,kerberos作为一种可信任的第三方认证服务,是通过传统的密码技术(如:共享密钥)执行认证服务的。 kerberos和NTLM的区别: ????????在kerberos之前,Microsoft使用一种称为NTLM的身份验证技术。NTLM代表NT LAN Manager,是一种质询响应身份验证协议。目标计算机或域控制器会质询并检查密码,并存储密码哈希以供继续使用。这两个系统之间的最大区别是第三方验证和kerberos中更强大的加密功能。该过程中的这一额外步骤为NTLM提供了重要的额外安全层。
具体的kerberos认证流程: 一、从AS服务器中获取TGT票据 用户在客户端输入账号和密码之后,会对密码进行hash处理,作为user-secret-key 1、客户端将用户名发送给AS服务器申请服务,在AS服务器中会对用户名进行验证,在AS服务器本地数据库中查询到该用户名的密码,并使用hash生成user-secret-key。 2、AS服务器向用户发送两个信息: ????????①Client/TGS会话秘钥,使用user-secret-key进行加密 ????????②TGT,包含TGS会话密钥,用户信息,时间戳,TGT有效期。使用TGS密钥进行加密 3、用户接收到消息之后,会使用本地的user-secret-key对消息1进行解密,如果解密成功,说明用户提供的凭据是正确的,此时用户得到了加密后的TGT。 二、从TGS服务器中获取访问权限 1、客户端向TGS服务器发送信息: ? ? ? ? ①第一步骤中的TGT ? ? ? ? ②认证信息(认证符Authenticator),包含用户id以及时间戳,通过TGS会话密钥进行加密。 2、TGS服务器收到消息后,会使用TGS密钥对消息1进行解密,获取到TGS会话密钥,进而对消息2进行解密,再对用户id以及时间戳进行认证,如果认证成功,向客户端发送消息 ? ? ? ? ①client-server-ticket(包含SS会话密钥,用户名信息以及时间戳),使用SS密钥进行加密 ? ? ? ? ②SS会话密钥使用TGS会话密钥进行加密 3、客户端收到信息后会对消息2进行解密,获得SS会话密钥。 三、访问服务 1、客户端向SS服务器发送以下消息: ? ? ? ? ①第二步骤中的client-server-ticket ? ? ? ? ②新的Authenticator,包含用户信息,时间戳。通过SS会话密钥进行加密 2、SS服务器收到消息后,会使用SS密钥对消息1进行解密,解密后使用SS会话密钥对消息2解密,解密成功后会得到Authenticator,认证之后,发送: ? ? ? ? ①新时间戳,client发送的时间戳加1,通过SS会话密钥进行加密 3、客户端收到时间戳后,确认解密,成功之后发送服务请求 4、SS服务器收到之后提供服务 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:22:30- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |