受限bash
- bash本身也有一定的限制功能,就是通过其(受限shell) restricted shell 功能。
- 如果bash是以rbash为名启动,或者使用-r选项运行,它就称为受限shell。
- 受限bash所做的限制包括:
- 阻止用户改变目录和环境变量
- 重定向输出
- 使用绝对路径运行命令
- 使用exec命令和其它一些操作
限制的操作
受限shell能够使系统环境更好控制。如果启动受限shell,以下操作将被禁止:
- 使用cd命令切换目录;
- 设置或者取消SHELL、PATH、ENV或者BASH_ENV环境变量;
- 以绝对路径运行命令(即命令名中不能包含目录分隔符“/”);
- 以绝对路径指定的文件名作为内置命令”.”的参数;
- 在启动时通过 shell 环境导入函数定义;
- 在启动时通过 shell 环境解析 SHELLOPTS 的值;
- 使用>、>|、>&、&>和>>等重定向操作重定向输出;
- 使用exec命令使其它的命令代替当前shell;
- 通过enable内置命令的 -f 和 -d 选项增加或删除内置命令;
- 执行内置命令command时加上 -p 选项;
- 通过 set +r 或 set +o restricted 关闭受限模式;
配置步骤
1 | ln -sv /bin/bash /bin/rbash |