Linux

Chroot SSH - 找不到命令

  • October 3, 2018

我的 chroot 目錄中有一個 bin 目錄,其中包含 bash date ls…等命令

如果我只是 chroot 到我的 chroot 目錄。我仍然能夠呼叫 /bin 中列出的命令。

但是,當我通過 ssh 訪問(我 ssh 到附加到 chroot 目錄的另一個使用者)時,我無法從 /bin 執行任何命令。它提示“找不到命令”。

另一方面,如果我 cd 進入 bin 目錄 - cd bin… 我可以呼叫 ls 命令 - ./ls (這只是為了證明我在 ssh 進入後位於正確的 chroot 目錄中。)

我正在按照此連結為我的 ssh 訪問設置 chroot。https://www.tecmint.com/restrict-ssh-user-to-directory-using-chrooted-jail/

有什麼解決辦法嗎?

問題是/bin不在使用者的$PATH環境變數中;一個變數,它告訴 shell 在哪裡尋找執行檔。

由於您使用的是 BASH,因此您可以簡單地/etc/profile在 chroot 中進行編輯以添加以下內容:

export PATH=$PATH:/bin

引用自:https://unix.stackexchange.com/questions/472883