su和login su和login命令的不同在于login会把当前用户注销以新用户身份重新登录。不带参数直接su,相当于su root。 如果从root身份su other,则不必输入口令。su成功后会产生一个新的shell进程,用id命令可以看到自己现在的uid和gid已经得到转变。用ps命令可以看到这个新shell使用的是/etc/passwd中对应的shell。注意,如 su - username将模拟一次登录,所有的初始化文件将得到解释执行。关于su的控制文件是/etc/default/su,所有的su动作都将被记录到/var/adm/sulog。 例如: su bin将成为用户bin,但环境变量 保持不变。 su - bin将等同于telnet -l bin localhost的效果。 su - root -c "more /etc/shadow"将提示你输入口令, 然后以root身份看shadow文件,然后立即回到当前用户,并不停留在root下 su与sudo 在终端下,切换root ,总是提示: 正确的命令应该是:sudo su sudo 与su 是两个命令。sudo 授权许可使用的su,也是受限制的su 什么是Su su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的, 但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root所拥有。解决办法无法有两个,一是退出beinan用户,重新以root用户登录,但这种办法 并不是最好的;二是我们没有必要退出beinan用户,可以用su来切换到root下进行添加用户的工作,等任务完成后再退出root。我们可以看到当然 通过su 切换是一种比较好的办法; 通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证;
“Sudo” 是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的“权利”,让他们执行一些只有超级用户或其他特许用户才能 完成的任务,比如:运行一些像mount,halt,su之类的命令,或者编辑一些系统配置文件,像/etc/mtab, /etc/samba/smb.conf等。这样以来,就不仅减少了root用户的登陆次数和管理时间,也提高了系统安全性。 一. sudo的特点 sudo扮演的角色注定了它要在安全方面格外谨慎,否则就会导致非法用户攫取root权限。同时,它还要兼顾易用性,让系统管理员能够更有效,更方便地使用它。sudo设计者的宗旨是:给用户尽可能少的权限但仍允许完成他们的工作。所以,sudo有以下特点: # 1. sudo能够限制指定用户在指定主机上运行某些命令。 二. sudo命令 sudo程序本身就是一个设置了SUID位的二进制文件。我们可以检查一下它的权限: $ls -l /usr/bin/sudo 它的所有者是root,所以每个用户都可以像root那样执行该程序。设置了SUID的程序在运行时可以给使用者以所有者的EUID。这也是为 什么设置了SUID的程序必须小心编写。但是设置一个命令文件的SUID 和用sudo来运行它是不同的概念,它们起着不同的作用。 sudo的配置都记录在/etc/sudoers文件中,我们下面将会详细说明。配置文件指明哪些用户可以执行哪些命令。要使用sudo,用户 必须提供一个指定用户名和密码。注意:sudo需要的不是目标用户的密码,而是执行sudo的用户的密码。如果不在sudoers中的用户通过sudo执 行命令,sudo会向管理员报告这一事件。用户可以通过sudo -v来查看自己是否是在sudoers 之中。如果是,它还可以更新你的“入场券”上的时间;如果不是,它会提示你,但不会通知管理员。 sudo命令格式如下: sudo -K | -L | -V | -h | -k | -l | -vsudo [-HPSb] [-a auth_type] [-c 下面我们再来看一下sudo其它常用的一些参数: 选项 含义 作用 sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码。 sudo -K Sure kill 与-k类似,但是它还要撕毁“入场卷”,也就是删除时间戳文件。 sudo -b command Background 在后台执行指定的命令。 还有一些不常用的参数,略过。 四、配置sudo |
联系客服