?悬赏:Kerberos认证Service_key及Ticket获取相关问题思路求教

简介: 借宝地一用,谢谢! 思路一: 在Windows客户端与Windows服务器的kerberos认证过程中,通过第二阶段客户端向KDC(密钥分配中心)的TGS数据交互,客户端获取到了可以与服务端会话的Service_key和Ticket。 

问题一:如果服务器端KDC用开源的Samba实现(前提Samba内实现了MIT的kerberos协议),是不是我们就能读取到Service_key了呢?

   

    思路二:

     Windows服务器(假定Windows server2008R2, IP地址:192.168.0.76)充当Exchange2010服务器, Windows客户端(假定Windows 7, IP地址:192.168.0.176) 充当Exchange2010客户端。


    客户端会176向服务器76发起请求认证的时候,我们可以设置仅kerberos认证。此时会有数据包的交互,客户端176向服务器76的KDC(密钥管理中心)的AS(认证服务器)获取票据Ticket后,再向服务器76端的KDC的TGS(票据授权服务器)获取可以向服务器76认证的Service_key及票据Ticket。


    此时,服务器76端的系统Windows Server2008R2是包含KDC的。因为Server2008R2内还含有主域控制器(PDC),我们知道Linux操作系统,比如Redhat,Centos是包含开源Samba软件的,或者我们可以安装新的版本,如Samba4.0.1x。而查资料可以,Samba是可以充当PDC的,且samba集成KDC的功能。资料源头(Redhat官网):https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/4/html


     问题二:用Samba作为中间DC(域名控制器),能否同步过来Server端认证客户端时的Service_key和票据Ticket信息,如果可行的话,大致的接口是什么?


     进展:已经知道Samba-tool(samba内含工具)从Red-hat端实现获取到了服务器端的用户名信息,但是至于密钥的获取还有一段路要走。且samba-tool以DC加入域的概念也不好理解。


     困难点如下:

     困难一:Samba的配置相对复杂,和我设定相关的配置需要谨慎查询资料,稍有不慎,会导致各种问题,易愈陷愈深;


     困难二:Windows域的概念复杂,如DC的功能。Redhat官网指出,Windows充当PDC时,Samba不能充当BDC(备份域控制器);同时Samba充当PDC时,Windows不能充当BDC。但思路二,想从同步角度思考,又避免不了DC之间的同步。


     困难三:Kerberos认证体系复杂,需要反复阅读Kerberos官网协议文档才能理解其精髓。


     困难四:思路一、二的目的是一样的,但结果的获取需要结合Windows域体系、Samba体系、Kerberos认证体系,三者结合交叉的概念也需要广查资料思考。


相关文章
|
Java 网络安全 Maven
简记:一个flutter构建错误A problem occurred configuring project ‘:smart_auth‘. > Could not res
简记:一个flutter构建错误A problem occurred configuring project ‘:smart_auth‘. > Could not res
766 0
|
Kubernetes 关系型数据库 MySQL
制品库 Jfrog Artifactory 搭建私服
JFrog Artifactory 功能最强大的二进制制品仓库。在 Google、Apple、思科、甲骨文、华为、腾讯等众多世界500强公司中都有大规模使用,在二进制软件制品管理领域处于绝对领先地位。与其他服务不同,JJFrog Artifactory 在版本发行上分类较多且杂。
1650 0
制品库 Jfrog Artifactory 搭建私服
|
12月前
|
消息中间件 网络协议 C#
C#使用Socket实现分布式事件总线,不依赖第三方MQ
`CodeWF.EventBus.Socket` 是一个轻量级的、基于Socket的分布式事件总线系统,旨在简化分布式架构中的事件通信。它允许进程之间通过发布/订阅模式进行通信,无需依赖外部消息队列服务。
C#使用Socket实现分布式事件总线,不依赖第三方MQ
|
6月前
|
XML 前端开发 Java
SpringBoot实现文件上传下载功能
本文介绍了如何使用SpringBoot实现文件上传与下载功能,涵盖配置和代码实现。包括Maven依赖配置(如`spring-boot-starter-web`和`spring-boot-starter-thymeleaf`)、前端HTML页面设计、WebConfig路径映射配置、YAML文件路径设置,以及核心的文件上传(通过`MultipartFile`处理)和下载(利用`ResponseEntity`返回文件流)功能的Java代码实现。文章由Colorful_WP撰写,内容详实,适合开发者学习参考。
554 0
|
前端开发 开发者 容器
彻底学会CSS 弹性布局flex
【4月更文挑战第1天】 彻底学会CSS 弹性布局flex
207 0
|
存储 人工智能 数据可视化
AI计算机视觉笔记二十一:PaddleOCR训练自定义数据集
在完成PaddleOCR环境搭建与测试后,本文档详细介绍如何训练自定义的车牌检测模型。首先,在`PaddleOCR`目录下创建`train_data`文件夹存放数据集,并下载并解压缩车牌数据集。接着,复制并修改配置文件`ch_det_mv3_db_v2.0.yml`以适应训练需求,包括设置模型存储目录、训练可视化选项及数据集路径。随后,下载预训练权重文件并放置于`pretrain_models`目录下,以便进行预测与训练。最后,通过指定命令行参数执行训练、断点续训、测试及导出推理模型等操作。
1145 3
|
前端开发 计算机视觉
Building wheel for opencv-python (pyproject.toml) ,安装命令增加 --verbose 参数
Building wheel for opencv-python (pyproject.toml) ,安装命令增加 --verbose 参数
704 2
|
定位技术 API 开发工具
iOS语言本地化/国际化宝典
iOS语言本地化/国际化宝典
747 0
iOS语言本地化/国际化宝典
|
弹性计算 Linux 应用服务中间件
【ECS生长万物之开源】部署并使用Docker
Docker是一款开源的应用容器引擎,具有可移植性、可扩展性、高安全性和可管理性等优势。开发者可将应用程序和依赖项打包到一个可移植的容器中,快速发布到Linux机器上并实现虚拟化,实现更高效地构建、部署和管理应用程序。本文介绍如何在云服务ECS实例上,部署并使用Docker。
|
算法 C++
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
1983 0