一、用户和组
1、用户和组的概念
Users and groups:
. Every process (running program) on the system runs as a particular user.
. Every file is owned by a particular user.
. Access to files and directories are restricted by user.
. The user associated with a running process determines the files and directories accessible to that process.
用户和组:
. 系统上的每个进程(运行程序)都作为特定用户运行。
. 每个文件都由特定用户拥有。
. 对文件和目录的访问受用户限制。
. 与正在运行的进程关联的用户确定该进程可访问的文件和目录。
2、用户的作用
(1)、查看用户
[root@cuiyanbing ~]# id
uid=0(root) gid=0(root) groups=0(root) 查看用户cuiyanbing的信息
(2)、查看文件的owner:
[root@cuiyanbing~]# ll /home/ (查看用户cuiyanbing下的home中的内容)
drwx------. 4 alice alice 4096 Jun 2 15:59 alice
drwx------. 2 root root 16384 Jun 1 23:09 lost+found
drwxr-xr-x 2 root root 4096 Jun 2 15:33 qianfeng
(3)、查看运行进程的username:
[root@cuiyanbing~]# ps aux (查看进程)
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19360 1536 ? Ss 13:29 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S 13:29 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 13:29 0:00 [migration/0]
root 4 0.0 0.0 0 0 ? S 13:29 0:00 [ksoftirqd/0]
3、用户组信息存储的文件
(1)、用户基本信息文件
/etc/passwd(冒号分割为7列字段)
root:X:0:0:root:/root:/bin/bash
用户名:X:uid:gid:描述:HOME:shell
系统约定: RHEL7
uid: 0 特权用户
uid: 1~499 系统用户
uid: 1000+ 普通用户
(2)、用户密码信息文件
root:MYG2NDG6$a1wtyr5GDM2esAPjug0YP0:15636:0:99999:7:: :
每个:中间是一列
(1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号
(2)“口令”字段存放的是加密后的用户口令字。
(3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。
(4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。
(5)“最大时间间隔”指的是口令保持有效的最大天数。
(6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。
(7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。(软限制。到期后多少天就不能用账号了。)
(8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。(硬限制。)
(9) 保留
(3)、组信息文件
/etc/group
root: x :0:
组名:组密码:组ID:组成员
二、用户/组管理
1、用户:
(1)、创建用户 未指定选项
[root@cuiyanbing ~]# useradd user01
[root@cuiyanbing ~]# id user01
uid=507(user01) gid=512(user01) groups=512(user01)
[root@cuiyanbing ~]# ls /var/spool/mail/user01
/var/spool/mail/user01
小结:
如果创建一个用户时,未指定任何选项,系统会创建一个和用户名相同的组作为用户的Primary Group.
(2)、创建用户 指定选项
[root@cuiyanbing ~]# useradd user02 -u 1503 //创建用户usr02,指定uid
[root@cuiyanbing~]# useradd user03 -d /aaa //创建用户user03 指定家目录
(3)、删除用户
[root@cuiyanbing ~]# userdel -r user2
(4)、用户密码
方法一:root修改其他用户(alice)密码
[root@cuiyanbing ~]# passwd alice
方法二:用户(zhuzhu)登录,自己修改密码。
[zhuzhu@cuiyanbing ~]$ passwd
(5)、组成员管理
注意:usermode -G 组名 用户名
[root@cuiyanbing ~]# usermod -G hr niuniu2
2、用户组
(1)、基本组/主组
随用户创建,自动创建的同名组
用户的基本组,显示在/etc/passwd
(2)、附加组
用户加入的其他组。
(3)、关于user、group的应用
1 useradd是创建用户的命令。
2 usermod是修改用户的命令。
3 groupadd是创建组的命令。
4 -u 制定用户的UID。
5 -g 制定用户的基本组。
6 -G 制定用户的附加组。
7 /etc/passwd 可以查看的是用户的基本组。
8 /etc/group 可以查看用户的附加组。
3、提权
(1)、永久提权Switching users with su(常用)
列入:
[user01@localhost ~]$ id user01
uid=1003(user01) gid=1003(user01) 组=1003(user01)
[user01@localhost ~]$ whoami
user01
[alice@cuiyanbing ~]$ useradd u1
-bash: /usr/sbin/useradd: 权限不够
[alice@cuiyanbing ~]$ su - root
password:
[root@cuiyanbing ~]# useradd u1
成功
[root@cuiyanbing ~]# exit 退出提权模式
(2)、临时提权Running commands as root with sudo
例如:创建普通用户cyb,使其具有sudo特权
以root身份授权普通用户cyb
[root@cuiyanbing ~]# vim /etc/sudoers
%wheel ALL=(ALL) NOPASSWD: ALL
第99行:允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令
[root@cuiyanbing ~]# useradd cyb -G wheel
[root@cuiyanbing ~]# id cyb
uid=504(cyb) gid=504(cyb) 组=504(cyb),10(wheel)
#passwd cyb
切换用户cyb登陆
[xulei@cuiyanbing ~]$ useradd xuxu10
-bash: /usr/sbin/useradd: 权限不够
[xulei@cuiyanbing ~]$ sudo useradd xuxu10
[xulei@cuiyanbing ~]$ id xuxu10
uid=505(xuxu10) gid=505(xuxu10) 组=505(xuxu10)
来源:CSDN
作者:圆圆的冰
链接:https://blog.csdn.net/Cuiyanbing1/article/details/104498853