SSHFS 文件从一台服务器到另一台服务器

SSHFS 文件从一台服务器到另一台服务器

我正在尝试寻找将文件从一台服务器传输到另一台服务器的最安全的方法。

我有以下架构:

建筑学

目前我正在使用主用户salamis来挂载目录。

原始目录中的文件是通过 PHP 文件管理器创建的elfinder

不幸的是,我无法通过 PHPmove执行renamedelete挂载目录中的任何文件。我被拒绝了权限。

1)是不是因为我使用salamis而不是 来挂载文件系统www-data

2) 将文件系统挂载Server 2为是否安全www-data?如果是,我该如何实现?www-data没有密码,我无法使用 登录su -m www-data。我得到authentication failure

3)你能想到更好的架构吗?

答案1

正如您所怀疑的,这可能是 uid/gid 映射的问题。首先,您需要找到 uid www-data

$ id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)

然后你可以要求 sshfs 进行如下映射:

$ sshfs -o uid=33,gid=33 <remote> <local>

这也许能解决问题。

就设计而言,只要注意,如果您的 ssh 连接断开,挂载的文件系统也会断开。我不知道有什么简单的方法可以检测它(除了可能有一个 cron 作业可以检测它)。如果可以选择 NFS,它可能会更强大。不过,我确实发现 sshfs 非常方便。

相关内容