Permissions for /var/www/html



我有一个带有GoDaddy的虚拟CentOS服务器,在设置/var/www/html的权限时遇到问题。

用户不允许以root的身份登录,甚至不允许将自己添加到root组,所以我把自己画成了一个角落:

  • 我使用以下命令更改了它的所有者(我使用了httpd.conf中的user:group):

    chown -R apache:apache /var/www/html
    
  • 我将自己的用户添加到apache组:

    usermod -a -G apache myuser
    
  • 我更改了权限:

    chmod 777 /var/www/html -R
    

这是让我的SFTP帐户能够在/var/www/html中创建、更改、删除文件的唯一方法。777!(SFTP帐户使用与ssh帐户相同的凭据,这意味着它们在所有意图和目的上都是相同的,对吧?)

我显然是Linux服务器管理员的新手,但这似乎非常不安全。有更好的方法来做这一切吗?

注意我计划在这里建立的网站将允许文件上传、cron作业等,所以我猜这也会使必要的权限复杂化。这是正确的吗?

更新使用775似乎不起作用;我可以上传/覆盖文件,但当我只是试图删除它们时,FileZilla会给我这个错误:

rm/var/www/html/index.php:拒绝权限

我不知道为什么,但改回777"解决"了这个问题。

只要以myuser身份登录,/var/www/html就只需要775。中间的7八进制(用于"组"acl)确保该组具有读取/写入/执行的权限。只要您属于拥有这些文件的组,"myuser"就应该能够写入这些文件。您可能需要为docuemnt根目录中的所有文件授予组权限,不过:

chmod -R g+w /var/www/html

我刚刚在apache网站托管目录上设置777权限方面处于类似的位置。经过一点修改,将文件夹的组所有权更改为"apache"组似乎允许基于用户组访问文件夹。

1) 确保文件夹的组所有权设置为apacheused/generates组以供使用。(check/etc/groups,我的是Ubuntu上的www数据)

2) 将文件夹权限设置为774,以阻止"每个人"拥有任何更改访问权限,但允许所需的所有者和组权限。

3) 将你的用户帐户添加到对文件夹有权限的组中(我的是www数据)。

以root用户身份登录:

sudo su
password:

然后去做你想在var/www-

中做的事情

相关内容

最新更新