Kerberos

news2024/11/20 4:52:40

序言

kerberos 除了说帮我们验证Java程序是否具有权限来请求Hadoop的服务,也可以来帮助我们检查新增的节点是是否是真实的节点,还是黑客为了套取数据的节点.

比如为HDFS新增一个DataNode节点,如果没有Kerberos验证, 随便一个节点只要连接上NameNode就会存储数据,黑客就可以获取到我们的数据cuiyaonan2000@163.com

Kerberos

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

Kerberos 是第三方认证机制,其中用户服务依赖于第三方(Kerberos 服务器)来对彼此进行身份验证。 Kerberos服务器本身称为密钥分发中心KDC

如上Kerberos就是KDC ,那KDC中有如下的2个模块:

  • AS(Authentication Server)= 认证服务器
  • TGS(Ticket Granting Server)= 票据授权服务器

工作流程

如上的流程:

  1. 客户端通过密钥与AS交互,获取一个临时的Ticket(这里面流程比较复杂,这里简答说下.比如AS会用密钥解密客户端的信息等)
  2. 客户端拿到AS发送的Ticket 去TGS交互,获取一个正式的Ticket(这个票据比较特殊叫TGT).
  3. 客户端拿着特殊的 TGT Ticket 去请求服务端
  4. 服务端拿到TGT Ticket 去跟KDC交互 验证是否正确,正确就放行客户端通过.

Launch Kerberos Service

安装命令:

yum -y install krb5-server krb5-lib krb5-workstation

安装完成后需要修改三个配置文件(这些文件在安装完后会自动创建,根据需要修改如下的内容cuiyaonan2000@163.com):

  1. /var/kerberos/krb5kdc/kdc.conf
  2. /var/kerberos/krb5kdc/kadm5.acl
  3. /etc/krb5.conf

kdc.conf

自动生成的内容如下所示:

[kdcdefaults]
 kdc_ports = 88  
 kdc_tcp_ports = 88   

[realms]
 EXAMPLE.COM = {
  #master_key_type = aes256-cts
  acl_file = /var/kerberos/krb5kdc/kadm5.acl
  dict_file = /usr/share/dict/words
  admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab
  supported_enctypes = aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal camellia256-cts:normal camellia128-cts:normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal
 }

配置说明:


[kdcdefaults]

kdc_ports :指定KDC的默认端口。
kdc_tcp_ports :指定KDC的TCP协议默认端口。


[realms]

 EXAMPLE.COM  :是设定的kerberos域,一般会改这个,这个根据其名字很容易理解就是设置一个被管理的网站根域名,后面创建的账号都是属于该域名的cuiyaonan2000@163.com
acl_file :标注了admin的用户权限的文件,若文件不存在,需要用户自己创建。
dict_file :该参数指向包含潜在可猜测或可破解密码的文件。
admin_keytab :KDC 进行校验的 keytab。
supported_enctypes :指定此KDC支持的各种加密类型。

kadm5.acl

自动创建的内容如下:

*/admin@EXAMPLE.COM     *

如上只有两列内容:第一列为用户名,第二列为权限分配

  • */admin@EXAMPLE.COM  : 表示 admin是属于EXAMPLE.COM中的一个账户,这个EXAMPLE.COM就是我们之前在kdc.conf中设置的
  • 第二个 * 表示拥有所有权限

krb5.conf

自动创建的内容如下

# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 dns_lookup_realm = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 rdns = false
 pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
# default_realm = EXAMPLE.COM
 default_ccache_name = KEYRING:persistent:%{uid}

[realms]
# EXAMPLE.COM = {
#  kdc = kerberos.example.com
#  admin_server = kerberos.example.com
# }

[domain_realm]
# .example.com = EXAMPLE.COM
# example.com = EXAMPLE.COM

Launch Kerberos Client

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/541257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode:23. 合并 K 个升序链表

23. 合并 K 个升序链表 1)题目2)过程3)代码1. 最开始2.初步优化 4)结果1. 最开始2. 初步优化 1)题目 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合…

机器学习基础认识(一)

机器学习应用 机器学习的应用,主要分为两类:预测、分类 预测,一般是指:根据数据,预测数值 分类,一般是指:根据数据,进行分类 预测与分类的关系【个人理解】 分类,本质…

零基础怎么入门网络安全?看这篇就够啦!

由于我之前写了不少网络安全技术相关的故事文章,不少读者朋友知道我是从事网络安全相关的工作,于是经常有人在微信里问我: 我刚入门网络安全,该怎么学?要学哪些东西?有哪些方向?怎么选&#xff…

Centos7.6部署postgresql15主从

目录 安装pg15(master和standby)主数据库配置(master)初始化数据库创建归档日志目录设置数据库访问权限修改数据库配置文件开启数据库 从数据库配置(standby)同步主库的数据文件创建文件standby.signal启动从数据库 主从状态验证master上验证standby上验…

H5性能测试怎么做?这些关键指标你得搞清楚

目录 01、Http相关 02、组件是否压缩 03、图片格式和大小是否合适 04、CSS放在顶部 05、JS放在底部 06、JS &CSS压缩 07、是否添加缓存 08、避免非200返回值 09、使用CDN 03、WebView相关 学习资源分享 软件测试面试小程序 01、Http相关 01、Http请求个数 有…

新星计划 Electron+vue2 桌面应用 1 基础

