第 1 章 系统身份验证简介
建立安全网络环境的基石之一是确保访问权限仅限于那些有权访问网络的人。如果允许访问,用户可以向系统 进行身份验证,这意味着他们可以验证其身份。
在任何 Red Hat Enterprise Linux 系统上,都有多种不同的服务可用来创建和识别用户身份。这些可以是本地系统文件、连接到 Kerberos 或 Samba 等更大身份域的服务,或者用于创建这些域的工具。
本指南回顾了一些可供管理员用于管理本地系统身份验证和身份的通用系统服务和应用程序。其他指南提供了有关 创建 Linux 域 和将 Linux 系统集成到 Windows 域 的更多详细信息。
1.1. 确认用户身份
身份验证 是确认身份的过程。对于网络交互,身份验证涉及由另一方识别双方。可以通过多种方式通过网络使用身份验证:简单密码、证书、一次性密码(OTP)令牌、生物统计扫描。
另一方面,授权 定义允许身份验证方执行的操作或访问权限。
身份验证要求用户提供某种 凭据 来验证其身份。所需的凭证种类由正在使用的身份验证机制定义。系统中的本地用户有几种身份验证:
- 基于密码的身份验证.几乎所有软件都允许用户通过提供可识别名称和密码进行身份验证。这也称为 简单身份验证。
- 基于 证书的身份验证.基于证书的客户端身份验证是 SSL 协议的一部分。客户端通过数字方式为随机生成的数据签名,并在网络上同时发送证书和签名数据。服务器验证签名并确认证书的有效性。
- Kerberos 身份验证.Kerberos 建立了一个短期运行的凭证系统,称为 ticket-granting ticket(TGT)。用户提供用户名和密码,用于标识用户和向系统指示用户可以向系统发出票据。TGT 可被重复用于请求访问票据给其他服务,如网站和电子邮件。使用 TGT 进行身份验证允许用户以这种方式只经历一个验证过程。
- 基于智能卡的验证.这是基于证书的身份验证的一种变体。智能卡(或 令牌)存储用户证书;当用户将令牌插入到系统中时,系统可以读取证书并授予访问权限。使用智能卡的单点登录需要执行三个步骤:
- 用户在卡阅读器中插入智能卡。红帽企业 Linux 上的可插拔验证模块(PAM)检测插入的智能卡。
- 系统将证书映射到用户条目,然后将智能卡上显示的证书(按照基于证书的身份验证中所述使用私钥加密)与用户条目中存储的证书进行比较。
- 如果针对密钥分发中心(KDC)成功验证证书,则允许用户登录。
基于智能卡的验证基于 Kerberos 的简单验证层,通过添加证书作为附加识别机制,并通过添加物理访问要求来构建。