linux的sudo配置及使用者組管理命令回顧

2021-08-29 15:48:20 字數 1572 閱讀 2534

問題:某些場景下,需要修改一些root許可權的配置檔案,然後執行一些root許可權的命令,不想老是使用root賬號;

解決方案:

第一步:將配置檔案歸到乙個特殊的組,如confgp,對組成員開放寫許可權,同時在usera的附加組裡面加上confgp;

這一步也可以使用setfacl工具來進行許可權控制,參考:

第二步:為usera配置sudo,使其可使用root許可權執行某些命令。

參考:所有的使用者帳戶及相關資訊都儲存在/etc/passwd檔案中,/etc/shadow/etc/group檔案儲存了使用者資訊。

useradd [-g usera -g groupa,groupb...] usera

-g usera          usera的主要使用者組,預設建立

-g groupa,groupb...          usera的附加使用者組,多個使用者組直接用英文逗號隔離

usermod -a -g groupc usera      將已有使用者usera加到groupc

usermod -g groupd usera           將已有使用者usera的主使用者組修改為groupd

gpasswd -d usera groupd           將usera從groupd中刪除,groupd不能是usera的主使用者組

第二步:配置sudo

參考:使用visudo來修改sudo配置檔案:/etc/sudoers

配置基礎規則:授權使用者 主機=命令動作,如:usera all=/bin/chown

配置詳解:授權使用者 主機=[(切換到哪些使用者或使用者組)] [是否需要密碼驗證] 命令1,[(切換到哪些使用者或使用者組)] [是否需要密碼驗證] [命令2],[(切換到哪些使用者或使用者組)] [是否需要密碼驗證] [命令3]......

別名定義參考:

host_alias fileservers = server1, server2

user_alias admins = usera,userb

cmnd_alias services = /sbin/service, /sbin/chkconfig

admins

fileservers=(root) nopasswd:services

sudo配置示例:

visudo

## allow root to run any commands anywhere

root    all=(all)       all

ooxx    all=(all)       nopasswd:services

配置檔案新增:/etc/sudoers.d/下新增檔案ooxx

ooxx all=(root) nopasswd:/sbin/service nginx start,passwd:/sbin/service nginx stop

ooxx all=(root) nopasswd:/sbin/service nginx reload

如此,即可在ooxx使用者下使用sudo service nginx reload等命令

Linux使用者管理及sudo提權

目錄 一 使用者及組管理 1.管理使用者帳號 1.1 新增使用者 useradd 1.2 檢查使用者屬性 id 1.3 修改使用者屬性 usermod 1.3 設定登陸密碼 passwd 1.4 設定帳號有效期 chage 1.5 鎖定使用者帳號 passwd 1.6 刪除使用者 userdel 2...

linux下建立使用者 使用者組及賦予sudoer許可權

如現在建立使用者hadoop 使用者組hadoop,並賦予使用者hadoop以sudo許可權。以下命令均需要超級使用者執行。1 建立使用者組hadoop groupadd hadoop 2 建立使用者hadoop並新增進使用者組hadoop useradd d home hadoop g hadoo...

Linux 增加使用者sudo許可權

參考 為使用者增加sudo許可權 修改sudoers檔案 輸入 su root 輸入密碼進入root許可權 檢視etc sudoers檔案許可權,如果是唯讀,改為可寫 ls l etc sudoers 修改可寫 chmod 777 etc sudoers 再重新輸入ls l etc sudoers檢...