zoukankan      html  css  js  c++  java
  • 在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服务器实现了自己的一个具体应用(域控)。


     

  • 相关阅读:
    ubuntu给手机建wifi
    ubuntu系统之难
    【百度之星2014~复赛 解题报告~正解】The Query on the Tree
    【百度之星2014~复赛)解题报告】The Query on the Tree
    【百度之星2014~初赛解题报告】
    【百度之星2014~初赛(第二轮)解题报告】JZP Set
    【百度之星2014~资格赛解题报告】
    【百度之星2014~初赛(第二轮)解题报告】Chess
    vi 中插入当前时间
    安装软件时依赖冲突的万能解决方案
  • 原文地址:https://www.cnblogs.com/boanxin/p/9145522.html
Copyright © 2011-2022 走看看