最近帮朋友维护一个网站安全漏洞,被扫描到http://www.example.com/static目录可以直接浏览,static目录下有css、js、images等静态资源,特别是uploads中有一些文件资料可以直接被访问下载,这就造成了很大的安全漏洞,我们需要想办法限制这种直接访问。
环境 | 版本 |
---|---|
操作系统 | windows server 2012 r2 |
web服务器 | Apache2.4 |
解决方案
./conf/httpd.conf配置 < Directory >属性,不展示目录列表。
<Directory "x:/Apache2.4/www">
......为了清晰删除多余部分
# Options Indexes FollowSymLinks --原内容
Options FollowSymLinks --调整后内容,去掉Indexes,不展示www目录内容。
# 另外还有一种写法如下:
# Options -Indexes FollowSymLinks --Indexes前缀加-,不展示www目录内容;
# Options +Indexes FollowSymLinks --Indexes前缀加+,展示www目录内容;
......为了清晰删除多余部分
</Directory>
以上配置就可以实现,访问www.example.com/static不会展示目录列表。x:/Apache2.4/www为我网站的根目录,这样指定后就代表着我根目录下的所有目录列表、子目录和文件都不会展示。