0
有沒有辦法禁止用戶的交互式shell登錄,而是運行預定義的程序?如何通過SSH自動運行單個程序?
在我的情況下,我在服務器上編寫了一個程序,該程序計算到特定的時間。我想創建一個沒有交互式shell的用戶,但可以登錄看這個程序
我不太清楚問題是否清楚?如果你知道這些telnet電影,你可能會明白我想要達到的目標。
-
也許一個例子有所幫助。如果我有下面的C-計劃
#include <stdio.h>
#include <time.h>
int main()
{
time_t rawtime;
while(1){
time (&rawtime);
printf ("\rCurrent timestamp: %ld", rawtime);
}
return 0;
}
我想有possibilty一個可以無需密碼登錄即可觀看這個節目的輸出,但不能做任何事情。
「觀看程序」或「運行程序」?如果你想讓它在登錄時運行,那麼使該程序成爲用戶的shell。例如將/ etc/passwd中的shell定義更改爲/ usr/bin/yourapp而不是/ bin/sh –
好吧,我知道如何運行一個程序,也許這個問題還不清楚。將Shell更改爲Programm似乎強制用戶僅使用該程序。 – JHnet
不能真的繞過密碼提示,但你可以創建一個沒有密碼的帳戶(例如,只需按回車鍵),如果你編譯的二進制顯示時間是用戶的shell,他們會在密碼行輸入密碼後輸入滾動的時間。 –