kerberos

理解

用来解决分布式环境下(客户端和服务端多对多)安全认证的问题。在包会被截取的情况下,仍能保证安全
注意:
只负责认证,无关授权。服务开启kerberos后,通过认证,服务端就会认为这是那个用户,至于授权,另外的功能。

多clients登陆一个server,太慢
每个client一台电脑,但使用远程的不同服务,比如文件下载、邮件、打印
那么如何认证呢?账号密码,这样一来,每个服务都需要记录所有用户密码。于是就把这个认证服务提取出来,起名叫charon。
不仅客户有账号密码,服务也有,
c通过charon的认证后,还不能访问服务,因为服务有密码,问题是,Charon不能直接给你密码,因为你会知道它。下次你想要邮件服务的时候,你就会绕过 Charon使用邮件服务而不需要认证。你也可以假装某人来使用邮件服务。
所以不是直接给你邮件服务的密码,Charon给你一张邮件服务的“票”。这张票含有你的名字,并且名字是用邮件服务的密码加密的
拿到票,你就可以向邮件服务请求你的邮件。你向邮件服务提出请求,并用你的票来证明你的身份。服务用它自已的密码来把票解密,如果票能被正确的解密,服务器将票里的用户名取出。服务把这个名字和随票一起送上的用户名进行比较。如果相符,服务器就认为你通过了验证,就把你的邮件发给你。
总结1:通过一个第三方认证机构,实现c认证,并且让服务知道。
票-{用户名:服务名}
问题1: 当服务解密一张票的时候,它如何知道它是被正确的解密的
问题2:票被窃取后,如何避免身份冒用(只要有票,另一个客户端也能访问服务)
所以票中还要包含IP地址 票-{用户名:地址:服务名}
问题3:每次访问一个没有票的服务,就要访问一次charon,就意味着在网络上暴露一次密码==》
用户只输一次口令:
新增一个“票据授权”服务,这个服务是charon服务的升级版,认证通过后,之前是发一个票,现在是发一个“票据授权”服务的票给用户,用户访问服务时,用“票据授权”服务的票去charon取邮件服务的票,然后再访问邮件服务。有“票据授权”服务的票,意味着通过认证。但此时服务还不知道,通过“票据授权”服务的票获取服务的票,此时服务就知道了。
问题4:获取票据授权票时,还是要网络间传密码
客户端只把用户名传给charon,charon返回一个用密码加密的包,然后客户端用密码把这个包解密,解密成功说明认证成功。就有了票据授权票
问题5:服务票是可重用的,IP地址也是可伪造的,如果获取了服务牌,就可以冒名访问服务。
服务票退出时销毁,或设置有效时间
票{用户名:地址:服务名:有效期:时间戳}
问题6:如果在有效期内偷了票
设计一种别人无法重用的票,这样的话你每次用新服务时都要取一张新票。但那是很笨的解决办法。

kerberos比账号密码的认证方式好在哪里,把keytab文件偷过来,不是一样可以认证登录吗

1.防止中间人攻击:Kerberos使用票据来进行认证,票据是由Kerberos服务器颁发的,只有合法用户才能获取有效的票据,这样可以有效防止中间人攻击。

2.单点登录:用户只需要一次登录就可以访问多个受信任的服务,无需重复输入密码,提高了用户体验。

3.安全性高:Kerberos使用密钥进行认证,而不是明文密码,密钥在传输过程中也会进行加密,提高了安全性。

4.可扩展性:Kerberos支持跨域认证,可以实现不同域之间的用户认证,提高了系统的可扩展性。

关于keytab文件,虽然可以通过获取keytab文件进行认证登录,但是需要注意保护keytab文件的安全性,避免被未授权的用户获取并进行恶意操作。此外,keytab文件也需要定期更新和管理,以确保系统的安全性。

网络认证协议,通过密钥系统来认证。实现不依赖于主机操作系统的认证,无需基于主机地址。

kerberos是三头狗的意思,作为第三方认证服务,本身就需要3个角色:client、server、KDC=DC(Key Distribution Center = Domain Controller)

角色:

AD(account database) 存所有白名单,只有AD中的主体才能申请TGT
AS(authentication server)为client生成TGT
TGS(ticket granting service)为client生成ticket

AD + KDC 均为DC

认证流程
在这里插入图片描述

  1. client向kerberos请求,希望获取某server的访问权限。AS首先判断是否在白名单,如果在,返回1个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值