如何强制sudo在RHEL6上接受用户的AD密码

在我们的环境中,我们不会将Linux框joinMicrosoft域。 不过我们确实设置了Kerberos。 这使我们可以使用我们的AD凭证login到框中,只要有一个同名的本地帐户即可。 但是,当我使用sudo它只接受我的本地凭据。 如何使用我的AD密码与sudo? 谢谢。

看起来像是一个PAMconfiguration问题。 我们在Linux服务器上有类似的设置—对我们的AD DC进行Kerberosauthentication。

以下是用于比较的相关PAM文件。

首先, sudoconfiguration依赖的system-auth PAMconfiguration:

 # cat /etc/pam.d/system-auth #%PAM-1.0 auth required pam_env.so auth sufficient pam_fprintd.so auth sufficient pam_unix.so nullok try_first_pass auth requisite pam_succeed_if.so uid >= 500 quiet auth sufficient pam_krb5.so use_first_pass auth required pam_deny.so account required pam_unix.so broken_shadow account sufficient pam_localuser.so account sufficient pam_succeed_if.so uid < 500 quiet account [default=bad success=ok user_unknown=ignore] pam_krb5.so account required pam_permit.so password requisite pam_cracklib.so try_first_pass retry=3 type= password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok password sufficient pam_krb5.so use_authtok password required pam_deny.so session optional pam_keyinit.so revoke session required pam_limits.so session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid session required pam_unix.so session optional pam_krb5.so 

如您所见,这包括用于Kerberos的pam_krb5.so模块。

sudo PAMconfiguration文件包括system-auth ,如下所示:

 # cat /etc/pam.d/sudo #%PAM-1.0 auth include system-auth account include system-auth password include system-auth session optional pam_keyinit.so revoke session required pam_limits.so # cat /etc/pam.d/sudo-i #%PAM-1.0 auth include sudo account include sudo password include sudo session optional pam_keyinit.so force revoke session required pam_limits.so 

PAM可能非常强大,但是我花了一些时间才把头部缠绕起来。 在处理PAM问题时, 红帽的文档帮了我很多忙。