zoukankan      html  css  js  c++  java
  • 怎样阻止Linux服务器执行rm -rf /*命令

    自己在Debian 9.9上测试成功,请结合您操作系统的环境,谨慎操作,在进行测试时候尽量先使用一个临时目录,若由于你的不正确操作造成的后果与本人无关
    

      

    众所周知,Linux中的rm -rf /*命令是一条灾难性的命令.因此有的运维人员想一些办法来禁止这条命令的执行,今天演示一个简单的
    

      

    今天我们使用的是替换rm命令的方法,然后做一个简单的配置,让系统不能执行rm -rf /*

    1.下载safe-rm

    实际上有这一个工具,也就是safe-rm命令,我们用来替换rm就行了,实际上safe-rm就是一个删除命令,只不过呢它可以通过配置文件来做一些过滤.
    官网下载https://launchpad.net/safe-rm/+download
    我直接下载0.12版本

    wget https://launchpad.net/safe-rm/trunk/0.12/+download/safe-rm-0.12.tar.gz
    

      

    2.替换系统的rm命令

    # 解压
    tar -zxvf safe-rm-0.12.tar.gz
    # 将safe-rm命令复制到系统的/usr/local/bin目录
    cp safe-rm-0.12/safe-rm /usr/local/bin/
    # 创建链接,将safe-rm替换rm
    ln -s /usr/local/bin/safe-rm /usr/local/bin/rm
    

      

    此时已经替换掉rm命令,为了确保环境变量有效,我们将/usr/local/bin目录设置在所有PATH环境变量之前.先更改/etc/profile文件,在文件末尾追加以下代码

    PATH=/usr/local/bin:$PATH
    

      

    编辑完毕之后,为了让环境变量在整个系统全局生效,我们重启操作系统.重启之后执行rm命令就相当于执行safe-rm了
    

      

    3.设置过滤目录

    过滤目录将不被删除,编写 /etc/safe-rm.conf 文件,添加自己需要过滤的目录,以下是配置示例,实际上要根据你的需求来

    / 代表过滤 /
    /* 代表过滤 / 下面的所有文件

    在以上代码中,我过滤掉safe-rm所在目录和其链接所在目录,除此之外,还过滤其配置文件,这样的话可以一定程度上做到安全防护了
    

      

    如果配置文件中,有 /root/test/123 这样一条规则,那么删除/root/test/123文件时会被过滤掉,但是删除/root/test时能成功删除,因此不支持递归的规则,那么配置文件我们应该写成以下格式

     

    原文:https://blog.csdn.net/qq_34330286/article/details/103456200

  • 相关阅读:
    【jQuery插件】使用cropper实现简单的头像裁剪并上传
    Hibernate与 MyBatis的比较
    ES引擎原理介绍
    ES中的分词器研究
    服务转发Feign
    hytrix的python实现
    Consul的服务注册与发现-python版本
    setupTools工具新建项目
    docker系统学习
    NLP关键技术
  • 原文地址:https://www.cnblogs.com/sucretan2010/p/13778221.html
Copyright © 2011-2022 走看看