Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
webdev
V2EX  ›  Linux

linux 下 apache/nginx/web server 的目录权限配置

  •  
  •   webdev · May 20, 2016 · 3205 views
    This topic created in 3823 days ago, the information mentioned may be changed or developed.

    基于安全的考虑,希望能把 web 的目录配置的更安全些,只给必要的权限,比如 python, php 的执行权限,某些目录的读写权限等

    能否给点 tips 或者最佳实践

    9 replies  •  2016-05-21 12:39:55 +08:00
    whatot
    whatot
    May 20, 2016
    1
    如果用 centos ,配好 selinux 那就差不多了。推荐 redhat 的的 selinux 文档。
    ryd994
    ryd994
    May 21, 2016 via Android
    2
    简单办法进 docker
    最佳实践就是不需要的打死也不给
    文件应该由 root 持有
    web 服务器给 group 给 r 就行(文件夹需要 x )
    上传文件夹单独 mount ,加 noexec
    网站脚本用另外的组跑,反正 fcgi 又不是同一个用户
    Apache 就不行,但是 Apache 能限制脚本文件必须有 x ,而 fcgi 是不受此限制的
    ryd994
    ryd994
    May 21, 2016 via Android
    3
    docker 里啥都不给我不信他能翻出天去
    fcicq
    fcicq
    May 21, 2016
    4
    @ryd994 配合 docker 内任何可执行程序的一个 exploit 打穿 namespace 又不是新鲜事, 阿里的人就展示过了. 新版本内核有修正不等于稳定版 maintainer 会把这种东西看上眼 backport 回去, 所以完全可以说绝大多数 docker 用户就是在裸奔. 虚拟机再套一层是没办法的办法. 以内核社区保守的现状来看, 达到 solaris 或者 openbsd 现在的水平用多久都不可能了.
    ryd994
    ryd994
    May 21, 2016 via Android
    5
    @fcicq 非 root 也可以吗?
    ryd994
    ryd994
    May 21, 2016 via Android
    6
    @fcicq 我上面说的是啥都不给……
    很多人把 docker 当虚拟机用,这当然是会出事
    目前非 root 应该还是安全的
    fcicq
    fcicq
    May 21, 2016
    7


    这个影响范围没记错的话应该是 2.6.32 ~ 3.8.x 吧. syscall 有问题和 root 不 root 就没有关系了. 能找到这样洞的人, userspace 下搞个 exploit 肯定和玩一样.
    webdev
    webdev
    OP
    May 21, 2016 via iPhone
    8
    @fcicq 给点最佳实践?
    fcicq
    fcicq
    May 21, 2016
    9
    @webdev 大致只能听天由命. 安全是个系统工程, 而千里之堤可以溃于蚁穴. 有钱可以请白帽去审查或者建安全团队, 拿钱悬赏买 bug, 搞内部安全讲座, 请牛人去引入安全的开发流程甚至自研私有算法. 没钱对着 OWASP 检查检查也就算了吧.

    一个比较有趣的事实是, 如 GAE 那样跑在 sandbox 里然后还严重限制代码写法的方式, 或者换更安全操作系统自讨苦吃的方式也只有成熟开发者能明白. 偶愿意承认阿里在安全上有建树, 但跑在上面的普通人的应用单靠一个防火墙是远远不够的, 也自然没有太好的方案去解这个问题. rust 是这条路上一个不错的范例, 但离最终目标还是太远而且不可能所有应用都重写.

    实在对不起楼主. 楼主的问题并不好答. linux 目前可行的是在进程运行后用 seccomp 限制可用的 syscall, 在 openbsd 下这个叫 pledge 或者 tame. 脚本语言如果把 fork 进程的能力去掉, 普通的应用还能不能正常跑很难说. 最好是能实现最低权限的原则但这并不容易.
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1429 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 10:26 · PVG 18:26 · LAX 02:26 · JFK 05:26
    ♥ Do have faith in what you're doing.