ssh登入-執行命令-退出

ssh登入-執行命令-退出

有沒有辦法只在使用者(ssh)登入時執行命令(或腳本)然後退出?用某種自訂腳本取代預設 shell。

我希望用戶只能重新啟動服務,但不能進行常規 shell 訪問

謝謝

答案1

您想要執行此操作的方法是使用 ssh 金鑰,並在使用者的 .ssh/authorized_keys 檔案中設定與該金鑰關聯的命令。快速谷歌給了我,特別是「強制命令」部分。

編輯:第二部分是針對passwd -l使用者的,因此不可能基於密碼登入。

答案2

在 Ubuntu 中,我能夠建立一個重新啟動服務的腳本。然後,在使用者的 /etc/passwd 條目中,我將腳本設定為登入 shell(最後一個欄位)。

來自/etc/passwd:

testaccount:x:1001:1001:1,,:/home/testaccount:/home/testaccount/login.sh

答案3

類似的東西?

root@admin:~ # ssh root@www 'df -h'
Filesystem Size Used Avail Use% Mounted on
/dev/ubda 3.5G 2.1G 1.4G 61% /
tmpfs 96M 4.0K 96M 1% /dev/shm

相關內容