Linux

使用登錄 shell 的單一應用程序 SSH 登錄?

  • November 28, 2012

我想在 Linux 機器上執行一個應用程序,大多數使用者都可以使用 PuTTY 訪問該應用程序。我想啟動那個應用程序,完成後,我希望它結束 SSH 會話。chsh將其外殼設置為應用程序是否安全/足夠?我還需要做任何其他事情(chroot 監獄)嗎?這將在 Ubuntu Lucid 上實現。

採納 ErikA 的建議。您不需要使用鍵來使用 force 命令。

您還可以在 sshd_config.xml 中指定類似的內容。

Match User xxxx
   ForceCommand /usr/bin/nnnn

Match Group yyyy
   ForceCommand /usr/bin/nnnn

一個重要的一點是,您需要檢查的是您強制執行的應用程序是否允許使用者實際啟動另一個 shell 或程序。

我會考慮在其中使用公鑰身份驗證和“強制命令”功能。在每個使用者的~/.ssh/authorized_keys文件中,執行以下操作:

command="/path/to/application" ssh-rsa <rest_of_users_public_key>

如果您設置此選項並關閉密碼驗證(無論如何都是一個非常好的做法),它將確保使用者只能執行指定的應用程序。如果您非常確信使用者無法通過此應用程序執行 shell 命令,則可能不需要 chroot 監獄,但這確實需要您自己確定。

引用自:https://serverfault.com/questions/185540