Ssh

當使用者使用 SSH 登錄時執行 Python 程序

  • April 29, 2019

我希望當某個使用者使用 SSH 登錄我的伺服器時,我用 Python 製作的命令行程序會自動執行。但是使用者不能逃脫程序或執行任何其他命令。

該程序允許使用者查看某些伺服器資訊並向管理員發送消息。你能想到我可以用 Ubuntu 中的 OpenSSH 伺服器做到這一點嗎?

謝謝,戴夫。

最安全的方法是將您的命令定義為使用者的 shell(而不是 /bin/bash 或類似的)。除非您的程式碼中存在錯誤,否則很難規避。

第二種最安全的方法是在您的 sshd 配置中使用ForceCommand或在您的 authorized_keys 中使用command= 。

不要將命令放在 .bash_profile 或類似文件中,這是一個常見的錯誤並且很容易規避。

請注意,即使您將使用者限制為這個單一命令,他們仍然能夠通過 SSH 會話打開隧道。您可能還想為不受信任的使用者阻止這種情況。

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