本文解釋了 Linux 的 rbash 是什麼,如何根據您的需要使用它,以及它如何影響您的系統。
同時,我們還將討論它的安全性。
什麼是rbash?
受限外殼或 rbash
顧名思義,它類似於 bash,但不同之處在於它有許多限制,阻止用戶執行某些操作。我出於安全目的使用 bash,但它有一個額外的安全層來執行這些限制。
為什麼在 Linux 上使用 rbash?
我在 Linux 上使用 rbash,並希望為我的用戶提供有限的權限,例如使用某些程序。防止用戶更改目錄。
Internet 上的許多網站都安裝了 rbash,以防止系統過度使用。
許多在線學習網站在其學習內容中使用受限 shell (rbash) 用於教育目的,並允許以有限的方式訪問 bash 以防止不必要的使用。
在 rbash 中實現的限制
Restricted shell (rbash) 強制執行限制 –
- 限制使用更改目錄
cd
- 使用包含正斜杠 ( / ) 的命令名稱
- 更改各種路徑和環境變量
- 從導入的函數啟動 bash 時的環境
- bash啟動時解析環境值
- 使用 > 、 >| 重定向輸出並使用 、 >& 、 &> 和 >> 重定向運算符
- 請指定包含“/”或“-”的文件名
history
,hash -p
還.
內置命令 - 在內置命令中指定“-p”選項
- 要關閉受限模式,請使用“set +o limited”或“set +r”。
- 使用“啟用”內置啟用禁用的內置
- 使用 exec 將 shell 替換為另一個命令
檢查命令是否在使用中 type
使用關鍵字為命令添加前綴以查看它是否是內置命令。
type <command-name>
有關更多信息,請參閱 Rbash GNU 文檔,或者您可以使用 man 命令訪問系統的聯機幫助頁,方法是運行 –
man rbash
rbash 聯機幫助頁將打開,如下所示。
在 Linux 上啟動 rbash
您可以通過運行以下命令在 Linux 受限 Bash 中啟動 rbash:
rbash
還
bash -r
它看起來像這樣。 要檢查 rbash 是否已啟用,您可以運行如下受限命令: cd
.

在 Linux 上測試 rbash
現在我們在 Linux 上啟用了 rbash,讓我們對其進行測試。
當我嘗試使用 cd 我得到錯誤 rbash: cd : restricted
,它應該是這樣的。 由於 cd 受 rbash 限制。

然後,當我嘗試將輸出重定向到文件時,我收到了類似的錯誤,因為 rbash 限制了輸出重定向。

rbash 的局限性
像許多其他東西一樣,rbash 有一些限制 –
- 當遇到一個實際上是 shell 腳本的命令時,rbash 將允許阻止腳本運行的任何限制。
- Rbash 不是很安全,可以通過多種方式破解
- 從 rbash 運行 bash 使用戶可以不受限制地訪問。
- 不足以嘗試不受信任的軟件
獎金
- 您可以使用 rbash 作為默認值在您的系統上創建來賓用戶 bash 環境並使其可供其他用戶使用。因此它不會破壞您的系統或乾擾您的個人數據。
- 最佳實踐建議使用 Restricted Bash 和 chroot jails 來限制對整個系統的訪問。
結論是
在本文中,我們解釋了 Linux 中的受限 Bash 或 rbash 是什麼,以及為什麼它在各種地方(例如電子學習網站)中使用。它還介紹瞭如何使用 rbash,它如何與基本 bash 一起工作,以及如何在您的系統上使用 rbash。