LINUX用户组管理及提权

愿君学长松,慎勿作桃李。这篇文章主要讲述LINUX用户组管理及提权相关的知识,希望能为你提供帮助。
用户组管理及提权

用户组管理

#相关文件
/etc/group
# cat /etc/group
root:x:0:
# 1.组名字 # 2.组密码占位符 # 3.GID # 4.显示该组的附加成员
/etc/gshadow
# cat /etc/gshadow
hhh076:!::xxx
# 1.组名字 # 2.组密码(空和!是没有密码) # 3.组管理员 # 4.显示该组的附加成员
# 相关命令
# 增 groupadd -[选项] 组名
-g:指定组的gid
-r:指定gid范围201-999之间的系统组
# 删groupdel 组名
# 改 groupmod -[选项] 组名
-g:修改组的gid
-n:修改组名字



用户身份切换

su


1,普通用户 切至 root或 2,root 切至 普通用户 (无需密码,随便切)
# su - username 切换
su - username代表进入登陆式shell
suusername代表进入非登陆式shell,他们之间的区别在于加载的环境变量不一样。
su -代表直接切换至root用户身份, 但需要输入root用户密码。
超级管理员root用户使用su - username切换普通用户不需要输入任何密码。
以某个用户的身份执行某个服务,使用命令su -c username
优点:简单,方便
缺点:需要知道root密码,不安全,切换到root没有日志审计功能



sudo


# sudo提权
当需要使用root权限时,进行提权,而无需切换至root用户。
# sudo的配置
# 安装sudo 命令
yum install -y sudo
# 修改sudo的配置文件配置sudo
vim/etc/sudoers
# 使用visudo命令配置sudo (推荐使用)
visudo
-c:检查sudoers文件的语法
#添加提权用户
zls ALL=(ALL) NOPASSWD:ALL (免密使用sudo)
xtt ALL=(ALL)ALL(xtt用户使用sudo时输入自己的密码)
不使用visuo提权
#将用户添加到提权组(推荐使用)
usermod 用户名 -aG wheel(提权组)

#可使用命令的配置
Cmnd_Alias ZLSCMD = /bin/cp,/bin/mv (只可使用命令)
Cmnd_Alias ZLSUNCMD =!/bin/rm,!/bin/su(不可使用命令,其余都可使用)

[xtt@xtt < sub> ]$ sudo cd /root
[sudo] password for xtt: (输入普通用户xtt的密码)
[xtt@xtt < /sub> ]$ sudo cat /root/test.sh(可以看root目录下的文件了)
#使用sudo 执行命令,该命令不可以是别名命令,sudo不走别名,只认识系统命令。
[xtt@xtt ~]$ sudo ll /root/test.sh
sudo: ll: command not found
优点:安全,方便
缺点:复杂

【LINUX用户组管理及提权】

shell的种类

交互式shell
非交互式shell
登录式shell :需要输入用户名和密码,才可以登录
非登录式shell :不需要输入用户名和密码,就可以登录



系统环境变量文件

## 局部环境变量
< sub> /.bashrc
< /sub> /.bash_profile
## 全局环境变量
/etc/profile
/etc/profile.d/*.sh
/etc/bashrc
## 加载顺序
1.登录式shell
/etc/profile
/etc/profile.d/*.sh
< sub> /.bash_profile
< /sub> /.bashrc
/etc/bashrc
2.非登录式shell
~/.bashrc
/etc/bashrc
/etc/profile.d/*.sh



    推荐阅读