我不太了解不同的权限级别。 如果我需要做的就是在目录中提供静态页面,那么运行node.js所需的最低用户级别是多少。
同样,dropbox守护程序在node.js中运行所需的最低用户级别是多少?
编辑:例如,在本指南中:https://www.linode.com/docs/security/securing-your-server/
使用此命令创建一个新用户来管理系统:
usermod -a -G sudo exampleuser
如何创建Dropbox或node.js可以运行的低级别,特权较低的用户?
编辑:我不确定哪个文件夹设置了哪些文件权限。我不想Dropbox能够运行和修改其文件夹的内容。我不想node.js也有权读取和执行该文件夹中的文件。答案 0 :(得分:1)
较低级别的用户不会成为sudo组的一部分。通常,您需要对任何文件的读访问权限,但不一定要写。
通常,最佳做法是单独创建具有自己的组的通用用户。
然后,您将为该用户及其文件设置一个目录树。
您可以使特定组或世界可读的文件组可读。这些目录还需要执行权限。
对于您所描述的情况,我也会将Dropbox作为单独的用户运行,然后将dropbox文件夹设置为group或world readable。 Dropbox用户也不应该成为sudo组的一部分。
假设您有3个用户:
每个用户都在自己的组中,具有相同的名称。我假设您的Dropbox文件夹名为〜/ Dropbox。
chown -R dropbox:node ~/Dropbox
find ~/Dropbox -type d | xargs chmod 750
find ~/Dropbox -type f | xargs chmod 640
mkdir ~/node
# copy files in here
chown -R node:node ~/node
find ~/node -type d | xargs chmod 750
find ~/node -type f | xargs chmod 640
请注意,这会关闭所有二进制文件上的可执行位,因此您可能需要手动修复它们。另请注意,chmod
和chown
都需要root权限才能修改其他用户文件,因此您可能需要为这些命令添加一些sudo
,但它已经变得很长。< / p>