如何在 CoreOS 中挂载 Kerberized NFS 文件系统?

如何在 CoreOS 中挂载 Kerberized NFS 文件系统?

我正在尝试定义一个 systemd 挂载,cloud-config.yml以便 CoreOS 在启动时挂载一个使用 Kerberos 的文件系统。

文件系统提供商已将和交给我,krb5.conf我使用的部分krb5.keytab将其写入文件夹。/etcwrite_filescloud-config.yml

这是我的安装规格:

- name: mnt-backup.mount
  enable: true
  content: |
    [Mount]
    What=vid52590.nas1.lan:/vid52590
    Where=/mnt/backup
    Options=sec=krb5
    Type=nfs
    [Install]
    WantedBy=multi-user.target

当系统尝试挂载 nfs 文件系统时,我通过 journalctl 收到以下消息:

Sep 12 16:30:40 backend systemd[1]: Mounting /mnt/backup...
Sep 12 16:30:40 backend systemd[1]: mnt-backup.mount: Mount process exited, code=exited status=32
Sep 12 16:30:40 backend systemd[1]: Failed to mount /mnt/backup.
Sep 12 16:30:40 backend systemd[1]: mnt-backup.mount: Unit entered failed state.

我尝试在控制台上发出如下命令:

sudo mount -o sec=krb5 vid52590.nas1.lan:/vid52590 /mnt/backup

收到以下错误:

mount.nfs: access denied by server while mounting vid52590.nas1.lan:/vid52590

我已仔细检查 krb5.keytab 是否已逐字节正确写入。

有关于如何解决此配置问题的想法吗?提前致谢!

运行时:

kinit -kt /etc/krb5.keytab <principal>

命令返回,但未显示任何响应。如果我使用不存在的主体,它会显示:

kinit: Keytab contains no suitable keys for <invalid_pricipal> while getting initial credentials

答案1

遗憾的是,coreos 中的 nfs-utils 包似乎不支持 kerberos。因此系统缺少 rpc.gssd,而 rpc.gssd 是 kerberized nfs 设置所必需的

相关内容