LINUX用户组管理及提权
Posted Greenxu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
su username 代表进入非登陆式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
优点:安全,方便
缺点:复杂
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
以上是关于LINUX用户组管理及提权的主要内容,如果未能解决你的问题,请参考以下文章