linux centos如何限制用户执行某些特定命令?比如不想让用户执行rm命令
网友回复
可以使用Restricted Shell。
Restricted Shell用于限制用户对Linux系统的访问。一旦将用户置于受限 shell 模式,他们就只能执行有限的命令集。 我在 CentOS 7 最小服务器上测试了本指南。但是,它适用于大多数类 Unix 发行版。 什么是Restricted Shell?
首先,让我澄清一下 Restricted Shell 到底是什么。它不像 Bash、Korn Shell 等那样是一个单独的 shell。如果您使用“rbash”、“--restricted”、“-r”选项启动任何现有的 shell,那么它将成为受限 shell。例如,Bourne shell 可以作为受限 shell 使用命令bsh -r启动,Korn shell 使用命令ksh -r启动。 Restricted Shell 将限制用户执行大多数命令和更改当前工作目录。Restricted Shell 将对用户施加以下限制: 它不会让你执行cd命令。所以你哪儿也去不了。您可以简单地留在当前工作目录中。
它不允许您修改 $PATH、$SHELL、$BASH_ENV或$ENV环境变量的值。
它不允许您执行包含 /(斜杠)字符的程序。例如,您不能运行/usr/bin/uname或./uname命令。但是,您可以执行 uname 命令。换句话说,您只能在当前路径中运行命令。
您不能使用 ' 重定向输出>', '>|', '<>', '>&', '&>', 和 '>>' 重定向运算符。
它不允许您在脚本中退出受限的 shell 模式。
它不允许您使用'set...
点击查看剩余70%