ServerA 需要有一个 ServerB 的目录挂载在一个位置,具有写权限。
为此,我一直在使用 SSHFS。我发现 SSHFS 非常稳定(100% 可靠),而 NFS 不是那么稳定,除了很难配置,而且默认情况下会公开,等等......
使用 SSHFS,我必须在 ServerB 上创建一个本地用户,并将其私钥放在 ServerA 上,以设置挂载。
但是,如果有人入侵了 ServerA,黑客将能够通过使用该用户及其私钥登录到 ServerB 来访问 ServerB 上任何地方可能具有“其他”读取权限的任何目录/文件。
有什么办法可以防止这种情况,让这个用户可以访问的唯一目录就是需要挂载在ServerA上的目录吗?
配置 ssh 服务器以将用户及其文件放入限制性 chroot。如果使用 OpenSSH,可能带有指令
ChrootDirectory
和ForceCommand internal-sftp
NFS 需要定义导出的卷,并且不是远程 shell。在这些方面,它非常适合您的文件共享方案。虽然 NFS 可以加密,但通常不是,因此出于安全原因,通常仅限于专用网络。
如果网络中断或远程意外消失,两者都会导致糟糕的性能体验。