我想设置一个 centos 服务器,用户可以使用他们的用户 ID、密码和 复制文件key
。基于唯一密钥,我想让用户访问多个文件。已经找到了一种使用 来设置用户身份验证部分的方法MySQL
。
因此命令看起来应该是这样的:
scp [email protected]:foobar.txt someKey
但无法弄清楚如何基于somekey
/提供多个文件String
。
有办法设置这个吗?
答案1
实现这一点的一种方法就是使用主文件夹和符号链接。
- 创建一个包含所有文件的目录。例如,
/var/pub/repo_files
。 - 在单独的目录中按角色对文件进行排序。例如
/var/pub/repo_files/files_for_group_1/
,,,,/var/pub/repo_files/files_for_group_2/
.../var/pub/repo_files/files_for_group_3/
- 为每个允许的用户创建一个系统用户
scp
,并添加 ssh 公钥,就像对简单的 ssh 访问所做的那样。仔细检查他们是否有主目录/home/userA/
。 - 创建从存储库文件夹到用户主目录的符号链接:
ln -s /var/pub/repo_files/files_for_group_1/ /home/userA/files_for_group_1
。对允许下载的其他文件夹重复此操作。 - 通过将用户分配到系统组()来微调文件的权限
useradd -G group1 userA
。例如,将其设置为只读会更好。
您可以将个人凭证(用户 ID、密钥和密码)分发给每个人,或者为每组文件创建一个通用凭证,以反映每个权限组合。