对于任何计算环境来讲,身份验证是最基本的安全要求。简单来说,用户和服务必须先向系统证明其身份(身份验证),然后才能在授权范围内使用系统功能。身份验证和授权携手并进,以保护系统资源。授权有多种方式处理,从访问控制列表(ACL)到HDFS扩展的ACL,再到使用Ranger的基于角色的访问控制(RBAC)。
身份验证是任何计算环境的基本安全要求。简单来说,用户和服务必须先向系统证明其身份(身份验证),然后才能在授权范围内使用系统功能。身份验证和授权携手并进,以保护系统资源。授权使用多种方式处理,从访问控制列表(ACL)到HDFS扩展ACL,再到使用Ranger的基于角色的访问控制(RBAC)。
在Hadoop集群内提供身份认证最佳和可接受的方式是使用Kerberos。Kerberos提供了强大的身份验证功能,但是它的复杂性也让很多集群管理员心生畏惧。而开发者在调用Hadoop生态组件的API或者向YARN提交任务时,需要在代码中添加Kerberos访问机制,如果不是对在数据安全极其苛刻的条件下,启用Kerberos对管理员和开发人员都是一种很大的负担。本文主要讲解如何在CDH7.1.1集群中禁用Kerberos。
强大的身份验证和建立用户身份是 Hadoop 安全访问的基础。用户需要能够可靠地 “识别” 自己,然后在整个 Hadoop 集群中传播该身份。完成此操作后,这些用户可以访问资源(例如文件或目录)或与集群交互(如运行 MapReduce 作业)。除了用户之外,Hadoop 集群资源本身(例如主机和服务)需要相互进行身份验证,以避免潜在的恶意系统或守护程序 “冒充” 受信任的集群组件来获取数据访问权限。
Kerberos,在古希腊神话故事中,指的是一只三头犬守护在地狱之门外,禁止任何人类闯入地狱之中。
本篇文章Fayson主要介绍如何将CDH集群中的KDC服务从RedHat7迁移到RedHat6。
在前面Fayson介绍了多篇关于Window Server上安装的Active Directory服务,由于Active Directory服务即提供了统一的用户管理也提供了Kerberos认证服务,在向AD中新增用户的同时也为用户创建了相应的Kerberos账号,那本篇文章Fayson主要介绍,如何在不考虑自定义用户的Kerberos账号的前提下将CDH中集成的RedHat7的Kerberos迁移至AD的Kerberos认证。
业务用户在安全环境下使用CDSW服务,为了防止用户的Kerberos的账号和密码泄露问题,需要管理系统统一的为业务用户分发Kerberos账号。本篇文章Fayson主要介绍如何通过CDSW API的方式为不同的业务用户设置Kerberos信息。
前面的文章介绍了《Kerberos原理--经典对话》、《Kerberos基本概念及原理汇总》、《基于ambari的Kerberos安装配置》、《Windows本地安装配置Kerberos客户端》,《Kerberos实战》,接下来再来聊聊基于Ambari如何禁用Kerberos,可不是在页面上点击禁用Kerberos那么顺利噢,有的时候服务会启动失败啊~
强大的身份验证和建立用户身份是Hadoop安全访问的基础。用户需要能够可靠地“识别”自己,然后在整个Hadoop集群中传播该身份。完成此操作后,这些用户可以访问资源(例如文件或目录)或与集群交互(如运行MapReduce作业)。除了用户之外,Hadoop集群资源本身(例如主机和服务)需要相互进行身份验证,以避免潜在的恶意系统或守护程序“冒充”受信任的集群组件来获取数据访问权限。
我查找了很久,还是没有找到这个错误的解决方法。因为我的配置是没有问题的,所以猜想会不会是浏览器的问题,没想到,重启火狐浏览器,再次访问HDFS真的就可以有权限访问文件了
对于一个启用了Kerberos的正式生产系统,还需要考虑KDC的高可用。而Kerberos服务是支持配置为主备模式的,数据同步是通过kprop服务将主节点的数据同步到备节点。本文主要讲述如何在CDH5.16.1中配置Kerberos服务的高可用。在前面的文章中Fayson介绍过《如何配置Kerberos服务的高可用》,但无论是CDH还是OS版本到较低,本文也主要是为了更新文档。
Kerberos是认证协议,它假设主机是可信任的,但是网络不是。Kerberos安全涉及三个关键实体:
在CDH集群启用Kerberos后,通过浏览器访问HiveServer2的Web UI时提示需要输入用户名和密码(即Kerberos账号进行认证)。在前面Fayson介绍了《Windows Kerberos客户端配置并访问CDH》通过该方式可以访问启用Kerberos的Web UI。本篇文章主要介绍在未进行Windown Kerberos客户端配置的情况下如何跳过HiveServer2 Web UI的Kerberos验证。
Kerberos这一名词来源于希腊神话“三个头的狗——冥府守门狗”,在系统中是一种认证协议,使用ticket让节点在不安全的网络环境下进行安全的通信,它能够防止窃听、防止replay攻击、保护数据完整性。黑客可以利用漏洞提升自己的网络权限,还可以获取内网资源,比如窃取密码。 三名研究员发现了这一漏洞,他们把它命名为“奥菲斯的竖琴”,因为它的原理类似希腊诗人奥菲斯用竖琴催眠守门狗的过程。 研究人员还发现,这个漏洞影响的Kerberos版本可以追溯到1996年,由于年代久远,Kerberos有其他的实现。这
Kerberos 是一种身份认证协议,被广泛运用在大数据生态中,甚至可以说是大数据身份认证的事实标准。本文将详细说明 Kerberos 原理。
在前面的文章中Fayson介绍过《如何在CDH集群启用Kerberos》,对于一个启用了Kerberos的正式生产系统,还需要考虑KDC的高可用。而Kerberos服务是支持配置为主备模式的,数据同步是通过kprop服务将主节点的数据同步到备节点。本文主要讲述如何配置Kerberos服务的高可用。
在上一篇文章《6.2.0-通过Nginx获取CDSW的登录信息(续)》中,通过Nginx的配置进一步捕获了用户的一些操作,然后存入数据库中进行查询分析,捕获了当用户使用“Share”功能和进行Kerberos绑定时的操作信息,但是并未拿到用户进行Kerberos认证的Principal,本文档将介绍如何在用户进行Kerberos绑定时拦截到具体绑定的Principal账号。
Kerberos是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。它也指由麻省理工实现此协议,并发布的一套免费软件。它的设计主要针对客户-服务器模型,并提供了一系列交互认证——用户和服务器都能验证对方的身份。Kerberos协议可以保护网络实体免受窃听和重复攻击。
这是有关Apache Kafka安全性的简短博客文章系列的第一部分。在本文中,我们将说明如何配置客户端以使用不同的身份验证机制对集群进行身份验证。
在计算机网络安全中,一种常见的需求是在不同的实体之间安全地进行身份验证。这可以是两台服务器之间,或者是用户与服务之间。为了满足这种需求,已经发展出了一些不同的身份验证机制。本文将对两种重要的机制进行详细的讨论:GSSAPI和Kerberos。
在前面Fayson介绍了多篇关于Window Server上安装的Active Directory服务,由于Active Directory服务即提供了统一的用户管理也提供了Kerberos认证服务,在向AD中新增用户的同时也为用户创建了相应的Kerberos账号。本篇文章Fayson主要介绍如何为CDH集成Active Directory的Kerberos认证。
在Ambari平台上,启用了Kerberos之后,一些服务的Web UI,像Namenode:50070、Oozie Web UI、Storm UI、Solr Web UI等快速链接大部分都是需要Kerberos认证才可以继续使用的。
之前非常担心的一件事就是如果有人拿到了hdfs超级管理员帐号,直接把数据rm -rf怎么办?有了Kerberos,就可以轻松防止这样的事情发生。Kerberos 协议实现了比“质询-响应”模式协议更高的安全性:第一,在身份验证过程中,所有的数据都使用不同的密码进行加密,避免了相关验证信息的泄漏;第二,客户端和服务器会相互验证对方的身份,避免了 中间人攻击 ;第三,客户端和服务器间的时间差被严格限制,避免了 回放攻击 。与 WINDOWS 系统中的 用户安全令牌 类似, Kerberos 服务通过“ 加密的票据(防止篡改) ”验证用户身份和提供用户访问权限;Kerberos 服务可以通过使用 会话密钥 确保在会话中数据的机密性和完整性。
Kerberos是由麻省理工(MIT)开发,对三方进行验证鉴权的服务安全管理系统。该系统很好的体现了西方三权分立的思想,其名字也很形象,来源于希腊神话地狱三个脑袋的看门狗。
配置/etc/krb5.conf。修改其中的realm,把默认的EXAMPLE.COM修改为自己要定义的值,也可以不修改。如:HADOOP.COM。
昨天Fayson写了一篇《如何安装Tableau并连接CDH的Hive/Impala》,后台关注人数当天增加了40人,有点大大超过Fayson的预期,首先还是谢谢各位关注Fayson的人。
在前面的文章中,Fayson介绍了《0733-7.0.3-如何在Redhat7.6中安装CDP DC7.0.3》,这里我们基于这个环境开始安装Kerberos。Kerberos是一个用于安全认证的第三方协议,并不是Hadoop专用,你可以将其用于其他系统。它采用了传统的共享秘钥方式,实现了在网络环境下不一定保证安全的环境下,Client和Server之间的通信,适用于Client/Server模型,由MIT开发和实现。而使用CDP DC可以较为轻松的实现洁面后的Kerberos集成,本文Fayson主要介绍如何在Readhat7.2的CDP DC7.0.3环境中启用Kerberos。
对于Kerberos系统来说,默认使用的 AES-256来进行加密。在集群启用Kerberos之前,必须在Ambari集群上的每个节点上都装有JCE。
1.Access Controller coprocessor实现的ACL权限控制;
前面的文章介绍了《Kerberos原理--经典对话》、《Kerberos基本概念及原理汇总》、《基于ambari的Kerberos安装配置》、《Windows本地安装配置Kerberos客户端》,已经成功安装了Kerberos KDC server,也在Ambari上启用了Kerberos,接下来我们再来研究一下如何使用Kerberos。
Fayson在前面的文章介绍了如何为CDH集群启用Kerberos,在集群启用Kerberos后,会对现有环境的部分代码做改造,有些人觉得使用起来不方便,想取消Kerberos。本篇文章Fayson主要介绍如何禁用CDH集群的Kerberos及禁用后对各组件服务的测试。
在前面Fayson的文章《0459-如何使用SQuirreL通过JDBC连接CDH的Hive(方式一)》和《0463-如何使用SQuirreL通过JDBC连接CDH的Hive(方式二)》介绍了SQuirreL的安装以及使用原生和Cloudera提供的JDBC 驱动访问Hive。本篇文章Fayson主要介绍如何使用Cloudera提供的Hive JDBC驱动访问Kerberos环境下的Hive,为什么不讲原生的JDBC驱动,因为Fayson也没有调通。
在调试Kerberos的时候可能会有需要禁用的场景。以下是各组件禁用Kerberos的相关配置。
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 前面Fayson介绍了《如何在CDH中启用Spark Thrift》和《如何在Kerberos环境下的CDH集群部署Spark1.6 Thrift及spark-sql客户端》,本篇文章Fayson主要介绍如何使用Java JDBC连接非Kerberos和Kerberos环境下Sp
互联网从来就不是一个安全的地方。很多时候我们过分依赖防火墙来解决安全的问题,不幸的是,防火墙是假设“坏人”是来自外部的,而真正具有破坏性的攻击事件都是往往都是来自于内部的。
Kerberos黄金票据是有效的TGT Kerberos票据,因为它是由域Kerberos帐户(KRBTGT)加密和签名的。TGT仅用于向域控制器上的KDC服务证明用户已被其他域控制器认证。TGT被KRBTGT密码散列加密并且可以被域中的任何KDC服务解密的。
在Kerberos环境中,我们的应用程序通过Java代码来提交任务需要先进行Kerberos凭证的初始化然后进行应用程序的提交,本文档主要讲述Java应用程序长时间运行作业Kerberos不自动重新认证问题
Kerberos是一种计算机网络授权协议,用来在非安全网络中,对个人通信以安全的手段进行身份认证。
在前面的文章Fayson也介绍了一些关于Flume的文章《非Kerberos环境下Kafka数据到Flume进Hive表》、《如何使用Flume准实时建立Solr的全文索引》、《如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS》、《如何使用Flume采集Kafka数据写入Kudu》和《如何使用Flume采集Kafka数据写入HBase》。本篇文章Fayson主要介绍在Kerberos的CDH集群中使用Flume采集Kafka数据写入HBase。 内容概述 1.环境准备 2.配置Fl
关于Kerberos与Ldap两个方案,此处就不再赘述,分别参考我的另外两篇文章:
最近需要解决一个部门一个老旧问题,问题大概是这样的,Spark on K8S 在访问 HDFS(其他小组负责)的时候需要走 Kerberos 认证。因为之前工作里比较少涉及到这一块,所以想现在本地环境做个快速的测试,顺便系统了解一下 Kerberos。
在前面文章Fayson讲过《如何使用hadoop命令向CDH集群提交MapReduce作业》和《如何跨平台在本地开发环境提交MapReduce作业到CDH集群》,但有些用户需要在非CDH集群的节点提交作业,这里实现方式有多种一种是将该节点加入CDH集群管理并部署GateWay角色,可以参考Fayson前面的文章《如何给CDH集群增加Gateway节点》,还有一种方式就是使用java命令向CDH集群提交MR作业。本篇文章主要讲述如何使用java命令向CDH集群提交MapReduce作业
Fayson在前面的文章也介绍了几款SQL客户端工具用来访问CDH集群的Hive和Impala,本篇文章Fayson再介绍一款Oracle的SQL客户端工具SQL Developer,使用该工具访问Kerberos环境下的Hive。
Kerberos协议是一个专注于验证通信双方身份的网络协议,不同于其他网络安全协议的保证整个通信过程的传输安全,kerberos侧重于通信前双方身份的认定工作,帮助客户端和服务端解决“证明我自己是我自己”的问题,从而使得通信两端能够完全信任对方身份,在一个不安全的网络中完成一次安全的身份认证继而进行安全的通信。
Kerberos是一种计算机网络授权协议,用来在非安全网络中,对个人通信以安全的手段进行身份认证。这个词又指麻省理工学院为这个协议开发的一套计算机软件。软件设计上采用客户端/服务器结构,并且能够进行相互认证,即客户端和服务器端均可对对方进行身份认证。可以用于防止窃听、防止重放攻击、保护数据完整性等场合,是一种应用对称密钥体制进行密钥管理的系统。
Aqua Data Studio是一款完整IDE的数据库开发工具,它提供3种主要功能:数据查询与管理工具。比对数据工具与源控制和文件系统的整合工具。帮助你创建,编辑和执行 SQL 的管理工具脚本编写,以及浏览和修改数据库组织。对所有主要关系的数据库提供一个一致的界面。这准许数据库主管或者开发者从一个应用程序同时地处理多个的任务。本篇文章主要介绍如何安装 Aqua Data Studio及访问安全环境下的Hive和Impala。
领取专属 10元无门槛券
手把手带您无忧上云