linux – 如何通过pam_krb5中的kerberos拒绝访问已禁用的AD帐户
我有一个工作的AD /
Linux / LDAP / KRB5目录和身份验证设置,有一个小问题.禁用帐户后,SSH公钥认证仍允许用户登录.
很明显,kerberos客户端可以识别已禁用的帐户,因为kinit和kpasswd返回“客户端凭据已被撤销”,没有进一步的密码/交互. 是否可以配置PAM(在sshd_config中使用“UsePAM yes”)以禁止已禁用帐户的登录,其中身份验证由publickey完成?这似乎不起作用: account [default=bad success=ok user_unknown=ignore] pam_krb5.so 请不要在答案中介绍winbind – 我们不会使用它. 解决方法
我在别处读过其他人要求SSH“修复”,以便锁定帐户无法通过SSH登录. (参见Debian bug 219377)
这个请求作为一个补丁被拒绝了“因为它打破了用户[曾经用过passwd -l只锁定passwd”的一些期望.“ (参见Debian bug 389183) 例如有些人希望能够从密码登录中锁定帐户,但仍允许SSH密钥访问. PAM不会拒绝对刚刚被锁定的帐户进行SSH密钥身份验证(例如,由于密码尝试无效,因为SSH密钥身份验证的目的是不关注密码字段,这是帐户通常被锁定的地方.) 我知道密码哈希条目是在pam_authenicate()时隐式检查的,而不是在pam_acct_mgmt()时检查的. pam_unix.so pam_sm_acct_mgmt()根本不检查密码哈希,并且在公钥身份验证期间不调用pam_authenticate(). 如果您的目的是能够集中禁用帐户登录,则还有其他可能的解决方法,包括: 更改登录shell. (重新)移动他们的authorized_keys文件. 拒绝访问的另一个选项可能是在sshd_config中使用DenyGroups或AllowGroups. 从http://web.archiveorange.com/archive/v/67CtqEoe5MhDqkDmUMuL开始 您的问题的答案可能是“是的,如果您在密码字段以外的地方禁用它们” (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |