一·sudo
1)切換用戶命令
su [用戶名]
2)賦予普通用戶已超級管理員的權限 :以root身份 visudo
後,添加一行 user all=(all)
命令的絕對路徑
註釋:第一個all 指管理者的主機的IP地址,意思是,只有在指定的IP地址下才有sudo這個權限,第二個all指,可以切換成任意身份,這個可以直接省略
例:
user all=(all) /sbin/shutdown -r now 也可以 user all=/sbin/shutdown -r now
如果爲用戶組添加權限的話
%group all=(all) /sbin/shutdown -r now
3)普通用戶可以執行 sudo -l 查看可以執行的命令
4)普通用戶執行超級命令的時候必須要加 sudo 命令的絕對路徑
例 sudo /sbin/shutdown -r now
sudo權限的默認配置文件在vim /etc/sudoers
實際生產:
編輯/etc/sudoers文件
user1 ALL= /usr/sbin/useradd
//sudo賦予普通用戶user1添加用戶的命令
user1 ALL= /usr/bin/passwd
//授權user1用戶設定密碼的權限
注意:這樣設置極不安全,因爲user1可以設置root用戶密碼了,這是不合理的,應該按下面這樣寫
user1 ALL= /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd "", !/usr/bin/passwd root
說明1:[A-Za-z]* ,這是個正則表達式,passwd後面的跟的用戶名包括任何字母,*代表字母可以重複0-N次
說明2:!/usr/bin/passwd “”,!代表取反,這意味着passwd 後面跟的用戶名不能爲空,因爲爲空代表設置自身密碼,而user1執行設置密碼命令時使用的是root身份
說明3:!/usr/bin/passwd root,!代表取反,這意味着passwd後面不能跟root
說明4:後面一定要有空格,沒有空格不生效
說明5:三段代碼順序不能顛倒
原則:sudo賦予的命令越詳細,普通用戶的權限越小,賦予的越簡單,權限越大