FreeRadius-GoogleAuthenticator-Kerberos密码更改奇怪

我们使用FreeRadius,Kerberos和Google Authenticator来实现双因素身份validation。 这两个因素auth从radtest和Watchguard防火墙都能正常工作。 要login,用户inputKerberos密码并连接Google Authenticator提供的PIN。 Radius使用pam与GAuth交谈,然后使用Kerberos。 帕姆堆栈是

/etc/pam.d/radiusd auth requisite pam_google_authenticator.so forward_pass auth required pam_krb5.so use_first_pass 

forward_pass指令告诉pam_google_authenticator.so删除尾随的六个字符,validation它们,然后将剩余的string作为密码传递给下一个步骤。

当Kerberos策略超时密码,需要重置(或在主体上设置+ needchange)时,会出现问题。 发生这种情况时,不通知用户。 他们正常input密码并locking,并被允许进入。后台的某些内容会将Kerberos密码更新为旧密码加上附加的引脚(例如mypasswrd123456)。 我已经validation了这个新密码实际上存在于Kerberos数据库中,可以用于进一步的身份validation,但是当然您需要意识到发生了更改并保存了组合的string。 在生产中不太可能发生。

我一直无法find正在做什么改变。 唯一的日志消息是确认密码已更新。 似乎Kerberos必须警告Radius需要更改,Radius会看到它有一个新的密码并将其传回。

我试过添加

  password required deny.so 

到/etc/pam.d/radiusd,但没有帮助。

OS是Ubuntu,并且软件包是用apt-get安装的。

任何想法赞赏。