centos7.x 將普通用戶加入sudoers中,獲取sudo執行許可權 0 問題由來 你在提起興緻學習的時候,興衝衝地往黑洞洞的文本視窗輸入下一行: 按照系統驗證需求,你輸入用戶密碼,結果返回的是冰冷的一串錯誤信息: pan is not in th ...
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 結語
這是一個很小的問題,本來是不值得一記的,但我生性太懶惰了,學東西時興衝衝的,學了一段時間後就棄置迤邐、不管不顧了。寫下來,就是為了磨性子。