debian – Kerberos,.k5login和sudo
背景:我使用的是Debian 7系统,我使用libnss-ldap,libpam-krb5和nscd与LDAP Kerberos系统集成.我修改了sudoers以允许LDAP组权限sudo并获得超级用户权限.因此,我可以作为LDAP组登录来管理机器.这一切都运行正常,ssh登录适用于LDAP用户.
我只是在我的用户帐户Cosmic Ossifrage的主目录中试验.k5login文件.在文件中,我列出了: cosmic_ossifrage@REALM.COM 这是一个有效的Kerberos标识. SSH登录,因为此用户继续正确使用.k5login文件. 但是,使用我的主目录中的.k5login文件,我无法再使用sudo -i获得超级用户权限.这似乎没有任何意义,因为.k5login在我的主目录中,而不是root目录,所以在我看来,root用户和sudo命令都不应该被限制在sudoers文件中. . 但是,使用上面的.k5login文件,sudo -i和sudo su都没有工作,而他们以前也没有.删除.k5login文件后,此功能已恢复,我可以再次sudo. 在日志文件/var/log/auth.log中,此时报告的许多错误消息中有一个来自sudo,说明: [pam:sudo] krb5_kuserok failed for user cosmic_ossifrage 我是否错过了.k5login应该做什么的基本定义?这是预期的行为,如果是,为什么? 解决方法
根据
Mark’s
comment,.k5login文件必须满足以下要求:
根据Kerberos source code中的注释. 在这种情况下,除了Cosmic Ossifrage用户之外,任何人都无法读取.k5login文件.存储用户主目录的NFS安装也强制执行root压缩,甚至禁止root用户访问.通过使文件具有全局可读性,返回了sudo to root功能. (标记社区维基,因为答案最初来自评论.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |