文章目录
用户管理
1.用户/组基本概念
用户的分类
超级用户:root ID=0 拥有所有权限
普通用户 ID=1-999 权限受到一定限制
程序用户 低权限
用户组信息储存的文件
查看用户基本信息文档
cat /etc/passwd (冒号分割为7列字段)
用户名❌uid:gid:描述:home:shell
用户名:登录系统的名字
X:密码占位符,具体内容不在这里
UID:用户的身份证号
系统约定:RHEL7
uid:0 特权用户
uid:1~499系统用户
uid:1000+普通用户
GID:组号
描述:称呼
home:家目录
/bin/bash:登录shell:命令解释器
查看用户密码信息文档
cat /etc/shadow(8列)
登录名:口令(!!和*代表没有密码不能登陆):最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留
查看组信息文档
cat /etc/group
组名:组密码:组ID:组成员
2.用户/组管理
用户
创建用户
useradd 用户名 创建用户命令
-u UID 创建并指定UID
-d 目录 创建并指定家目录(与-M同时使用不生效)
-M 创建且不建立家目录
-e 时间 创建并指定失效时间
-g 组名/GID 创建并指定基本组名/GID
-G 组名/GID 创建并指定附加组名/GID
-s /bin/bash或/sbin/nologin 指定用户的shell环境
useradd --help 查看帮助
如果创建一个用户时,未指定任何选项,系统会创建一个和用户名相同的组作为用户的组
id 用户名 查看指定用户信息
passwd 用户名 修改密码命令
-d 清空指定用户密码,可直接登录
-l 锁定用户账户
-u 解锁用户账户
-S 查看用户是否被锁定
扩展:echo“123” | passwd --stdin 用户
批量给用户设置初始密码
删除用户:userdel
-r 用户名 删除用户并删除家目录
修改用户属性:usermod [选项] 参数 用户名
-s /sbin/nologin或/bin/bash 用户名 修改登录shell
-u 修改用户UID
-l 修改用户名
-L 锁定用户账户
-U 解锁用户账户
-d 修改用户家目录位置
-e修改用户失效时间
-g 修改用户基本组名
-G 修改用户附加组名
修改账号和密码的有效期限:chage [选项] 用户
-m 密码可更改最小天数
-M 密码保持有限的最大天数
-w用户密码到期前,提前收到警告信息的天数
-E 账号到期的日期
-d 上一次更改的日期
-i 停滞时期,密码过期后还能使用的时期
-l 列出当前的设置
用户组
创建组 groupadd 组名 创建用户组
groupadd 组名 -g 2000 创建用户组并指定GID2000
查询组
检索 grep
grep “^root" /etc/group 检索root组包含哪些用户
grep “root" /etc/group 检索哪些组包含root用户
指向 finger 用户名
w,users,who,last 查询已登录的所有用户信息
whoami 查询目前登录的用户
通常用tty来简称各种类型的终端设备
删除组 groupdel [选项] 组名
-a 添加用户到组
-d 从组删除用户
-A 指定管理员
-M 指定组成员
-r 删除密码
-R 限制用户登入组
管理组 gpasswd
组分类
管理员组:root,GID:0
普通组:系统组,GID:1~999
普通组,GID:1000+
组账号
基本组
随用户创建,自动创建的同名组,只能有一个
用户的基本组,显示在/etc/passwd
附加组
用户加入的其他组,可加入多个
/etc/login.defs 这个文件中的配置决定组账号的设定
3.提权
永久提权
命令:su root 相当于切换到root用户
exit 退出root用户
临时提权
sudo简介
工作原理
将当前用户切换到超级用户下,然后以超级用户身份执行命令,执行完成后,直接退回当前用户
工作过程
当用户执行sudo时,系统会主动寻找/etc/sudoers文件判断该用户是否有
确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认
密码输入成功后,则开始执行sudo后续命令
sudo配置文件语法
语法
user MACHINE=COMMANDS
用户 登录的主机=(可变换的身份)可执行的命令
提权例子
以root身份授权普通用户aaa
vim /etc/sudoers
%wheel ALL=(ALL)NOPASSWD:ALL
第107行:允许wheel(特权组)用户组中的用户在不输入该用户的密码的情况下使用所有命令
useradd aaa -G wheel 把aaa添加进wheel组中
passwd aaa 切换用户aaa登录
sudo useradd bbb 提权命令创建用户bbb
用户的权限
基本权限UGO
概述
由超管决定某个计算机用户,能否访问某个文件
权限对象
权限对象
属主:u
属组:g
其他人:o
所有人:a(u+g+o)
权限类型
第1个字符
- 普通文件
l 链接文件
d 目录
b 块设备文件
c 字符设备文件
读:r=4
写:w=2
执行:x=1
#### 设置权限
更改权限 chmod
使用符号
使用符号:u用户 g组 o其他 r读 w写 x执行
语法:chmod 对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x) 文件或目录
使用数字
读r=4 写w=2 执行x=1
例chmod 644代表设置权限为rw-r–r–
更改属主 chown
chown 用户名 文件 改属主
chown 组名 文件 改属组
chown 用户名:组名 文件 改属主和组
更改属组 chgrp
chgrp 组名 文件 设置属组
权限掩码(反掩码) umask nnn(数字)
更改后面创建的文件的默认权限
目录从7算,文件从6算(文件默认有x权限)
-R 递归更改
### 基本权限ACL
ACL文件权限管理:设置不同用户,不同的基本权限。对象的数量不限
UGO设置基本权限:只能一个用户,组和其他人
setfacl [选项] 用户或组:用户名:权限(rwx) 文件
-m 设置权限
-x 删除权限
-b 文件 删除文件所有权限
### 特殊权限
s权限(setuid)
文件属主和组设置SUID和GUID,文件在被设置了s权限后将以root身份执行。在设置s权限时文件属主、属组必须先设置相应的x权限,否则s权限并不能正真生效。
粘滞位(t)
可编辑但只用属主和root有删除文件的权限
i:不可修改权限
a:只追加权限
-x 删除权限
-b 文件 删除文件所有权限
### 特殊权限
s权限(setuid)
文件属主和组设置SUID和GUID,文件在被设置了s权限后将以root身份执行。在设置s权限时文件属主、属组必须先设置相应的x权限,否则s权限并不能正真生效。
粘滞位(t)
可编辑但只用属主和root有删除文件的权限
i:不可修改权限
a:只追加权限
对于日志系统很好用,这个权限让目标文件只能追加,不能删除,而且不能通过编辑器追加。可以使用chattr +a设置追加权限
**END**