關於linux系統sudo權限管理的相關問題

 本人初學linux運維,在觀看oldboy視頻教程後,對學習到的知識進行總結,知識內容均出自oldboy視頻教程。

#########################################################################################

  linux系統中,只有root用戶才能添加和刪除用戶,而在工作中,假如有很多個運維工程師作爲普通用戶,我們希望一部分的普通用戶可以實現只有在root用戶下才能實現的操作,但不是能幹所有root用能幹的事兒(比如我們不希望普通用戶可以修改root密碼,但又希望普通用戶能添加用戶),這個時候我們就需要用到sudo權限管理。


  在root用下給普通用戶分配權限。輸入命令visudo  

wKiom1ey1gDg7NZQAADDaSYVp0Y121.png

  在82行下面添加 oldboy ALL=(ALL) user/sbin/useradd,uesr/sbin/userdel 這樣就允許普通用戶能夠添加和刪除用戶。注意我們在執行該命令時,前面必須加上sudo 如sudo user/sbin/useradd kkk

這就好比皇帝root給了大臣oldboy一把尚方寶劍,oldboy執行公務時需要拿出這把尚方寶劍才能幹活。


  工作中,領導作爲用戶需要一個大的權限,我們就可以添加一個權限leader ALL=(ALL) ALL 這樣leader就可以同sudo的方式進入到root用戶 sudo su - root,需要輸入leader自己的密碼。設置leader用戶的密碼,在root用戶下輸入命令 passwd leader 回車後輸入密碼即可。或者leader ALL=(ALL) NOPASSWD:ALL這樣在使用sudo su - root切換到root用戶時就不需要密碼了。 


  查詢當前用戶擁有哪些權限 sudo -l

  查看useradd命令的全路徑 which useradd

  查看環境變量 echo $PATH

  爲什麼又是命令需要用全路徑?原因是環境變量中沒有該命令的路徑,比如useradd命令的路徑user/sbin在環境變量中,所以我們可以直接使用useradd KKK 命令來用戶,就不需要用user/sbin/useradd kkk。注意root用戶的$PATH和普通用戶的$PATH是不一樣的。比如ifconfig命令的路徑/sbin,root用戶的環境變量中有/sbin,而普通用戶oldboy沒有,所以oldboy用戶下不能直接使用ifconfig命令,怎麼呢解決呢?

  輸入命令vi .bash_profile,然後修改PATH路徑(在路徑後添加:sbin(用冒號分割)),最後輸入source .bash_profile重新加載即可生效。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章