- su
Su -的-很重要,代表使用login-shell还是non-login shell登陆。
没有使用-切换时,很多变量都没有改变过来,如PATH,MAIL变量。
利用-c选项可以进入root身份执行一次指令之后即离开root身份。
使用su -l 用户名 切换到另一位使用者账户。
总结:
- sudo
范例1使用sudo -u sshd切换到sshd账号,无法使用su -sshd,因为sshd账号没有登陆shell。使用sh -c 可以在sudo -u 后面执行一连串指令。
使一般账号可以使用root的任何指令
- 直接修改/etc/sudoers,使用visudo修改。
- 利用群组以及免密码的功能处理 visudo
通过加入sudo 群组的方法设置,当然群组名字可以自取。
可以通过加一个NOPASSWD使用户/组不需要密码使用sudo。
可以限制用户使用root用户的哪些命令,不过这样子设置myuser1可以修改root用户的密码!!
所以限制命令的参数!不可以使用passwd (空白)与passwd root 指令。
通过别名批量创建sudo用户,包括主机别名User_Alias,账号别名Cmnd_Alias,Host_Alias指令别名。
不需要知道root密码的情况下,使用如下设置,通过命令sudo su -,输入用户自己的密码,可以切换到root。所以设置sudo用户时要慎重,必须是信得过的用户。