在Ubuntu上root用户可以访问kerberized NFSv4主机

我有一个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