防止使用 SSH 遠端呼叫腳本文件

防止使用 SSH 遠端呼叫腳本文件

我試圖阻止遠端呼叫腳本。使用者需要先 SSH 登錄,然後執行腳本

ssh remote-server "script.sh"應該失敗

ssh remote-server登入後 ./script.sh應該可以工作

我可以更改所有權並應用chmod,但遠端用戶可以使用ssh remote-server "sudo -u newuser ./script.sh"

使用AWS EC2實例

答案1

運行ssh foo@remote-server後跟./script.sh相當於運行ssh foo@remote-server ./script.sh,而運行ssh foo@remote-server後跟sudo -u bar ./script.sh相當於ssh foo@remote-server sudo -u bar ./script.sh(除了sudo可能會失敗,因為它需要 TTY,這可以輕鬆解決)。所以我擔心你問的沒有意義。您為解決這種人為差異所做的任何事情,例如測試是否存在$TERM[ -t 0 ]可能很容易解決。

相關內容