我有一个Kerberized的NFSv4设置,在Ubuntu下对于普通用户来说工作得很好,但是我不能让它在根目录下工作。
对于大多数系统,我不想允许root访问,但是我有一些服务器,通过NFS访问这个文件服务器是必须的。
我知道给定客户端上的root使用客户端的机器标识,而不是普通的kerberos主体。
我无法弄清楚的是:如何将给定的机器身份与服务器上的根访问等同起来? 在AIX和Solaris下(在服务器的导出文件中有root =),似乎是可能的,但不是linux。
我意识到我只允许需要它的主机进行“sys”身份validation,并为所有其他主机保留krb5,但是我想了解如何在完全Kerberos环境中执行此操作。
谢谢,
NRB
PS我正在使用no_root_squash。
那么,这是一个可行的解决scheme。 这不是唯一的,但在我看来,这是最干净的。
在服务器的idmapd.conf文件中提供静态映射,该文件将客户机的机器凭据与服务器上的根帐户等同起来。
您还必须先告诉idmapd检查静态映射。 从我的服务器configuration相关的片段是:
[Translation] GSS-Methods = static,nsswitch [Static] nfs/[email protected] = root
需要注意的是,nfs客户端将通过/etc/krb5.keytab(至less)按以下顺序查找密钥:
它采取第一个,并使用它。 这是您必须在服务器上的idmapd.conf文件的静态部分中使用的名称。
NRB