【问题标题】:How to prevent a file in linux from being changed如何防止linux中的文件被更改
【发布时间】:2017-08-02 09:12:17
【问题描述】:

我在我的 CentOS 上安装了一个 CMS,它会不断更改文件。我想防止它被改变。 我试过了:

chattr +i file.php

或者:

chmod 444 file.php

即使我尝试复制文件(作为 file.php2)然后挂载它:

mount --bind file.php2 file.php -o ro

那我怎样才能防止我的文件被那个 CMS 更改呢?

【问题讨论】:

    标签: php linux file permissions centos


    【解决方案1】:

    试试sudo chmod 400 file.php,这将使其他用户无法编辑该文件。

    【讨论】:

    • 尝试找出从 CMS 更改该文件的位置
    • 我应该怎么做?有什么办法可以了解cms的哪个文件改变了file.php?
    • 在编辑器中搜索所有 cms 文件以查找 ex。 php 文件函数,如 fopen 或该文件名。以便您跟踪它
    • 文件被加密
    【解决方案2】:

    你必须

    • 防止所有者以外的其他人写入文件:

    chmod 644 file.php

    • 您必须将文件的所有权设置为与运行 CMS 的用户不同的用户和组

    chown root:root file.php

    • 另外,防止所有者以外的其他人写入目录:

    chmod 755 /path/to/dir/containing/

    • 另外,将文件夹的所有者更改为另一个用户/组

    chown root:root /path/to/dir/containing/

    为什么还要在文件夹上工作?

    因为对文件夹具有写入权限的用户可以删除任何其他用户的文件,即使他无法写入或读取它。因此,如果您不更改文件夹的权限,CMS 用户可能会删除您的“受保护”文件并在其位置写入另一个文件。

    编辑:当然,您的 CMS 不应该以 root 身份运行,否则以上所有内容都会被忽略

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多