Linux系统中的root用户管理

  • A+
所属分类:安全闲碎

超级用户在操作系统管理中的作用


1. 可以对任何文件、目录或进程进行操作

超级用户的操作是在系统最高许可范围内的操作,有些操作就是具有超级权限root也无法完成。比如/proc目录,/proc是用来反应系统运行的实时状态信息的,因此即便是root也无法对其进行写操作。


2. 对涉及系统全局的系统管理

硬件管理、文件系统管理、用户管理以及涉及的系统全局配置等,如果执行某个指令或工具时,提示无权限,大多是需要超级权限来完成。比如用adduser来添加用户,这跟只能使用通过超级权限的用户来完成。


普通用户授予root权限


1. su指令

su是英文“switch user”的缩写,即切换用户。使用su指令切换到其他用户模式,提示输入密码时,该密码为切换后账户的密码,用法为:su 账户名称

如果后面不加账户时默认为root账户,密码也为超级账户的密码。没有时间限制。


2. su指令使用条件

su指令就是切换用户的工具,当前系统登录为普通用户handuoduo,但要完成添加用户任务,执行useradd指令后,提示普通用户handuoduo没有权限,而这跟权限恰恰由root所拥有。解决的办法有两个:

1)退出handuoduo用户,重新以root用户登录,但这种办法并不是最好的。

2)不退出handuoduo用户,可以用su来切换到root下进行添加用户的工作,等任务完成后再退出root。

我们可以看到当然通过su切换是一种比较好的办法。


通过su可以在用户之间切换,超级权限用户root向普通或虚拟用户切换不需要密码,而普通用户切换到其他任何用户都需要密码验证。


3. su指令用法

su指令常用的选项如下所示:

  • -c, -command  执行相关指令,然后退出所切换到的用户环境

  • -l, -login  登录并改变到所切换的用户环境。


关于su指令更详细的使用,可以参考man su


4. su指令实例

su指令在不加任何参数,默认为切换到root用户,但没有转到root用户主目录的情况下,也就是说这时虽然是切换为root用户了,但并没有改变root登录环境,即用户默认登录环境。可以在/etc/passwd中查到,包括主目录、shell定义等。

#普通用户切换到root用户$ whoamihanduoduo$ suPassword:$ whoamiroot


在上述代码中,普通用户模式下,直接输入su指令即可切换到root用户,su加参数“-”表示默认切换到root用户,并且改变到root用户的环境。

# 普通用户切换到root用户并改变环境变量$whoamihanduoduo$ suPassword:$ whoamiroot$ echo $PATH/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/handuoduo/bin$ exitexit$ su -Password:$ whoamiroot$ echo $PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin


su 指令加上 “-” 参数,目标用户的环境变量一起被切换,“su 参数 - 用户名”,下面代码和上述实例中的作用相同。

$whoamihanduoduo$ suPassword:$ whoamiroot$ echo $PATH/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/handuoduo/bin$ exitexit$ su - rootPassword:$ whoamiroot$ echo $PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin


“su - root”指令和“su -”功能相同。


5. su 的优缺点

su的确为管理带来方便,通过切换到root下,能完成所有系统管理工具。只要把root的密码交给任何一个普通用户,它都能切换到root来完成所有的系统管理工作。但通过su切换到root后,也有不安全因素,比如系统有10个用户,而且都参与管理。如果这10个用户都涉及超级权限的运用,作为管理员如果让其他用户通过su来切换到超级权限的root,必须把root权限密码都告诉这10个用户;如果这10个用户都有root权限,通过root权限可以做任何事,这在一定程度上就对系统的安全造成了威胁。

“没有不安全的系统,只有不安全的人”,我们不能保证这10个用户都能按正常操作流程来管理系统,这其中任何一个人对系统操作的重大失误,都可能导致系统崩溃或数据损失。所以su工具在多人参与的系统管理中,并不是最好的选择。


总结

  • su - root 和 su root 指令的区别如下:

  • su指令后面不加用户是默认切换到root;

  • su指令不改变当前变量;

  • “su -”指令组合改变为切换到用户的变量;

  • su指令只能获得root的执行权限,不能获得环境变量;

  • “su -”指令组合是切换到root用户,并获得root用户的环境变量及执行权限。


转自公众号:TIAP

Linux系统中的root用户管理


推荐:一个从不写废话的公众号Linux系统中的root用户管理

觉得不错点个“赞”、“在看”哦Linux系统中的root用户管理

相关推荐: mimikatz 用法小记 [ 非交互抓取本地密码明文及hash ]

详情可  '阅读原文' , 或移步至个人博客: https://klionsec.github.io/2016/07/23/mimikatz-one/ 本文始发于微信公众号(红队防线):mimikatz 用法小记 [ 非交互抓取本地密码明文…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: