Permissions
visudo + 如何從其他使用者獲得對使用者的訪問權限
在我的 Linux Red Hat 機器上,我從 root 執行以下操作
# su - starus $ <-- now I am in starus user $ su - moon <-- now I want to access moon user from starus user Password:
但是我被提示輸入密碼!
visudo
如果已在以下內容中添加,請告知我為什麼要獲取密碼moon ALL=(starus) NOPASSWD: ALL
怎麼了?
我也嘗試以使用者 moon 執行以下腳本,但需要密碼
starus@host sudo -u moon /home/USER261/test.bash [sudo] password for starus:
首先,
root
無需密碼即可成為任何使用者。這是成為超級使用者的特權之一。因此,使用,您可以在沒有提示的情況下su - starus
切換到。starus
但是,此時,您starus
不再是root
,因此您確實需要密碼才能切換到moon
。簡單的解決方案是先切換回
root
(只需執行exit
),然後切換到moon
.現在,
visudo
這裡無關緊要。您沒有使用sudo
,因此您在此處(在編輯/etc/sudoers
的文件中visudo
)所做的任何更改都不會影響 的行為su
,只有那些sudo
不是同一個程序的行為。在任何情況下,您顯示的 (
moon ALL=(starus) NOPASSWD: ALL
) 行僅表示使用者moon
可以以使用者身份執行任何命令,starus
而sudo
無需輸入密碼。這並不意味著任何人都可以在moon
不知道moon
密碼的情況下成為。這只是意味著像這樣的命令不需要密碼:moon@host $ sudo -u starus command
如果您以 身份登錄
moon
,則可以使用sudo
以身份執行命令而starus
無需密碼。