Kerberos
Kerberos提供了一个集中的认证服务器,其函数是向服务器认证用户,向用户认证服务器。在 Kerberos 中,身份验证服务器和数据库用于客户端身份验证。 Kerberos 作为第三方可信服务器运行,称为密钥分发中心 (KDC)。网络上的每个用户和服务都是一个主体。
Kerberos 的主要组件有:
- 认证服务器(AS):
身份验证服务器执行票证授予服务的初始身份验证和票证。 - 数据库:
Authentication Server 验证数据库中用户的访问权限。 - 票证授予服务器 (TGS):
票证授予服务器为该服务器签发票证
Kerberos 概述:
- 第1步:
用户在主机上登录和请求服务。因此用户请求票证授予服务。 - 第2步:
Authentication Server 使用数据库验证用户的访问权限,然后给出ticket-granting-ticket 和会话密钥。结果使用用户的密码加密。 - 第 3 步:
使用密码完成消息的解密,然后将票证发送到票证授予服务器。 Ticket 包含身份验证器,例如用户名和网络地址。 - 第4步:
票证授予服务器解密用户发送的票证,身份验证器验证请求,然后创建票证以从服务器请求服务。 - 第五步:
用户将 Ticket 和 Authenticator 发送到服务器。 - 第六步:
服务器验证票证和身份验证器,然后生成对服务的访问。在此用户可以访问服务之后。
Kerberos 限制
- 必须单独修改每个网络服务以与 Kerberos 一起使用
- 它在分时度假环境中效果不佳
- 安全的 Kerberos 服务器
- 需要一个永远在线的 Kerberos 服务器
- 存储所有密码都使用单个密钥加密
- 假设工作站是安全的
- 可能导致级联失去信任。
- 可扩展性
Kerberos 是绝对可靠的吗?
没有任何安全措施是 100% 坚不可摧的,Kerberos 也不例外。因为它已经存在了很长时间,所以黑客多年来一直有能力找到绕过它的方法,通常是通过伪造票证、重复尝试密码猜测(蛮力/凭证填充)以及使用恶意软件来降级加密.
尽管如此,Kerberos 仍然是当今可用的最佳访问安全协议。该协议足够灵活,可以使用更强大的加密算法来对抗新的威胁,如果用户使用良好的密码选择指南,你应该不会有问题!
Kerberos 有什么用途?
尽管 Kerberos 在数字世界中随处可见,但它通常用于依赖强大的身份验证和审计功能的安全系统中。 Kerberos 用于 Posix、Active Directory、NFS 和 Samba 身份验证。它也是 SSH、POP 和 SMTP 的替代身份验证系统。