必掌握的Linux系统中用户管理操作

#一、用户及3A机制

系统资源是有限的,必须要有多个资源配合,用户应运而生。用户组是一个逻辑容器,对用户进行归纳和统一授权。

3A机制:3A机制组成系统中最底层的安全架构

  1. account 身份
  2. author 授权
  3. auth 认证

#二、用户及用户组在系统中的存在方式

  • id <名称> 必须要记录到文件当中用户才能存在;
  • 用户就是/etc/passwd中的一行字符;
  • 用户组存在的方式就是/etc/group文件中的一行字符。

#三、用户切换

1.用户查看

  • whoami
    查看当前用户
[root@foundation51 Desktop]# whoami root [westos@foundation51 ~]$ whoami westos 
  • id
id 查看用户id[root@foundation51 Desktop]# id uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [root@foundation51 Desktop]# id westos uid=1000(westos) gid=1000(westos) groups=1000(westos) [root@foundation51 Desktop]# id -u 0 [root@foundation51 Desktop]# id -g 0 [root@foundation51 Desktop]# id -G 0 [root@foundation51 Desktop]# id -un root [root@foundation51 Desktop]# id -gn root [root@foundation51 Desktop]# id -Gn root
  • 用户id范围:0-65535
  • 0:linux超级用户id
  • 1-999:linux系统自用id
  • 1000-65535:用户级id
    以上id设定规则都被记录在/etc/login.defs

2.用户切换

  • su - username
  • “-” 切换用户环境
  • root->commnuser 不需要密码
    commnuser->commnuser
    commnuser->root 两者需要密码
    注:在做用户切换时当时用完毕用户身份及时退出,不要在一个shell中反复执行su命令,字一个shell中反复执行su会导致环境错乱。

#四、用户所涉及到的系统配置文件

/etc/passwd 用户身份信息文件
/etc/group 组身份信息文件
/etc/skel/.* 用户环境配置文件模板
/etc/shadow 用户认证信息文件
/home/username 用户家目录
/var/spool/mail/username 用户邮箱文件

#五、用户和用户组建立及删除

1.监控用户建立的命令:

watch -n 1 "tail - n 4 /etc/passwd /etc/group ; echo @@@ ; ls -l /home " 

必掌握的Linux系统中用户管理操作2.useradd

useradd username 用户建立
-u id username 建立id的用户
-g id username 建立主组id的用户
-G id username 建立附加组id的用户
-d dir username 指定用户家目录
-M username 建立用户时不建立家目录
-c word username 指定用户说明
-s 指定用shell 指定用shell

必掌握的Linux系统中用户管理操作3.userdel

userdel -r username 

用户删除,-r删除用户的系统配置文件。

4.groupadd

groupadd -g groupname 

指定组名称建立组。

5.groupdel

groupdel groupname 

组删除。

#六、用户和用户组的信息管理

usermod 更改用户信息
-l 更改用户名
-u 更改用户id
-g 更改主组id
-G 更改用户附加组
-aG 添加用户附加组身份
-c 更改用户说明
-d 更改家目录指向
-md 更改家目录指向同时更改家目录名称
-s 更改默认shell
-L 冻结账号
-U 解锁账号
groupmod -g 更改用户组id
必掌握的Linux系统中用户管理操作必掌握的Linux系统中用户管理操作必掌握的Linux系统中用户管理操作必掌握的Linux系统中用户管理操作

#七、用户认证信息管理

/etc/shadow 文件内容说明

  • 按照顺序依次为:
    用户名称:用户密码的加密字符:用户密码最后一次被修改时间:密码最短有效期:密码最长有效期:密码过期前警告期:账号非活跃期:账号到期时间:用户自定义(未使用)
    可用bash man 5 passwd查看

1.用户名称
查看密码状态:

passwd -S username 

监测:

watch -n 1 "tail -n 4 /etc/shadow ;echo @@@ ; passwd -S username" 

必掌握的Linux系统中用户管理操作
2.用户加密字符
(1)更改密码

passwd username 

只有root用户下可以执行:

echo **** | passwd --stdin username 

必掌握的Linux系统中用户管理操作(2)密码删除

passwd -d username 

(3)冻结/解锁认证

passwd -l username passwd -u username 

3.密码使用天数
从1970-1-1算起到今天的天数

修改默认使用时间为0:

passwd -e username 

账号必须修改密码才能登录系统:

chage -d 0 username 

4.密码最长有效期
40天内user必须更新密码否则会被冻结:

passwd -X 40 username 
chage -M 40 username 

必掌握的Linux系统中用户管理操作
5.密码最短有效期
user在一天内不能改密码:

passwd -n 1 username chage -m 1 username 

必掌握的Linux系统中用户管理操作6.密码过期警告
账号过期前警告时间:

passwd -w 2 username chage -W 1 username 

必掌握的Linux系统中用户管理操作7.认证非活跃天数
账号认证最大时间超过*后还能用多久:

passwd -i 2 username chage -I 1 username 

必掌握的Linux系统中用户管理操作8.账号认证到期时间
到2021-4-8这天账号会被冻结:

chage -E ''2021-04-08" username 

必掌握的Linux系统中用户管理操作9.未启用功能

#八、用户权力下放

  • 系统中普通用户无法执行系统管理命令时,需要普通用户执行系统管理动作,需要root用户来进行授权,普通用户授权方式sudo
    作用:可以使普通用户使用指定的用户身份运行命令

1.授权方式:

visudo 

此命令作用是编辑/etc/sudoers并提供语法检测

2.编辑
在文件的100行左右编辑(代码规范性)

格式为:
username hostname=(newusername) [NOPASSWD]/command /command
解释为:
新用户 在hostname主机=(用超级用户身份) [免密]执行useradd==命令
举例为:

westos  westoslinux.westos.org=(root)   NOPASSWD:/usr/sbin/useradd /usr/sbin/userdel 
必掌握的Linux系统中用户管理操作

3.测试:

su - westos sudo useradd test id test exit 

必掌握的Linux系统中用户管理操作可以免密执行userdeld的命令:

sudo userdel -r tset 

版权声明:玥玥 发表于 2021-04-09 11:28:16。
转载请注明:必掌握的Linux系统中用户管理操作 | 女黑客导航