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首创,现在已经成为一行被广泛接受的标准。所以对于不同的平台可以进行广泛的互操作。
相关推荐
第一章 Kerberos简介 第二章 环境准备 2.1 使用软件版本信息介绍 2.2 节点架构介绍 2.3 基础系统环境准备 第三章 Kerberos框架搭建 3.1 Kerberos Server搭建 3.2 Kerberos Client搭建 3.3 规划principal 第四章 配置...
#### Kerberos简介 Kerberos是一种网络认证协议,由麻省理工学院(MIT)开发,主要用于提供安全的身份验证机制。它不同于常见的密码认证方式,通过一种称为票据(Ticket)的方式进行认证,确保通信双方的身份安全...
**Kerberos简介** Kerberos是一种网络身份验证协议,由麻省理工学院开发,它在安全性方面提供了强大的服务,确保了在网络通信中的用户身份验证。Kerberos基于密钥分发中心(KDC)的概念,它允许用户在一个可信的...
#### 一、Kerberos简介 Kerberos是一种网络认证协议,它的设计目标是通过密钥分发中心(KDC)来管理客户端与服务器之间的认证过程,以确保在网络环境中实现安全的数据交换。Kerberos特别适用于分布式计算环境,尤其...
#### Kerberos简介 Kerberos是一种网络认证协议,它的主要目的是为了在网络环境中提供安全的身份验证服务。Kerberos由麻省理工学院(MIT)开发,最初是为了应对分布式计算环境中的安全挑战。Kerberos使用对称密钥...
#### 一、Kerberos简介 Kerberos是一种广泛使用的网络认证协议,它提供了一种安全的身份验证方法,尤其适用于分布式网络环境中的身份验证。Kerberos通过密钥分发中心(KDC)来管理用户和服务的安全凭证,从而确保数据...
一、Kerberos简介 Kerberos由麻省理工学院开发,最初设计用于解决开放网络环境中的身份验证问题。该协议基于对称密钥加密技术,通过第三方认证服务器(即Kerberos票证授予服务器,TGS)进行身份验证,确保用户和...
Kerberos 协议简介 Kerberos 协议是一种计算机网络认证协议,允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。该协议基于对称密码学,并需要一个值得信赖的第三方。 Kerberos 协议...
#### 一、Kerberos简介 Kerberos是一种广泛应用于网络环境中的安全认证协议,特别适用于Client/Server模型。它由麻省理工学院(MIT)开发,主要目的是在网络环境中提供一种可靠的第三方认证机制,确保即使在网络...
【Kerberos简介】 Kerberos是一种广泛使用的网络身份验证协议,它基于对称密钥加密技术,由麻省理工学院开发。Kerberos的主要目标是确保网络服务的安全性,尤其是用户登录过程中的身份验证。该协议通过第三方验证...
#### 一、Kerberos认证系统简介 Kerberos是一种网络认证协议,其设计目标是通过密钥分发中心(Key Distribution Center, KDC)来管理用户和服务之间的认证过程。Kerberos在分布式环境中提供了强大的身份验证功能,...
Kerberos认证简介 Kerberos 是一种网络认证协议,它提供基于票证的验证服务,确保用户和服务之间的通信是安全的。在Hadoop生态系统中,Kerberos通常被用来保护HDFS、HBase、Hive等组件的安全性。Kudu作为Hadoop...
#### 一、Kerberos认证原理简介 Kerberos是一种广泛使用的网络认证协议,其设计目标是通过密钥分发中心(Key Distribution Center, KDC)为用户提供安全的认证服务。在Windows环境中,尤其是在进行Hadoop或Hive等...
- **Kerberos 简介** - **Kerberos 概述**:理解 Kerberos 认证的基本原理。 - **Kerberos 的基本概念**:了解 Kerberos 的主要组成部分。 - **Kerberos 的认证过程**:熟悉 Kerberos 的认证流程。 - **Hadoop ...
Kerberos简介** - **定义**: Kerberos是一种基于“票证”的认证协议,广泛应用于大数据领域。 - **结构**: 包括KDC(密钥分发中心)、AS(身份验证服务)、TGS(票据授权服务)以及Account Database(账户数据库)...
1. **JAAS简介**:JAAS是Java平台的一部分,提供了一种框架来集成各种认证机制,如用户名/密码、证书、智能卡等。它允许开发者定义用户身份验证的方式,并控制不同级别的访问权限。 2. **Kerberos协议**:Kerberos...
##### 2.1 Kerberos系统简介 Kerberos系统是由麻省理工学院(MIT)开发的一种基于可信第三方(KDC,Key Distribution Center)的身份认证机制。该系统利用对称密钥加密算法来实现用户和服务器之间的相互认证。...
二、实验环境实验所使用的设备名称及规格,网络管理工具简介、版本等 三、实验内容与实验要求实验内容、原理分析及具体实验要求 四、实验过程与分析根据具体实验,记录、