sudo權限的作用是:使普通用戶可以臨時以 root 用戶的身份和權限執行系統命令
sudo權限的操作對象是系統命令
注意事項:
1) 賦予用戶sudo權限時一定要謹慎,夠用即可,不要賦予過高的權限
2) [授權的命令]
設置得越具體,用戶獲得的權限越小。
3) 嚴禁賦予普通用戶 /usr/bin/passwd
、/usr/bin/vi
、/usr/bin/su
、/usr/bin/bash
命令的權限,擁此權限的用戶可以修改root用戶密碼,然后為所欲為。
4) 權力越大,責任越大。
步驟一.root用戶登錄直接使用visudo命令進行編輯, visudo 命令實際修改的是 /etc/sudoers
文件
步驟二. 編輯
[root/etc]#visudo ... 省略部分內容 ... ## Allow root to run any commands anywhere ## 允許root在任何地方運行任何命令 root ALL=(ALL) ALL ## Allows members of the 'sys' group to run networking, software, service management apps and more. ## 允許“sys”用戶組的成員運行 網絡、軟件、服務管理應用等命令。 # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS ## Allows people in group wheel to run all commands ## 允許“wheel”用戶組的成員運行所有命令 %wheel ALL=(ALL) ALL ## Allows people in group wheel to run all commands without a password ## 允許“wheel”用戶組的成員運行所有命令,且運行時不需要輸入密碼 # %wheel ALL=(ALL) NOPASSWD: ALL ## Allows members of the users group to mount and unmount the cdrom as root ## 允許“users”組的成員運行 掛載、卸載光盤的命令 # %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom ## Allows members of the users group to shutdown this system ## 允許“users”組的成員在本機運行 /sbin/shutdown -h now 命令 # %users localhost=/sbin/shutdown -h now ## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment) ## 讀取 /etc/sudoers.d 目錄下所有文件的內容作為配嵌入到此配置文件 ## 注意,下面的 # 后面並不是注釋 #includedir /etc/sudoers.d
為用戶配置sudo權限
[用戶名] [被管理主機的IP]=([可以使用的身份]) [NOPASSWD: ][授權的命令]
[被管理主機的IP]
、[可以使用的身份]
、[授權的命令]
都可以使用ALL
來表示不限制。
添加[NOPASSWD: ]
選項可以使用戶在使用sudo權限時不需要輸入密碼。
[授權的命令]
要使用絕對路徑,多條命令之間可用逗號(,
)分隔。
- 例:
## Allow root to run any commands anywhere
## 允許root在任何地方運行任何命令 root ALL=(ALL) ALL
zhangsan ALL=(ALL) /usr/bin/chown,/usr/bin/chmod
為用戶組配置sudo權限
%[組名] [被管理主機的IP]=([可以使用的身份]) [NOPASSWD: ][授權的命令]
[被管理主機的IP]
、[可以使用的身份]
、[授權的命令]
都可以使用ALL
來表示不限制。
添加[NOPASSWD: ]
選項可以使用戶在使用sudo權限時不需要輸入密碼。
用戶組 與 用戶 的唯一區別是用戶組前有個%
- 例:
## 允許“wheel”用戶組的成員運行所有命令,且運行時不需要輸入密碼
%wheel ALL=(ALL) NOPASSWD: ALL
步驟三.保存即可