我需要为用户创建一个单独的文件夹,允许他只执行一个二进制文件。他可以调用python / perl并运行程序。 但是用户不应该删除其目录中的任何文件夹,也不应该能够查看任何其他目录。我怎样才能做到这一点?
答案 0 :(得分:2)
如果他们只通过ssh访问,那么ChrootDirectory
就可以了。
简而言之,您在另一个目录中创建一个假的/
系统,允许用户运行所有程序。他们需要的图书馆。
如果需要,请参阅ChrootDirectory
手册页的sshd_config
部分或Here之类的内容,以获取更全面的指南。
答案 1 :(得分:0)
CHMOD完成工作
chmod 755 directory/filename
7 user (**owner**) has full access.
5 allows **group** user "read" and "execute" permissions, but
not "write" permissions.
5 allows **others** "read" and "execute" permissions,
but not "write" permissions.
供您参考:
5允许"读"和"执行"权限,但不是"写"权限。 A 6允许读写权限,但不允许"执行"。 4将是"读"只要。 A 2将是"写"只有,1将是"执行"仅
进一步参考:link
答案 2 :(得分:0)
您还可以考虑配置和使用受限制的shell ,例如一个restricted bash。
但是,请注意,如果您允许用户运行像Python
这样的脚本语言,他将能够绕过这些限制(使用一些聪明的脚本)。所以 chroot 可能更可取。
您可以为该用户定义一个单独的组,以避免他做更多事情。另请参阅nobody username,SELinux等