gpt4 book ai didi

docker - 使用用户名/密码使用 nfs 挂载网络共享

转载 作者:行者123 更新时间:2023-12-02 18:08:45 30 4
gpt4 key购买 nike

我正在尝试使用 nfs 为应用程序安装 NAS。
存储团队已将其导出到主机服务器,我可以通过/nas/data 访问它。

我正在使用容器化应用程序,此文件系统导出到主机将是一个安全问题,因为在主机上运行的任何容器都可以使用共享。所以这个 linux 到 linux 的挂载对我不起作用。

所以我唯一的替代解决方案是在容器启动期间使用用户名/密码安装这个 nas 文件夹。

以下命令在支持 Unix/Windows 的共享上运行良好。我可以在容器启动时挂载

mount -t cifs  -osec=ntlmv2,domain=mydomain,username=svc_account,password=password,noserverino //nsnetworkshare.domain.company/share/folder /opt/testnas

我被告知我们应该使用 nfs 选项而不是 cifs。
所以只是试图找出使用 nfs 或 cifs 是否会有所作为。

指定 nfs 选项会出现以下错误。
 mount -t nfs -o nfsvers=3,domain=mydomain,username=svc_account,password=password,noserverino //nsnetworkshare.domain.company/share/folder /opt/testnas


mount.nfs: remote share not in 'host:dir' format

下面的命令似乎也不起作用。
 mount -t nfs -o nfsvers=3,domain=mydomain,username=svc_account,password=password,noserverino nsnetworkshare.domain.company:/share/folder /opt/testnas

mount.nfs: an incorrect mount option was specified

我找不到带有用户名/密码的 mount -t nfs 选项示例。所以我认为我们不能将 mount -t nfs 与凭据一起使用。

请提出想法。

谢谢,
毗湿奴

最佳答案

CIFS 是一种文件共享协议(protocol)。 NFS 是一种卷共享协议(protocol)。两者之间的区别最初可能并不明显。

NFS 本质上是直接共享/dev/sda1 的一小步。客户端实际上接收到文件系统共享子集的裸 View ,包括(至少在 NFSv4 中)哪些用户可以访问哪些文件的描述。由客户端实际管理允许哪个用户访问哪些文件的权限。

另一方面,CIFS 管理服务器端的用户,并可能提供每个用户的文件 View 和访问权限。在这方面,它类似于 FTP 或 WebDAV,但具有读取/写入文件的任意子集的能力,以及与锁定相关的一些其他功能。

这听起来像是 NFS 明显不如 CIFS,但它们实际上是为了不同的目的。 NFS 对于通过以太网连接的外部硬盘驱动器和虚拟云存储最有用。在这种情况下,打算与机器共享驱动器本身,但只是通过以太网而不是 SATA 来完成。对于该用例,NFS 提供了更大的简单性和速度。您正在使用的 NAS 实际上就是一个完美的例子。它并不意味着管理访问,它意味着首先不要暴露于不应该访问它的系统。

如果您绝对必须使用 NFS,有几种方法可以保护它。 NFSv4 有一个基于 Kerberos 的可选安全模型。祝你好运。更好的选择是不允许从主机直接连接到 NFS 服务,而是需要通过一些安全隧道,例如 SSH 端口转发。然后安全性归结为建立隧道。但是,其中任何一个都需要主机的合作,这对于您的 NAS 来说可能是不可能的。

请注意,如果您已经在使用 CIFS 并且它运行良好,并且它为您提供了良好的访问控制,则没有充分的理由切换(尽管为了安全起见,您必须关闭 NFS)。但是,如果您有一个 docker 风格的主机,那么在 docker-host 上使用 iptables(或您选择的防火墙)可能是值得的,以防止其他容器首先访问 NAS。与其将安全性委托(delegate)给 NAS,不如在 docker-host 级别完成。

关于docker - 使用用户名/密码使用 nfs 挂载网络共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53604706/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com