在 Linux 上使用 Kerberos 服务
对于数据管理员来说,最具挑战性的步骤之一是维护系统安全性和完整性的整个过程。关键过程涉及对每个用户的行为负责。它还涉及对网络基础设施中每个应用程序、服务器和服务所发生的情况的深入理解和控制。
Kerberos 仍然是 Linux 环境中最安全的身份验证协议之一。稍后您会发现 Kerberos 在加密方面也很有用。
本文讨论如何在Linux操作系统上实现Kerberos服务。该指南将引导您完成确保 Linux 系统上的 Kerberos 服务成功的强制性步骤。
在 Linux 上使用 Kerberos 服务:概述
身份验证的本质是提供可靠的过程来确保您识别工作站中的所有用户。它还有助于控制用户可以访问的内容。在开放网络环境中,此过程相当困难,除非您完全依赖每个用户使用密码登录每个程序。
但在一般情况下,用户必须输入密码才能访问每个服务或应用程序。这个过程可能会很忙碌。同样,每次使用密码都会导致密码泄露或容易遭受网络犯罪。 Kerberos 在这些情况下会派上用场。
除了使用户只需注册一次并访问所有应用程序之外,Kerberos 还允许管理员不断审查每个用户可以访问的内容。理想情况下,成功使用 Kerberos Linux 的目的是解决以下问题:
确保每个用户都有其唯一的身份,并且没有用户盗用他人的身份。
确保每个服务器都有其唯一的身份并证明它。此要求可防止攻击者潜入冒充服务器的可能性。
如何在 Linux 中使用 Kerberos 的分步指南
以下步骤将帮助您在 Linux 中成功使用 Kerberos:
第 1 步:确认您的计算机中是否安装了 KBR5
使用以下命令检查您是否安装了最新的 Kerberos 版本。如果没有,您可以下载并安装 KBR5。我们已经在另一篇文章中讨论了安装过程。
第 2 步:创建搜索路径
您需要通过将 /usr/Kerberos/bin 和 /usr/Kerberos/sbin 添加到搜索路径来创建搜索路径。
第 3 步:设置您的领域名称
您的真实姓名应该是您的 DNS 域名。这个命令是:
您将需要修改此命令的结果以适应您的领域环境。
第 4 步:为委托人创建并启动 KDC 数据库
为主体数据库创建密钥分发中心。当然,这也是您需要为操作创建主密码的时候。这个命令是必要的:
创建后,您可以使用以下命令启动 KDC:
步骤 5:设置个人 Kerberos 主体
是时候为您设置 KBR5 主体了。它应该具有管理权限,因为您需要管理、控制和运行系统的权限。您还需要为主机 KDC 创建主机主体。该命令的提示符将是:
此时您可能需要配置 Kerberos。转到文件“/etc/krb5.config”中的默认域并输入以下 deafault_realm=IST.UTL.PT。领域还应该与域名匹配。在本例中,KENHINT.COM 是主 master 中域服务所需的域配置。
完成上述过程后,将出现一个窗口,其中捕获了到目前为止的网络资源状态摘要,如下所示:
建议网络验证用户。在这种情况下,我们的 KenHint 应该具有比本地用户更高范围的 UID。
步骤 6:使用 Kerberos Kinit Linux 命令测试新主体
Kinit 实用程序用于测试创建的新主体,如下所示:
第 7 步:创建联系人
建立联系是极其重要的一步。运行票证授予服务器和身份验证服务器。票证授予服务器将位于一台专用计算机上,只有管理员可以通过网络和物理方式访问该计算机。将所有网络服务减少到尽可能少。您甚至不应该运行 sshd 服务。
与任何登录过程一样,您与 KBR5 的第一次交互将涉及键入某些详细信息。输入用户名后,系统会将信息发送到 Linux Kerberos 身份验证服务器。一旦身份验证服务器识别出您的身份,它将生成一个随机会话,以便票证授予服务器和您的客户端之间持续通信。
票证通常包含以下详细信息:
票证授予服务器和客户端的名称
门票有效期
当前时间
新一代钥匙
客户端的IP地址
步骤 8:测试使用 Kinit Kerberos 命令获取用户凭据
在安装过程中,默认域设置为 IST.UTL。 PT由安装包提供。之后,您可以使用 Kinit 命令获取票证,如下图所示:
在上面的屏幕截图中,istKenHint 指的是用户 ID。该用户 ID 还将附带一个密码,用于验证是否存在有效的 Kerberos 票证。 Kinit 命令用于显示或检索网络中存在的票证和凭证。
安装后,如果您没有自定义域,则可以使用此默认 Kinit 命令来获取票证。您还可以完全自定义域。
在本例中,istKenHint 是相应的网络 ID。
步骤 9:使用之前获得的密码测试管理系统
成功运行上述命令后,文档结果如下所示:
第10步:重新启动kadmin服务
使用# kadmind [-m]命令重新启动服务器可以访问列表中用户的控制列表。
第 11 步:监控系统的性能
下面的屏幕截图突出显示了 /etc/named/db.KenHint.com 中添加的命令,以支持客户端使用 DNS SRV 元素自动确定领域的密钥分发中心。
第 12 步:使用 Klist 命令检查您的票据和凭证
输入正确的密码后,klist实用程序将显示以下有关Linux系统中运行的Kerberos服务状态的信息,如下图所示:
缓存文件夹 krb5cc_001 包含符号 krb5cc_ 和用户标识,如前面的屏幕截图所示。您可以向 /etc/hosts 文件添加一个条目,以便 KDC 客户端与服务器建立身份,如下所示:
结论
完成上述步骤后,Kerberos 服务器启动的 Kerberos 领域和服务已准备就绪并可在 Linux 系统上运行。您可以继续使用 Kerberos 来验证其他用户并编辑用户权限。