zoukankan      html  css  js  c++  java
  • Apache服务器运维笔记(6)----目录 文件 网络容器的安全问题

      <Directory>、<Files>、<Location> 这三个容器的作用都很相似,都是以容器的形式来封装一组指令对访问进行控制,只是它们的区别在于作用于目录、文件、网络,因此经常会有人将它们混用而导致一些安全问题的出现,例如,使用<Location>容器来限制文件系统中的目录或是文件:

    <Location /srv/www/html>
    Order allow,deny
    Deny from all
    </Location>

      在上面的例子中,<Location /srv/www/html>确实限制了 http://192.168.1.210/srv/www/html 的访问,但是超链接是不区分大小写的,用户如果使用 http://192.168.1.210/Srv/www/html 这样的链接来访问,<Location /srv/www/html>容器就无法限制了,其结果就是用户可以使用 http://192.168.1.210/Srv/www/html 或是其他大写格式来进行访问。

      而对于<Directory>与<Files>容器来说也会有这样的安全问题,当UNIX/Linux系统中的文件或是目录使用符号链接时,如果没有使用Options指令禁止对符号链接的跟随也会产生安全问题,例如:

    <Directory /srv/Apache/html>
    Order Deny , Allow
    Deny from All
    </Directory>

      在上面的例子中,如果 /srv/Apache 目录下的 html文件夹是链接到其他目录如 /root 的,那么,当用户访问 /srv/Apache/html/ 路径时则显示的是 /root 目录下的内容。

      

      对于<Directory>、<Files>、<Location>这三个容器来说,最好的方法就是使用<Directory>、<Files> 来控制文件系统,而<Location>容器则用来控制一个不存在于文件系统的对象,如果要更安全的控制则需要使用Options指令禁止对于符号链接的跟随。

  • 相关阅读:
    常用函数
    PostgreSql那点事(文件读取写入、命令执行的办法)
    如何检测Windows中的横向渗透攻击
    小米笔记本pro版bios经常找不到硬盘
    grunt教程
    nodejs廖雪峰大神教程
    ClickOnce是什么?如何使用?
    asp.net中的ORA-12154: TNS: 无法解析指定的连接标识符
    未能加载文件或程序集 ICSharpCode.SharpZipLib
    PL/SQL 循环
  • 原文地址:https://www.cnblogs.com/dongling/p/5677067.html
Copyright © 2011-2022 走看看