跳到主要内容

OTP 令牌

TOTP 与 HOTP 令牌的字段、用户自助添加、在用户上启用双因素、密码加 OTP 的输入方式,以及令牌不同步的处理。

本页说明 Authentication 下的 OTP tokens 页面。OTP 令牌是绑定到用户的软件或硬件动态口令。IPA 的 KDC 原生支持:用户认证时把密码和一次性口令拼成一个字符串输入,KDC 校验后签发票据,票据带 otp 认证指示器。不需要 RADIUS,不受许可模块限制。

OTP 令牌

令牌字段

令牌详情

字段含义
Unique ID令牌标识。添加时留空则自动生成 UUID
TypeTOTP(按时间,默认,30 秒一变)或 HOTP(按计数)
Owner令牌所属用户。一个用户可以有多个令牌
Validity start、Validity end时间窗之外令牌无效,用于临时账号
Vendor、Model、Serial硬件令牌的登记信息,仅作记录
Algorithm、Digits、Clock offset、Countersha1、6 位、30 秒是 Google Authenticator 一类 App 的默认值;硬件令牌按厂商参数填写

添加时页面显示一次二维码,用 FreeOTP、Google Authenticator 等扫码。二维码只显示这一次,关闭后不再出现;需要重新扫码只能删除后重建令牌。

用户自助

用户登录管理台后可以为自己添加、删除令牌(所有者只能是自己),不需要管理员。管理员为用户添加令牌时,密钥由服务端生成,管理员能看到二维码,安全上等于管理员也持有该令牌。正式启用前由用户自行重建一个。

在用户上启用双因素

拥有令牌不等于强制使用。在用户详情页 Account settings 的 User authentication types 勾选 Two factor authentication (password + OTP) 后,该用户只能用密码加 OTP 登录,单纯密码被拒绝。都不勾选时使用 Configuration 页的默认认证类型,出厂值为密码。

同一位置还可以勾选 Password、RADIUS、PKINIT、Hardened password、External Identity Provider。勾选多项表示任一方式都接受。

登录时的输入方式

在密码框输入密码后紧接六位口令,中间不加分隔符。密码 Secret123、口令 482913,输入 Secret123482913。sshd、登录页、kinit 都是这样。sssd 客户端需要 krb5_use_kdcinfo(默认开启)且 IPA 客户端 4.5 及以上才会把两段一起送到 KDC。

令牌不同步

TOTP 手机时间漂移或 HOTP 计数器错位时,使用登录页底部的 Sync OTP token:输入密码和连续两个口令,KDC 算出偏移并写入令牌的 Clock offset 或 Counter 字段。

边界

事项说明
适用对象只对 IPA 用户。AD 用户的 MFA 在 AD 侧
admin 用户可以启用双因素,但至少保留一个只用密码的应急管理员,令牌丢失时不至于全部锁死
HOTP 计数器在多台 IPA 服务器间通过复制同步。短时间内在两台上各用一次会出现已使用的拒绝

本页内容