Linux
特定命令需要 sudo 密碼
我試圖在每次執行時使用 sudo 對特定命令強制輸入密碼,無論密碼是否在一秒鐘前輸入。有沒有辦法做到這一點?
Google上的每個搜尋結果都只是解釋瞭如何使用 NOPASSWD 刪除密碼提示,這沒問題,但我仍然希望 SPECIFIC 命令在每次執行時都能獲得密碼提示,即使密碼是在一秒鐘前輸入的。
我的方法是這樣的:
Defaults !authenticate Cmnd_Alias WITHPW = rm -R, shutdown, Defaults:WITHPW authenticate
有人可以解釋那是正確的方法還是我能做什麼?
謝謝,
一種/
兩個選項之間有區別:
authenticate
如果設置,使用者必須先通過密碼(或其他身份驗證方式)進行身份驗證,然後才能執行命令。這個預設值可以通過
PASSWD
andNOPASSWD
標籤覆蓋。該標誌預設開啟。
passwd_timeout
sudo 密碼提示超時之前的分鐘數,或者
0
沒有超時。例如,如果分鐘粒度不夠,超時可能包括小數部分2.5
。預設值為5
.雖然您可以同時設置 per
Cmnd_Alias
,但passwd_timeout
對於您要實現的目標,這是正確的選項。然後,讓我們看一下 的語法
Defaults
:Default_Type ::= 'Defaults' | 'Defaults' '@' Host_List | 'Defaults' ':' User_List | 'Defaults' '!' Cmnd_List | 'Defaults' '>' Runas_List Default_Entry ::= Default_Type Parameter_List Parameter_List ::= Parameter | Parameter ',' Parameter_List Parameter ::= Parameter '=' Value | Parameter '+=' Value | Parameter '-=' Value | '!'* Parameter
指定 a
Cmnd_List
orCmnd_Alias
您需要!
前綴時,結果:Cmnd_Alias WITHPW = /usr/bin/rm -R, /usr/sbin/shutdown Defaults:!WITHPW passwd_timeout=0