服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

与chroot的SFTP取决于连接用户的公钥

我想build立一个服务器(运行Debian或FreeBSD),通过sshfs从不同的客户端接收备份。 每个客户端应该能够读取和写入自己的备份数据,但不能读取任何其他客户端的数据。 我有以下想法:每个客户端通过公钥validation连接到[email protected]。 用户备份有一个特殊的authorized_keys文件,如下所示: command="internal-sftp" chroot="/backup/client-1/data" ssh-rsa (key1) command="internal-sftp" chroot="/backup/client-2/data" ssh-rsa (key2) command="internal-sftp" chroot="/backup/client-3/data" ssh-rsa (key3) etc… 这样做的好处是我不需要为每个客户端使用一个单独的用户,我可以很容易地用脚本自动生成authorized_keys文件。 只有一个问题: chroot=…不起作用。 OpenSSH的authorized_keys文件似乎没有ChrootDirectory(可在全局或匹配用户块中的/ etc / ssh / sshd_config中工作)的等效项。 有一个相当简单的方法来完成我想要使用OpenSSH? 也许用巧妙的方式使用command=…指令? 另外,还有其他的SFTP服务器可以做我想要的吗? 编辑 :为了更清楚我想实现什么:我想要几个客户端能够存储在我的服务器上的文件。 每个客户端都不应该能够看到其他客户端的文件。 而且我不想用几十个用户帐户来清理我的服务器,所以我想要一个易于pipe理的解决scheme,让客户共享一个用户帐户,并且仍然无法访问彼此的文件。