/(ㄒoㄒ)/~~报名了两个新星计划,工作之余写博客…… 另外一个是uniapp的属于个人兴趣,这个桌面应用正好符合工作需要。 活动地址:https://marketing.csdn.net/p/1738cda78d47b2ebb920916aab7c3584 教程地址: 2023新星导师活动…

Java实现PDF导出/预览

网上有很多关于PDF导出的文章,但是个人感觉实现的过于复杂,又是模板又是html的,有的还需要字体模板的支持,本片文章只是实现简单的PDF表格导出,可以实现PDF动态表格导出/预览,这类文章网上很少,…

实践「容器镜像扫描」,Get 云原生应用的正确打开方式

🌟 容器技术的兴起,让应用程序更加轻量化和可移植,大大提高了应用交付效率。但容器中的应用也面临各种安全威胁,容器及其镜像安全不可小觑。 近日,在「DevSecOps 软件安全开发实践」课程上,极狐(GitLab) 高…

Linux设置系统时间(上海时区、硬件时间、重启有效)

#查看时间 date#删除当前时区 rm -rf /etc/localtime #修改默认时区为上海 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #设置硬件时间 月/日/年 时:分:秒 hwclock --set --date"05/18/2023 17:11:15"#设置系统时间和硬件时间同步 hwclock --hctosys#保…

大数据发展前沿复习

对抗学习 生成对抗网络(GAN)是非监督式学习的一种方法,透过两个神经网络相互博弈的方式进行学习。生成对抗网络由一个生成网络与一个判别网络组成。生成网络以随机取样作为输入,其输出结果需要尽量模仿训练集中的真实样本。判别网…

vmware17pro安装激活ubuntu22版本最新教程无废话

第一步:下载 下载很方便 官方一键下载链接 第二步 安装 点下一步,一键安装即可,有可能会重启电脑,没关系的,是安全的 第三步:ji活 懂得都懂这是什么 JU090-6039P-08409-8J0QH-2YR7F 4A4RR-813DK-M81A9…

C语言算法--快速排序法

C语言算法–快速排序法 1-什么是快速排序法 快速排序(Quicksort)是一种常用的排序算法,它基于分治的思想。它的核心思想是选择一个基准元素,将数组划分为两个子数组,使得左边的子数组中的所有元素都小于等于基准元素…

【Flutter开发】Navigator2.0介绍及使用

目录 Navigator1.0Navigator2.0APPRouteInformationParserRouterDelegate 问题The Navigator.pages must not be empty to use the Navigator.pages API浏览器的回退按钮 总结 Navigator1.0 我们学习flutter一开始接触的路由管理就是Navigator1.0,它非常方便&#…

JAVA-Activiti 7与达梦、人大金仓兼容-nacos、服务pom文件配置(2)

目录 第一步,修改nacos服务配置 >需注意< 第二步,pom.xml依赖包配置 Activiti的源码包解决之后,接下来就好做很多了 第一步,修改nacos服务配置 spring:datasource:url: jdbc:kingbase8://127.0.0.1:54321/progress?currentSchemaprogress,productNamePostgreSQL,SYS…

保密+完整+可用+安全,规避代码安全「马奇诺防线」,构建软件供应链整体安全

近日&#xff0c;在「江狐会」广州站上&#xff0c;极狐(GitLab) 高级解决方案架构师武让分享了如何通过三大阶段 四大要点&#xff0c;规避代码安全「马奇诺防线」&#xff0c;真正确保软件供应链安全。以下内容整理自本次演讲。Enjoy&#xff5e; 先跟大家分享一个故事 一战…

计算机体系结构|MIT6.175和MIT6.375学习笔记

在2023年初&#xff0c;达坦科技发起成立硬件设计学习社区&#xff0c;邀请所有有志于从事数字芯片设计的同学加入我们的学习互助自学小组&#xff0c;以理解数字芯片设计的精髓&#xff0c;强化理论知识的同时提升实操技能&#xff0c;继而整体提升设计能力。现在&#xff0c;…

Vmware虚拟机安装MacOS13-Ventura详细教程

小编亲测 前提准备 功能强大的 Windows 电脑&#xff08;不能太差&#xff0c;不然会卡&#xff09;至少8GB内存默认是80GB的存储空间VMWare Workstation&#xff08;版本应该没什么需求&#xff0c;我装的是VMware Workstation 17 Pro&#xff09;Unlocker解锁软件MacOS Ventu…

最快的 Houdini 和 V-Ray 云渲染服务

Houdini是SideFX开发的一款3D动画软件应用。Houdini 最常用于 FX 部门&#xff0c;用于在电影和游戏中创建视觉效果。它被主要的 VFX 公司使用&#xff0c;例如 Walt Disney Animation Studios、Pixar、DreamWorks Animation、Double Negative、ILM、MPC、Framestore 等。Houdi…

推荐几款音频转文字软件给你

不知道小伙伴们有没有遇到过这种情况&#xff0c;在上学时期&#xff0c;我们经常需要记录老师上课的板书内容&#xff0c;但是边听边记可能速度会跟不上&#xff0c;还会遗漏掉一些内容&#xff0c;而且效率也不高。其实这时候&#xff0c;我们可以将老师讲话的内容先录制下来…

鸿蒙Hi3861学习十三-Huawei LiteOS-M(STA模式)

一、简介 AP&#xff08;Access Point&#xff09;无线接入点 AP是无线接入点&#xff0c;是一个无线网络的创建者&#xff0c;是网络的中心节点。一般家庭或办公室使用的无线路由器就是一个AP。 STA&#xff08;Station&#xff09;站点 STA也可以理解为终端的意思&#xff…