Linux操作系統(tǒng):普通用戶安全執(zhí)行管理員程序
在學(xué)習(xí)Linux操作系統(tǒng)中我們經(jīng)常遇到一些問(wèn)題,怎樣才能解決這些Linux操作系統(tǒng)問(wèn)題,比如說(shuō)讓普通用戶安全執(zhí)行管理員程序。本文為你介紹。
在多人共用一臺(tái)電腦或管理局域網(wǎng)時(shí),常常會(huì)遇到這種情況:普通用戶必須執(zhí)行某個(gè)命令,比如關(guān)機(jī)。但普通用戶卻不具備足夠的權(quán)限,而出于隱私和安全的考慮我們又不希望把root密碼告訴別人。
有兩種方法可以解決這一問(wèn)題。
***種方法是設(shè)置命令文件的suid,可以使普通用戶以此文件的擁有者的身份運(yùn)行該程序,具體命令為 chmod u+s file ,file為你想讓別人執(zhí)行的文件。還可以設(shè)置guid,讓用戶以文件所屬組的身份運(yùn)行程序,命令為 chmod g+s file。
第二種方法是使用sudo程序,它可以使某個(gè)用戶以特定的身份去運(yùn)行程序,當(dāng)然也能以root身份去運(yùn)行,它相比***種方法更安全也便于維護(hù)。在RedHat發(fā)行版的光盤里就有這個(gè)工具。使用方法為,在終端中輸入visudo編輯sudoers文件,在空白處添加以下四行:
Host_Alias MYHOST=localhost
User_Alias MYUSER=A的用戶名,B的用戶名
Cmnd_Alias MYFILE=A和B要運(yùn)行的程序路徑
MYUSER MYHOST=NOPASSWD:MYFILE
注意大小寫(xiě),以后要增加新的程序或用戶時(shí),直接更改前三行即可。如果要讓某個(gè)不知道root密碼的用戶具有全部權(quán)限,除了運(yùn)行某些危險(xiǎn)程序(如格式化),只需增加:
Cmnd_Alias DANGER=危險(xiǎn)程序的路徑
C的用戶名 ALL=(ALL) NOPASSWD:ALL,!DANGER
設(shè)置完成后,和vi一樣保存退出,編輯器會(huì)自動(dòng)檢查你的語(yǔ)法是否正確,如果出錯(cuò)按 e 可以回去修改。然后該用戶即可以“sudo+空格+某命令”的格式運(yùn)行具體命令了。
通過(guò)本文你就學(xué)會(huì)了Linux操作系統(tǒng)問(wèn)題解決辦法。
【編輯推薦】