centos7.x 將普通用戶加入sudoers中,獲取sudo執行權限


centos7.x 將普通用戶加入sudoers中,獲取sudo執行權限

0 問題由來

  你在提起興致學習的時候,興沖沖地往黑洞洞的文本窗口輸入下一行:

[pan@localhost ~]$ sudo ls

  按照系統驗證需求,你輸入用戶密碼,結果返回的是冰冷的一串錯誤信息:

pan is not in the sudoers file. This incident will be reported.

1 定位sudoers文件

  按照錯誤信息的提示,我們獲知由於用戶“pan”不在sudoers文件中,導致了該命令行執行失敗。
  很自然地,我們要定位一下這個文件在哪里,使用這個命令可以達到這個目的:

[pan@localhost ~]$ whereis sudoers

  系統返回我們想要的結果:/etc/sudoers

sudoers:  /etc/sudoers.d  /etc/sudoers  /usr/share/man/man5/ sudoers.5.gz

2 將普通用戶添加進sudoers文件

  既然找到了目標文件,我們的目的——往sudoers文件中添加用戶“pan”,就完成了一半。那剩下的一半怎么做,我們不禁會問。我需要看看sudoers文檔里的內容,也許文檔注釋里就告訴了如何按照要求添加一個用戶。
  嘗試查看 /etc/sudoers 里的內容:

[pan@localhost ~]$ ls -l /etc/sudoers && cat /etc/sudoers

  返回的是一串錯誤信息:

-r--r-----. 1 root root 3938 4月 11 2018 /etc/sudoers
cat:  /etc/sudoers:  Permission denied

  從返回信息中可以獲知,該文件屬主root擁有讀權限,屬組root擁有讀權限,只有上述用戶才可以查看文件 /etc/sudoers 的內容。
  切換到root用戶完成查看文件 /etc/sudoers 的內容並添加用戶“pan”進sudoers文件:

[pan@localhost ~]$ su - root

  查看 /etc/sudoers 里的內容:

[root@localhost ~]# vim /etc/sudoers

  我們重點查看這一段內容:

## Allow root to run any commands anywhere
root  ALL=(ALL)  ALL

  既然用戶root是這樣寫入sudoers文件,很自然我們想到把用戶root替換成用戶“pan”:

[root@localhost ~]# echo "pan    ALL=(ALL)       ALL" >> /etc/sudoers

3 驗證

  切換回用戶“pan”並驗證sudo的執行權限:

[pan@localhost ~]$ sudo ls

4 結語

  這是一個很小的問題,本來是不值得一記的,但我生性太懶惰了,學東西時興沖沖的,學了一段時間后就棄置迤邐、不管不顧了。寫下來,就是為了磨性子。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM