在linux系統中,有些普通使用者需要借助root帳號來執行一些操作,但我們並不能把root密碼給普通使用者,就有了sudo
sudo可以臨時切換到指定帳號進行操作
使用方法:
sudo [ -u 使用者帳號] 需要執行的命令;切換到root時,可以直接執行sudo 執行命令 即可;
sudo -l :列出所有可以執行的命令
使用條件:
必須以root身份執行visudo,新增需要執行sudo命令的使用者;
執行visudo,實際上修改的是/etc/sudoers檔案;
為什麼要使用visudo,而不直接使用vim /etc/sudoers呢?這是因數visudo在修改完成後可以對語法進行檢查
使用visudo -c進行語法檢查,當sudoers檔案有語法錯誤時,所有的sudo命令都無法使用
修改配置:
[root@web1 ~]# visudo
root all=(all) all <==找到這一行
liu all=(all) all <==新增的行,儲存退出
總結:要給定sudo許可權的使用者,必須是你信任的使用者;
別名設定:
使用者或者組的別名 --> user_alias admins = jsmith,mkike,%groupname (注:組前邊需要新增%)
主機別名 --> host_alias fileservers = fs1,fs2
可以切換的使用者角色別名 --> runas_alias op = root
命令別名 --> cmnd_alias services = /sbin/service,/sbin/chkconfig
什麼情況才使用別名?
答:在工作中一般有多個系統使用者,需要分類,分層次管理使用者的時候
別名實際例項:
工作需求:
開發人員:user_alias kaifa_admins = kaifa01,kaifa02
命令許可權:kafacmd
身份許可權:kaifa_admins
運維人員:user_alias old_admins = oldboy,oldgirl,%sa
命令許可權:usercmd,netmagcmd,ctrlcmd,diskcmd
身份許可權:op1
網路工程師:user_alias old_netadmins = leo,maya
命令許可權:netmagcmd
身份許可權:op2
#使用者分組 --> 相同崗位的人放在乙個組
user_alias old_admins = oldboy,oldgirl,%sa
user_alias old_netadmins = leo,maya
user_alias kaifa_admins = kaifa01,kaifa02
#類似命令分組
cmnd_alias usercmd = /usr/sbin/useradd,/usr/sbin/userdel,/usr/bin/passwd [a-za-z]*,/bin/chown,/bin/chmod
cmnd_alias diskcmd = /sbin/fdisk,/sbin/parted
cmnd_alias netmagcmd = /sbin/ifconfig,/etc/init.d/network
cmnd_alias ctrlcmd = /usr/sbin/reboot,/usr/sbin/halt
cmnd_alias kafacmd = /bin/grep,/usr/bin/tail,/bin/cat
#角色runas_alias op1 = root,oldboy
runas_alias op2 = root,oldgirl
#授權kaifa_admins all=(op1) kafacmd
old_admins all=(op1) usercmd,diskcmd,netmagcmd,ctrlcmd
old_netadmins all=(op2) netmagcmd
sudo審計:
只記錄使用者使用sudo時執行的命令;
只需要向/etc/sudoers檔案中新增如下內容,即可實現sudo審計
echo "defaults logfile=/var/log/sudo.log" >> /etc/sudoers
weilovepan520
sudo命令使用
sudo命令允許系統管理員分配給普通使用者一些合理的許可權,不需要普通使用者知道超級使用者的密碼,就能執行一些超級使用者才能完成的任務。sudo命令許可權是受限制的,su命令許可權是無限制的。sudo的配置檔案 etc sudoers 例如 讓普通使用者test來訪問 etc shadow 可以在 ...
不能使用sudo命令
問題 is not in the sudoers file.this incident will be reported.的解決方法。2.新增sudo檔案的寫許可權,命令是 chmod u w etc sudoers 3.編輯sudoers檔案 vi etc sudoers 找到這行 root al...
Debian中安裝使用sudo命令
sudo可以讓非root使用者具有管理員的許可權,安裝好的debian後還不能使用sudo,需要使用root使用者登陸後安裝sudo命令。apt get install sudo 安裝後,就可以給你的帳號設定管理員許可權了 vim etc sudoers 新增一行 username all all ...