我一直在思考我的实时服务器上应该如何正确设置我的目录。根据Ubuntu 网站上有关文件权限的页面以下是目录权限与目录:
Permission Action chmod option
read (view contents, i.e. ls command) r or 4
write (create or remove files from dir) w or 2
execute (cd into directory) x or 1
我的根 Web 目录 /var/www/html 的文件权限应该是775
还是770
?此目录的所有者是 apache,组是 apache。
我显然对其工作原理感到困惑,我想澄清这一点,因为这很重要。
据我所知,770
将允许目录的所有者在该目录中执行任何操作,并允许与其相关的所有组apache
执行任何操作。(例如,我必须添加ftp
到apache
组和my username
组ftp
才能通过 ftp 上传文件)。
如果将“其他”设置为 0,则意味着外部人员不能读取、写入、进入目录或删除任何内容,但我仍可以通过浏览器访问网站。这是因为 apache 正在监听 http 请求并访问目录本身吗?
如果是这样,将其设置为 0 会阻止人们做什么?这主要是为了阻止人们使用 ssh 读取目录的内容吗?我有什么理由应该将目录的“其他”标志设置为 5?
运行 Centos 5.6。使用 PHP。
答案1
我的根 Web 目录 /var/www/html 的文件权限应该是 775 还是 770?
人们通常使用 775。
如果将“其他”设置为 0,则意味着外部人员不能读取、写入、进入目录或删除任何内容,但我仍可以通过浏览器访问网站。这是因为 apache 正在监听 http 请求并访问目录本身吗?
不可以。因为当您通过浏览器访问网站时,您会以apache
用户权限对该目录产生影响。
如果是这样,将其设置为 0 会阻止人们做什么?这主要是为了阻止人们使用 ssh 读取目录的内容吗?我有什么理由应该将目录的“其他”标志设置为 5?
是的,其他用户无法访问该目录(cd
)和列出内容(ls
)。