每次normal user登陆服务器后, 需要用su来切换super suer的角色需要超用户密码, 但superadm的密码不想让更多人知道. 如何才能允许normal user来执行superadm的用户权限呢.
sudo就是一个解决办法.
$sudo su -
这个命令可以让normal user切换到superadm,而且不需密码.但要配置/etc/sudoers的文件才可以用.使用/user/sbin/visudo命令来添加用户.
#/user/sbin/visudo
出现可以编辑的文件.
把下面的内容copy到这个文件里面.
文件内容
===============================================
# User_Alias ADMINS = jsmith, mikem
root ALL=(ALL) ALL
User_Alias DCO=test ----你允许的normal user名
## Command Aliases
## These are groups of related commands...
Cmnd_Alias THERS=/bin/su
Cmnd_Alias ADMCMD=/bin/cp, /bin/kill, /bin/rm, /bin/mkdir, \
/bin/chmod, /bin/chgrp, /bin/chown, /usr/sbin/useradd, \
/usr/sbin/usermod, /usr/sbin/userdel, /usr/bin/passwd, \
/bin/vi, /bin/mv, /bin/ln, /bin/grep, /bin/ls, /bin/touch, \
/bin/tar, /bin/bash, /usr/sbin/pwconv, /bin/ping, \
/sbin/ifconfig, /usr/bin/nslookup, /usr/sbin/traceroute, \
/usr/bin/crontab, /bin/ps, /bin/df, /bin/mount, /bin/umount, \
/usr/bin/find
# Runas alias specificationas
Runas_Alias ROOT=root
# Monitoring group privilege specifications
DCO ALL=(ROOT) NOPASSWD : OTHERS, ADMCMD -- DOC就是User_Alias用户组(自己可以随便定义
其他的), ROOT就是 Runas_Alias, 无需密码, others和ADMCMD就是上面Cmnd_Alias自定义的变量.
:x ---保存一下
这样这个
test用户就可以用sudo su - 命令来得到root的角色. 无需root密码.