`
gaojingsong
  • 浏览: 1182459 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Kerberos简介

阅读更多



 

1、Kerberos简介

Keberos是为TCP/IP网络系统设计的可信的第三方认证协议。网络上的Keberos服务基于DES对称加密算法,但也可以用其他算法替代。因此,Keberos是一个在许多系统中获得广泛应用的认证协议,Windows2000就支持该协议。

 

2、Kerberos的组成

Kerberos应用程序库:应用程序接口,包括创建和读取认证请求,以及创建safe message 和private message的子程序。

加密/解密库:DES等。

Kerberos数据库:记载了每个Kerberos 用户的名字,私有密钥,截止信息(记录的有效时间,通常为几年)等信息。

数据库管理程序:管理Kerberos数据库。

KDBM服务器(数据库管理服务器):接受客户端的请求对数据库进行操作。

认证服务器(AS):存放一个Kerberos数据库的只读的副本,用来完成principle的认证,并生成会话密钥.

数据库复制软件:管理数据库从KDBM服务所在的机器,到认证服务器所在的机器的复制工作,为了保持数据库的一致性,每隔一段时间就需要进行复制工作.

用户程序:登录Kerberos,改变Kerberos密码,显示和破坏Kerberos标签(ticket)等工作。

Microsoft Windows Server 2003操作系统上实现了Kerberos5身份验证协议。Windows Server2003总是使用扩展公钥身份验证机制。KerBeros身份验证客户端作为SSP(Security Support Provider)通过访问SSPI(Security Support Provider Interface)来实现身份验证。用户身份验证初始化过程被集成在Winlogon这SSO(Single Sign-On)体系中。

 

Keberos最初是美国麻省理工学院为Athena项目开发的。其中第1—第3版为内部开发版,第4版提供扩散密码分组链接(PCBC)模式。该模式存在一个问题:交换两个密文分组,将使两个对应的明文分组不能被正确解密,但根据明文和密文异或的性质,错误将被抵消。所以,如果完整性检查只检查最后几个解密的明文分组,它可能欺骗接收者,让接收者接收部分错误的消息。因此,Keberos第5版使用CBC(C ipher Block Chaining)模式。

 

3、Keberos的工作步骤:

(1)请求许可票据。

(2)返回许可票据。

(3)请求服务器票据。

(4)返回服务器票据。

(5)请求服务。

Keberos的凭证:票据和认证码。

 

4、工作原理

简要大概地说一下Kerberos是如何工作的:

假设你要在一台电脑上访问另一个服务器(你可以发送telnet或类似的登录请求)。你知道服务器要接受你的请求必须要有一张Kerberos的“入场券”。

要得到这张入场券,你首先要向验证服务器(AS)请求验证。验证服务器会创建基于你的密码(从你的用户名而来)的一个“会话密钥”(就是一个加密密钥),并产生一个代表请求的服务的随机值。这个会话密钥就是“允许入场的入场券”。

然后,你把这张允许入场的入场券发到授权服务器(TGS)。TGS物理上可以和验证服务器是同一个服务器,只不过它现在执行的是另一个服务。TGS返回一张可以发送给请求服务的服务器的票据。

服务器或者拒绝这张票据,或者接受这张票据并执行服务。

因为你从TGS收到的这张票据是打上时间戳的,所以它允许你在某个特定时期内(一般是八小时)不用再验证就可以使用同一张票来发出附加的请求。使这张票拥有一个有限的有效期使其以后不太可能被其他人使用。

实际的过程要比刚才描述的复杂得多。用户过程也会根据具体执行有一些改变。[2] 

 

 

5、缺陷

1.失败于单点:它需要中心服务器的持续响应。当Kerberos服务结束前,没有人可以连接到服务器。这个缺陷可以通过使用复合Kerberos服务器和缺陷认证机制弥补。

2.Kerberos要求参与通信的主机的时钟同步。票据具有一定有效期,因此,如果主机的时钟与Kerberos服务器的时钟不同步,认证会失败。默认设置要求时钟的时间相差不超过10分钟。在实践中,通常用网络时间协议后台程序来保持主机时钟同步。

3.管理协议并没有标准化,在服务器实现工具中有一些差别。

4.因为所有用户使用的密钥都存储于中心服务器中,危及服务器的安全的行为将危及所有用户的密钥。

5.一个危险客户机将危及用户密码。

 

6、Kerberos的优点

 

分析整个Kerberos的认证过程之后,总结一下Kerberos都有哪些优点:

1.较高的Performance

虽然我们一再地说Kerberos是一个涉及到3方的认证过程:Client、Server、KDC。但是一旦Client获得用过访问某个Server的Ticket,该Server就能根据这个Ticket实现对Client的验证,而无须KDC的再次参与。和传统的基于Windows NT 4.0的每个完全依赖Trusted Third Party的NTLM比较,具有较大的性能提升。

 

2.实现了双向验证(Mutual Authentication)

传统的NTLM认证基于这样一个前提:Client访问的远程的Service是可信的、无需对于进行验证,所以NTLM不曾提供双向验证的功能。这显然有点理想主义,为此Kerberos弥补了这个不足:Client在访问Server的资源之前,可以要求对Server的身份执行认证。

 

3.对Delegation的支持

Impersonation和Delegation是一个分布式环境中两个重要的功能。Impersonation允许Server在本地使用Logon 的Account执行某些操作,Delegation需用Server将logon的Account带入到另过一个Context执行相应的操作。NTLM仅对Impersonation提供支持,而Kerberos通过一种双向的、可传递的(Mutual 、Transitive)信任模式实现了对Delegation的支持。

 

4.互操作性(Interoperability)

Kerberos最初由MIT首创,现在已经成为一行被广泛接受的标准。所以对于不同的平台可以进行广泛的互操作。

  • 大小: 148.2 KB
0
8
分享到:
评论

相关推荐

    小白快速掌握Hadoop集成Kerberos安全技术频教程

    第一章 Kerberos简介 第二章 环境准备 2.1 使用软件版本信息介绍 2.2 节点架构介绍 2.3 基础系统环境准备 第三章 Kerberos框架搭建 3.1 Kerberos Server搭建 3.2 Kerberos Client搭建 3.3 规划principal 第四章 配置...

    LINUX下的kerberos的安装配置

    #### Kerberos简介 Kerberos是一种网络认证协议,由麻省理工学院(MIT)开发,主要用于提供安全的身份验证机制。它不同于常见的密码认证方式,通过一种称为票据(Ticket)的方式进行认证,确保通信双方的身份安全...

    kerberos安装和介绍文档

    **Kerberos简介** Kerberos是一种网络身份验证协议,由麻省理工学院开发,它在安全性方面提供了强大的服务,确保了在网络通信中的用户身份验证。Kerberos基于密钥分发中心(KDC)的概念,它允许用户在一个可信的...

    Kerberos的相关配置

    #### 一、Kerberos简介 Kerberos是一种网络认证协议,它的设计目标是通过密钥分发中心(KDC)来管理客户端与服务器之间的认证过程,以确保在网络环境中实现安全的数据交换。Kerberos特别适用于分布式计算环境,尤其...

    Hadoop和Kerberos:超越大门的疯狂Hadoop and Kerberos: The Madness Beyond the Gate

    #### Kerberos简介 Kerberos是一种网络认证协议,它的主要目的是为了在网络环境中提供安全的身份验证服务。Kerberos由麻省理工学院(MIT)开发,最初是为了应对分布式计算环境中的安全挑战。Kerberos使用对称密钥...

    kerberos安装手册

    #### 一、Kerberos简介 Kerberos是一种广泛使用的网络认证协议,它提供了一种安全的身份验证方法,尤其适用于分布式网络环境中的身份验证。Kerberos通过密钥分发中心(KDC)来管理用户和服务的安全凭证,从而确保数据...

    Kerberos-Authentication-Protocol-master.zip_Kerberos

    一、Kerberos简介 Kerberos由麻省理工学院开发,最初设计用于解决开放网络环境中的身份验证问题。该协议基于对称密钥加密技术,通过第三方认证服务器(即Kerberos票证授予服务器,TGS)进行身份验证,确保用户和...

    kerberos协议简介.pdf

    Kerberos 协议简介 Kerberos 协议是一种计算机网络认证协议,允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。该协议基于对称密码学,并需要一个值得信赖的第三方。 Kerberos 协议...

    kerberos 基础知识和安装操作

    #### 一、Kerberos简介 Kerberos是一种广泛应用于网络环境中的安全认证协议,特别适用于Client/Server模型。它由麻省理工学院(MIT)开发,主要目的是在网络环境中提供一种可靠的第三方认证机制,确保即使在网络...

    利用Kerberos增强Linux用户注册安全性的探讨.pdf

    【Kerberos简介】 Kerberos是一种广泛使用的网络身份验证协议,它基于对称密钥加密技术,由麻省理工学院开发。Kerberos的主要目标是确保网络服务的安全性,尤其是用户登录过程中的身份验证。该协议通过第三方验证...

    Hadoop部署和配置Kerberos安全认证

    #### 一、Kerberos认证系统简介 Kerberos是一种网络认证协议,其设计目标是通过密钥分发中心(Key Distribution Center, KDC)来管理用户和服务之间的认证过程。Kerberos在分布式环境中提供了强大的身份验证功能,...

    flink写入带kerberos认证的kudu connector

    Kerberos认证简介 Kerberos 是一种网络认证协议,它提供基于票证的验证服务,确保用户和服务之间的通信是安全的。在Hadoop生态系统中,Kerberos通常被用来保护HDFS、HBase、Hive等组件的安全性。Kudu作为Hadoop...

    windows配置kerberos认证

    #### 一、Kerberos认证原理简介 Kerberos是一种广泛使用的网络认证协议,其设计目标是通过密钥分发中心(Key Distribution Center, KDC)为用户提供安全的认证服务。在Windows环境中,尤其是在进行Hadoop或Hive等...

    hadoop-CDH4.6-install.docx

    - **Kerberos 简介** - **Kerberos 概述**:理解 Kerberos 认证的基本原理。 - **Kerberos 的基本概念**:了解 Kerberos 的主要组成部分。 - **Kerberos 的认证过程**:熟悉 Kerberos 的认证流程。 - **Hadoop ...

    hw面试题,网络安全服务面试题,78页,近三万字,纯手工总结

    Kerberos简介** - **定义**: Kerberos是一种基于“票证”的认证协议,广泛应用于大数据领域。 - **结构**: 包括KDC(密钥分发中心)、AS(身份验证服务)、TGS(票据授权服务)以及Account Database(账户数据库)...

    JAAS.rar_Action!_Jaas Kerber_jaas KERBEROS_kerberos Java_login.a

    1. **JAAS简介**:JAAS是Java平台的一部分,提供了一种框架来集成各种认证机制,如用户名/密码、证书、智能卡等。它允许开发者定义用户身份验证的方式,并控制不同级别的访问权限。 2. **Kerberos协议**:Kerberos...

    kerberos身份认证协议分析及改进

    ##### 2.1 Kerberos系统简介 Kerberos系统是由麻省理工学院(MIT)开发的一种基于可信第三方(KDC,Key Distribution Center)的身份认证机制。该系统利用对称密钥加密算法来实现用户和服务器之间的相互认证。...

    Kerberos网络认证协议搭建与分析-A48郭茁宁-1183710109-实验报告1

    二、实验环境实验所使用的设备名称及规格,网络管理工具简介、版本等 三、实验内容与实验要求实验内容、原理分析及具体实验要求 四、实验过程与分析根据具体实验,记录、

Global site tag (gtag.js) - Google Analytics