linux – 如何防止危险的bash命令?

当使用带或不带sudo的bash时,有很多陷阱.例如,以root身份登录
rm -rf ~/bin

rm -rf /bin

只有一个角色,但这种差异会让你很不高兴.

为了保护自己一些这样的灾难我在/etc/bash.bashrc(systemwide .bashrc)中使用它:

if [ $UID -ne 0 ]; then
    # ask me before deleting
    alias rm='rm -i'
else
    # do not delete / or prompt if deleting more than 3 files at a time
    alias rm='rm -I --preserve-root'
fi

有了这个,我至少要在遇到灾难之前确认删除.
也许还有更危险的命令,如…

什么是最危险的bash命令并保护自己免受日常灾难的影响?

解决方法

首先,永远不要使用root来执行日常命令.

这是实际让自己暴露于灾难的最佳方式.

考虑到这一点,如果您使用sudo,您实际上可以限制命令和用户可以使用sudo执行的命令选项.

例如,在您的sudoers文件中,您可以限制使用rm,如下所示:

myuser ALL=(root)   nopASSWD: rm -r

这意味着myuser只能以root身份使用sudo,并且只能使用-r选项执行rm.

sudoers文件支持正则表达式,因此您可以真正自定义使用sudo时可执行的内容.

A good starting point

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...