Met*_*ate 4 centos apache-http-server download
我正在尝试将文件从我的服务器复制到我的台式计算机。我把它放在/var/www/html
(网页所在的位置),当我尝试下载它时,我得到了403 Forbidden
. 我什至尝试过chmod 777
该文件,但它没有修复它。
我做错了什么,为什么会出现此错误?
Bre*_*ugh 11
您需要修改该文件,使其归 Apache 用户所有。默认情况下,Apache 将以www-data
用户身份运行(在www-data
组中找到)。您可以使用chown
来修改文件的所有者(可能必须与 一起使用sudo
):
chown -R www-data:www-data /var/www/html
Run Code Online (Sandbox Code Playgroud)
最后,您需要确保文件至少具有Apache 用户的读取和执行权限。正如您所说,您已经这样做了,但是在修改所有权限/文件所有者之后,您应该通过运行 ls -l /var/www/html
. 作为安全措施,删除其他用户的所有权限也是明智之举:
chmod -R 0550 /var/www/html
Run Code Online (Sandbox Code Playgroud)
请注意,如果您使用 PHP 或其他需要写访问权限的脚本语言,则可能需要修改上面的权限掩码0770
。作为预防措施,仅在需要的目录上使用该掩码(例如写入网站缓存数据或上传文件)
小智 5
我正在使用 CentOS 7 + Apache,解决我的问题的唯一命令是它(因为我之前尝试过 chown+chmod):
须藤 setenforce 0 #禁用 SELinux
然后,我可以下载文件(在我的例子中是 anyfile.zip),但是,它可以为攻击者编写和执行代码打开大门。