20.9. 配置基于密码的帐户锁定策略

基于密码的帐户锁定策略可以防止通过重复尝试猜测用户密码来破坏该目录的黑客策略。可以设置密码策略,以便在给定数量的失败尝试绑定后锁定该目录。

20.9.1. 使用命令行配置帐户锁定策略

使用 dsconf pwpolicy set 命令配置帐户锁定策略设置。例如,要启用 lockout 策略并配置在 4 次失败的登录尝试后锁定该帐户:
# dsconf -D "cn=Directory Manager" ldap://server.example.com pwpolicy set --pwdlockout on --pwdmaxfailures=4
以下参数控制帐户密码策略:
  • --pwdlockout :将此参数设置为 onoff,以启用或禁用帐户锁定功能。
  • --pwdunlock :将此参数设置为 on,以在锁定持续时间后解锁帐户。
  • --pwdlockoutduration :设置帐户将被锁定的秒数。
  • --pwdmaxfailures :在帐户锁定前设置允许失败的密码尝试的最大数量。
  • --pwdresetfailcount :设置目录服务器重置帐户的失败登录数前的秒数。

20.9.2. 使用 Web 控制台配置帐户锁定策略

使用 Web 控制台配置帐户锁定策略:
  1. 在 web 控制台中打开 Directory Server 用户界面。请参阅 第 1.4 节 “使用 Web 控制台登录到目录服务器”
  2. 选择实例。
  3. 打开 Database 选项卡,然后选择 Global Password Policy
  4. Account Lockout 选项卡中,启用 Enable Account Lockout 设置并设置参数。例如:
    要显示参数的 cn=config 条目中的工具提示和对应属性名称,请将鼠标光标悬停在设置上。详情请查看 红帽目录服务器配置、命令和文件参考 中的参数描述。
  5. 点击 Save

20.9.3. 禁用传统密码锁定行为

当达到最大密码失败时(passwordMaxFailure)时,可以解释不同的方法。它取决于服务器如何计算整个故障计数中最后一次失败的尝试。
LDAP 客户端的传统行为是假定达到限制 失败。因此,如果失败限制设置为三个,则锁定会在第四个尝试失败时发生。这也意味着,如果第四个尝试成功,用户可以成功进行身份验证,即使用户技术上达到失败限制。在计数上是 n+1
LDAP 客户端往往预期最大失败限制来查看计数中最后一次失败的尝试作为最终尝试。因此,如果失败限制被设置为三个,则在第三个失败时,则帐户会被锁定。第四个尝试(即使使用正确的凭据)会失败。在计数上是 n
第一个场景 - 只有在超过尝试计数时帐户被锁定 - 是历史行为,因此这被视为旧的密码策略行为。在目录服务器中,默认启用此策略,因此只有在失败计数为 n+1 时,才会锁定帐户。这个旧行为可以被禁用,以便较新的 LDAP 客户端在期望时收到错误(LDAP_CONSTRAINT_VIOLATION)。这在 passwordLegacyPolicy 参数中设置。
禁用旧的密码锁定行为:
# dsconf -D "cn=Directory Manager" ldap://server.example.com config replace passwordLegacyPolicy=off