在kerberos认证过程中Active Directory的作用
LDAP介绍
1),ladp(Lightweight Directory Access Protocol),轻量级目录访问协议,提供被称为目录服务的信息服务,特别是基于X.500(构成全球分布式的目录服务系统的协议)的目录服务。
2),ldap运行在TCP/IP或者其他面向连接的传输服务上。
3),ldap同时是一个IETF标准跟踪协议,在“轻量级目录访问协议(ldap)技术规范路线”RFC4510中被指定。
4),ldap软件来源于OpenLDAP项目,该项目是一个由志愿者组成的团队,官网网址:http://www.openldap.rog
LDAP文件结构
LDAP信息模型是基于条目来组织的,一个条目是一个属性的集合,有一个全球唯一的识别名(DN,Domain Name)。DN用于标识条目,每个条目的属性有一个类型和一个或多个值。
该类型通常是可记忆的字符串,如“cn”就是标识通用名称,或者“电子邮件”就是电子邮件地址。该类型值的语法依赖于属性类型。例如,一个cn属性可以包含一个值tom jack,一个mail
属性可以包含值“tom@example.com”。
在LDAP文件结构中,目录条目都被排列在一个分层树形结构。一般来说,这种结构反映了地域和/或组织界限,这种层级关系如图:
树也可以根据互联网域名组主,这种命名方式目前非常普遍,因为他允许使用DNS为目录服务定位,如下图:
kerberos认证原理
kerberos组件
与MIT发布的Kerberos V5产品类似,Oracle Solaris 发行版的Kerberos服务也包括一下内容:
1),密钥分发中心(Key Distribution Center,KDC)
kerberos数据库管理守护进程--kadmind。
kerberos票据处理守护进程--krb5kdc.
数据库管理程序---kadmin(仅主KDC)、kadmin.local 和kdb5_util.
数据库传播软件---kprop(仅从KDC)和kpropd。
2),用于管理凭证的用户程序---kinit、klist和kdestroy。
3),用于更改kerberos口令的用户程序---kpasswd。
4),远程应用程序---ftp、rcp、rlogin、rsh、ssh和telnet。
5),远程应用程序守护进程---ftpd、rlogind、rshd、sshd和telnetd。
6),密钥表管理实用程序---ktutil。
7),通用安全服务应用编程接口(Generic Security Service Application ProgrammingInterface, GSS-API)-允许应用程序使用多种安全机制,并且不需要在每次添加新机
制时重新编译应用程序。GSS-API 使用标准接口,允许将应用程序移植到多种操作系统上。使用GSS-API,应用程序可包括完整性和保密性安全服务以及验证。ftp和ssh 均使用GSS-API。
8),RPCSEC_GSS 应用编程接口(Application Programming Interface, API)-允许NFS 服务使用Kerberos 验证。RPCSEC_GSS 是一种安全特性,可提供与要使用的机制无关的
安全服务。RPCSEC_GSS 位于GSS-API 层的顶部。使用RPCSEC_GSS 的应用程序可以使用所有基于可插拔GSS_API 的安全机制。
此外,Oracle Solaris 发行版的Kerberos 服务还包括以下内容:
9),一个基于GUI 的Kerberos 管理工具(gkadmin)-允许您管理主体和主体策略。这一基于Java 技术的GUI 是kadmin 命令的替代方法。
10),PAM的Kerberos V5 服务模块-为Kerberos 服务提供验证、帐户管理、会话管理和口令管理。使用该模块可使Kerberos 验证对用户而言透明化。
11),内核模块-提供kerberos 服务的基于内核的实现以供NFS 服务使用,这可大大提高性能。
Active Directory和LDAP基本概念
1),Active Directory是一个基于 Windows 环境中提供身份验证,目录,策略和其他服务的数据库系统, LDAP ( Lightweight Directory Access Protocol轻型目录访问协议) 是一个应用程序协议,用于查询和修改目录服务提供程序( 如 Active Directory ) 中的项目,它支持一种形式的LDAP 。
简而言之:AD是一个目录服务数据库,而LDAP是你可以用来与之交谈的协议之一。
2),LDAP是一个标准,AD是微软的(专用的)实现(等等),也可以理解成是基于LDAP的目录服务器的微软的实现。LDAP是目录数据的协议规范。AD还具有
自定义的扩展ontop版本,如账户锁定,密码过期等。
3),Active Directory是(以一种过于简化的方式)提供基于kerberos授权的基于LDAP的身份验证的服务。当然AD中的LDAP和kerberos实现与其他LDAP/Kerberos
实现不完全兼容。
4),Active Directory 是一个目录服务提供程序,可以将新用户添加到目录中,删除或者修改,指定privilages,指定策略等等,就像每个人都有唯一的联系人号码一样,AD(Active Directory)中的每一个东西都被视为对象,每个对象都有一个唯一的标识。
LDAP 是专门为目录服务提供商设计的协议。windows server 操作系统使用AD最为目录服务器,AIX是一个UNIX版本,它使用了Tivoli directory server 。它们都使用LDAP协议与目录交互。
5),active directory 是用来存储基于组织的数据,策略,身份验证的目录服务数据库,而ldap是用来与ad或者adam进行通讯的目录服务数据库。
6),LDAP位于 tcp/ip栈的顶部,并控制互联网目录访问。 它是环境无关的。AD & ADSI是一个围绕LDAP层的包装器,它是 Windows 特定的。
7),有很多系统支持LDAP与他们交谈,而不仅仅是Active Directory。Sun,IBM,Novell所有的目录服务器都是非常有效的LDAP服务器。
8),LDAP是轻量目录访问协议(Lightweight Directory Access Protocol)的缩写,LDAP标准实际上是在X.500标准基础上产生的一个简化版本。AD是Active Directory的缩写,
9),AD应该是LDAP的一个应用实例,而不应该是LDAP本身。比如:windows域控的用户、权限管理应该是微软公司使用LDAP存储了一些数据来解决域控这个具体问题, 只是AD顺便还提供了用户接口,也可以利用Active Directory当做LDAP服务器存放一些自己的东西而已。比如LDAP是关系型数据库,微软自己在库中建立了几个表,每个表都定义好了字段。显然这 些表和字段都是根据微软自己的需求定制的,而不是LDAP协议的规定。然后微软将LDAP做了一些封装接口,用户可以利用这些接口写程序操作LDAP,使 得Active Directory也成了一个LDAP服务器。 总之:Active Directory = LDAP服务器+LDAP应用(Windows域控)。Active Directory先实现一个LDAP服务器,然后自己先用这个LDAP服务器实现了自己的一个具体应用(域控)。
在kerberos认证过程中Active Directory的作用的更多相关文章
- [Kerberos] Kerberos 认证过程整理
Kerberos是一种安全认证协议,意在提供 more secure authentication simplified management of password convenience of s ...
- hadoop开启Service Level Authorization 服务级认证-SIMPLE认证-过程中遇到的坑
背景描述: 最近在进行安全扫描的时候,说hadoop存在漏洞,Hadoop 未授权访问[原理扫描],然后就参考官方文档及一些资料,在测试环境中进行了开启,中间就遇到了很多的坑,或者说自己没有想明白的问 ...
- Kerberos认证过程学习理解
概念: Kerberos服务器:AS认证服务器,TGS服务授权服务器 Client 客户端,代表使用应用的用户 AppServer 服务端,应用提供各种服务的服务器 Client在Kerberos注册 ...
- Linux源码安装过程中选项—prefix的作用
源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(make install),具体的安装方法一般作者都会给出文档,这里主要讨论配置(configure).Configu ...
- 域渗透 | kerberos认证及过程中产生的攻击
文章首发于公众号<Z2O安全攻防> 直接公众号文章复制过来的,排版可能有点乱, 可以去公众号看. https://mp.weixin.qq.com/s/WMGkQoMnQdyG8UmS ...
- 域渗透基础之Kerberos认证协议
本来昨晚就该总结整理,又拖到今天早上..6点起来赶可还行 0x01 Kerberos前言 Kerberos 是一种由 MIT(麻省理工大学)提出的一种网络身份验证协议.它旨在通过使用密钥加密技术为客 ...
- CAS FOR WINDOW ACTIVE DIRECTORY SSO单点登录
一.CAS是什么? CAS(Central Authentication Service)是 Yale 大学发起的一个企业级的.开源的项目,旨在为 Web 应用系统提供一种可靠的单点登录解决方法(支持 ...
- Kerberos认证原理简介
1.1 What is Kerberos 1.1.1 简单介绍 Kerberos是一个用于鉴定身份(authentication)的协议, 它采取对称密钥加密(symmetric-key crypto ...
- Active Directory网域
Active Directory网域 3.1Windows网络的管理方式 3.1.1工作组模式 工作组由一组用网络连接在一起的计算机组成,他们将计算机内的资源共享给用户访问.工作组网络也被称为“对等式 ...
随机推荐
- java 反射与其应用
前言: 目标:对于我个人而言 我希望能由以下途径达到最终目标 清楚反射的概念以及为什么要用反射技术 -> java的反射技术 -> java反射技术涉及到的类 -> java反射技 ...
- Linux Network Command
查看 内外网访问ipnetstat -an download file from server scp -r root@139.xxx.xxx.82:~/virtualbox.box /tmp/
- Devexpress GridControl 多选
以前dev的多选要自己处理,一般的处理方式就是在单元格中添加checkbox控件.后来的版本中dev增加了多选的支持,只需要设置一下属性就可以了,属性如下图: 然后效果设计页面就是这个样子: 运行以后 ...
- (2018 Multi-University Training Contest 3)Problem L. Visual Cube
//题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6330//题目大意:按照一定格式画出一个 a×b×c 的长方体. #include <b ...
- Jsの练习-数组常用方法 -forEach()
forEach() : 对数组进行遍历循环,对数组中的每一项运行给定函数. 格式: arr.forEach(function(value,index){}) <!DOCTYPE html> ...
- HTML5 classList使用
add:给元素添加一个指定的class var test = document.getElementById('test'); test.classList.add('yellow');//添加 ...
- python中__name__
1.在运行程序时一般会写 if __name__ == "__main__" 当一个py文件被程序当做模块导入时,python会将文件中的代码执行一遍,如果我们在py文件中写了一些 ...
- 牛客网小a的旅行计划
地址:https://ac.nowcoder.com/acm/contest/223/B 此题是一道套公式题目,不难,ans=(pow(4,n+1)-4*pow(3,n+1)+6*pow(2,n+1) ...
- Python--错误SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
Refer to:https://www.cnblogs.com/cyiner/archive/2011/09/18/2180729.html 用Python打开文件: fo=open("C ...
- Js/Session和Cookies的区别
1.cookies数据存放在客户的浏览器上面,session放在服务器上面.2.cookies不安全,别人可以分析浏览器的数据进行cookies的欺骗,考虑到安全性,应该使用cookie3.sessi ...