首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让用户只能读取文件?

问如何让用户只能读取文件?
EN

Unix & Linux用户
提问于 2023-03-29 11:52:59
回答 1查看 78关注 0票数 1

我每天都有一些新文件要发布。

我的同事需要sftp/scp到我的Linux服务器来复制这些文件。

我不希望他做任何文件删除/移动/执行.等等,他唯一能做的就是把文件复制回来(scp/sftp)。

最好的办法是他不能切换目录。

有什么办法吗?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2023-03-29 12:38:31

这可以通过创建具有只读取文件或文件夹所需权限的用户和组来解决。

下面是如何通过scp (ssh)实现对Linux服务器上文件夹的只读访问的示例。

代码语言:javascript
复制
useradd <USERNAME> # no need to create a home directory, so we can skip --create-home

groupadd <GROUPNAME> # create the group that will have read-only-access to the folder

现在将创建的用户添加到创建的组中。

代码语言:javascript
复制
usermod -aG <GROUPNAME> <USERNAME>

现在,在您的系统中的某个位置创建用户应该访问的文件夹:

代码语言:javascript
复制
mkdir <FOLDERNAME> -m rwxr-x-r 

现在,将该文件夹的组更改为创建的组

代码语言:javascript
复制
chgrp <GROUPNAME> </PATH/TO/FOLDER>

现在,当您在该文件夹中添加文件时,请确保它们也属于创建的具有必要权限的组:

代码语言:javascript
复制
chmod 744 <FILENAME> 
chgrp <GROUPNAME> <PATH/TO/FILE>

这样,用户就可以通过scp访问文件夹,如下所示:

代码语言:javascript
复制
scp -r user@<IP>:/path/to/folder /local/path/

可以跳过具有744权限的编辑添加组,因为其他人的默认权限已经是744 (只读)。谢谢@symcbean指出这一点。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/741312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档