只允許rbash用戶su

只允許rbash用戶su

我想讓一個將​​ rbash 設定為其預設 shell 的使用者僅使用該命令su。我嘗試在使用者的主目錄中建立一個資料夾“bin”,並將二進位檔案 su (/bin/su) 複製到該資料夾中。然後我將該用戶的路徑設定為$HOME/bin,但是使用 su 時我無法切換到另一個帳戶。

su 是否依賴其他在這種情況下被阻止的二進位檔案?使用 su 時的錯誤與密碼不正確時發生的錯誤相同。 su 是否使用 cat 或類似的東西來查看影子檔案?

我必須向用戶提供哪個二進位才能允許他 su 到其他用戶?

bin目錄:

/home/user/bin# ls -al
total 68
drwxr-xr-x 2 root root  4096 Aug 21 19:32 .
drwxr-xr-x 4 root root  4096 Aug 20 22:44 ..
-rwxr-xr-x 1 root root 59424 Aug 20 21:32 su

答案1

su您根本不需要移動可執行檔。您可以設定su存取權限,以便只有一個使用者(和 root)能夠運行它。

從 root 使用者和檔案所在目錄執行以下命令su

首先將檔案擁有者設定為您要授予獨佔存取權限的使用者:

chown USER_NAME su

然後從除所有者之外的所有人中刪除 e(x)ecution 存取權限,即x從 (o)ther 和 (g)group 中刪除權限:

chmod og-x su

相關內容