Linux 中的 rbash – 理解受限 Bash

在本文中,我们将讨论 Linux 中的 rbash 是什么以及如何使用它来满足我们的需求,并讨论它对我们系统的影响。

同时,我们还将讨论它的安全性。

什么是 rbash?

受限制的外壳或 rbash,顾名思义是一个类似于 bash,但它的不同之处在于它有很多限制来避免用户采取某些操作。 它用于安全目的使用 bash,但具有额外的安全层,以实施这些限制。

为什么我们在 Linux 中使用 rbash?

我们在 Linux 中使用 rbash,我们希望用户拥有使用某些程序等受限权限。 防止用户更改目录。

互联网上的许多网站都安装了 rbash,以防止过度使用他们的系统。

许多在线学习网站在其学习内容中出于教育目的使用 Restricted Shell (rbash),使他们能够访问 bash 以有限的方式防止不必要的使用。

在 rbash 中实施的限制

Restricted Shell (rbash) 在其中实施的限制是 –

  • 限制使用更改目录 cd
  • 使用包含斜杠 ( / ) 的命令名称
  • 修改各种路径和环境变量
  • 从导入函数 bash 启动时的环境
  • 解析值 bash 启动时的环境
  • 使用 > 、 >| 重定向输出 , , >& , &> 和 >> 重定向运算符
  • 指定包含“/”或“-”的文件名 history, hash -p 或者 . 内置命令
  • 使用内置命令指定“-p”选项
  • 使用“set +o受限”或“set +r”关闭受限模式。
  • 使用“启用”内置命令启用禁用的内置命令
  • 使用 exec 用另一个命令替换 shell

要检查命令是否内置,请使用 type 命令前的关键字以了解它是否是内置的。

type <command-name> 
键入命令

有关更多详细信息,您可以参考 Rbash GNU 文档或运行以下命令以使用 man 命令在您的系统上访问其联机帮助页–

man rbash 

它将打开 rbash 的联机帮助页,如下所示。

Rbash 文档

在 Linux 中启动 rbash

您可以通过运行以下命令在 Linux Restricted Bash 中启动 rbash:

rbash 

或者

bash -r 

它看起来像这样。 为确保启用 rbash,您可以运行任何受限制的命令,例如 cd .

启用 Rbash启用 Rbash

在 Linux 上测试 rbash

由于我们已经在 Linux 中启用了 rbash,现在让我们对其进行测试。

在尝试使用 cd 时,它给出了错误 rbash: cd : restricted ,它应该的方式。 由于 cd 受 rbash 限制。

Rbash 中限制的 Cd 命令Rbash 中限制的 Cd 命令

接下来,在尝试将输出重定向到文件时,它给出了一个类似的错误,因为 rbash 限制了输出重定向。

Rbash 限制输出重定向Rbash 限制输出重定向

rbash 的限制

和其他各种东西一样,rbash 也有一些限制——

  • 当遇到一个实际上是 shell 脚本的命令时,rbash 允许所有应该阻碍脚本的限制
  • Rbash 不是很安全,它可以通过多种方式破解
  • 跑步 bash from rbash 为用户提供不受限制的访问权限。
  • 不足以试用不受信任的软件

奖金

  • 您可以使用 rbash 作为默认值在您的系统中创建一个访客用户 bash 环境,供其他人使用。 因此,它们不会破坏系统或干扰您的个人数据。
  • 最佳实践建议使用 Restricted Bash 和 chroot jail 来限制对整个系统的访问。

结论

在本文中,我们讨论了 Linux 中的 Restricted Bash 或 rbash 是什么,以及我们为什么在电子学习网站或其他地方等各种地方使用它。 我们还介绍了 rbash 的使用,解释了它与我们基本的 bash 以及我们如何在我们的系统上使用 rbash。