用户和组

用户和组

一:安全3A

  Authentication: 认证(身份)
  Authorization: 授权(权限)
  Accounting|Audition:审计(监督)

二:用户user

  1. Linux用户:Username/UID
  2. 管理员:root,UID=0
  3. 登录用户:centos6:500+,centos7:1000+(交互式登录)
    4.useradd [option] USER
用户和组_第1张图片
Alt text

1》:创建一个用户并指定他的主组


Alt text

2》:创建一个用户并指定它的辅助组成员


Alt text

3》:创建一个系统账户,并自动制定一个1000(centos7)以内的ID
Alt text

4》:创建一个用户并指定它的家目录(但是此家目录必须不存在,因为需要设置权限)
用户和组_第2张图片
Alt text

5》:创建用户时的一些默认规则:(可以编辑文件修改默认规则)


用户和组_第3张图片
Alt text

5.可以用getent passwd USERNAME 直接显示/etc/passwd 下的用户信息
Alt text

6.默认已经创建的用户都有邮箱(/var/spool/mail) 图18
Alt text

7.userdel -r USERNAME 删除用户家目录及其邮箱。正在登陆的用户删不了

三:组group

  1. Linux组:Groupname/GID
  2. 管理员组:root,0
  3. 普通组:centos6:500+,centos7:1000+
  4. Linux组的类别 用户的主要组:(primary group) 用户必须属于一个且只有一个主组 组名同用户名,且仅包含一个用户:私有组 用户的附加组:(supplementary group) 一个用户可以属于零个或多个辅助组
    5.usermod
    1》:更改用户ID -u
    2》:更改用户主组 -g

用户和组_第4张图片
Alt text

3》:增加用户的辅助组 -G
4》:在原来辅助组的基础上增加辅助组 -aG
用户和组_第5张图片
Alt text

5》:在原来辅助组的基础上删除其中一个
用户和组_第6张图片
Alt text

6》:usermod、gpasswd都能改变组成员关系,也可以实现上述要求
用户和组_第7张图片
Alt text

6.主组的改变用只能用usermod,且主组不能删除 辅助组的改变可以用usermod、groupmems、gpaawd

四:用户和组的配置文件

:/etc/passwd:用户及其属性信息(名称、UID、主组ID等) 图1

用户和组_第8张图片
Alt text

格式:name:password:UID:GID:GECOS:directory:shell(七个字段) 图2
用户和组_第9张图片
Alt text

实验一:修改用户描述信息
chfn+用户名 再查看修改用户的详细信息
用户和组_第10张图片
Alt text

实验二:修改用户的shell类型(/bin /bash)
echo $SHELL 查看当前SHELL类型。shell类型不同,其内部命令就不同 图4
Alt text

查看用户的详细信息 : getent passwd(/etc/passwd) USERNAME
/etc/group:组及其属性信息
1》格式:GROUPNAME : 组的口令 :GID :组成员(即哪些组将此组作为他的辅助组)
2》
Alt text

3》也可以将多个用户放在同一个组里
用户和组_第11张图片
Alt text

4》groupmems -g g1 -l :查看g1组的辅助组成员 /etc/groups 文件里只放辅助组成员。要想查看一个用户的主组在/etc/passwd
Alt text

/etc/shadow:用户密码及其相关属性
格式:name:password:password time:min:max:warn:inactive:account
whatis shadow查看一下在第几章,然后man 3/5查看帮助文档

Alt text

1》 sha512机密算法 其他的加密算法:sha1:160bit sha224; sha 256;sha384
2》 更改加密算法 authconfig –passalgo=sha256 –update 其实更改的是 /etc/login.defs
3》新建立的用户查看getent shadow USERNAME时,会显示:USERNAME:!!:XXX:XXXX:XXX 此时用户被锁定,无法登陆。但是可以将用户的口令设置为空口令,更改/etc/login.defs文件,此时用户可以空口令登录
4》 如果用户已经有口令,也可以将其锁定usermod -L USERNAME 解锁:usermod -U USERNAME
5》 设置最短口令有效期


Alt text

也可以这样改 图7


Alt text

6》Windows里也可以设置密码永不过期 管理工具–>计算机管理–>本地用户和组–>点击用户即可设置

/etc/gshadow:组密码及其相关属性
格式:/groupname:password:group admins:member
1》组的加密口令 图11

Alt text

2》将wang用户添加到g1 组中 groupmems -g g1 -a wang
Alt text

3》将用户添加到新的组之后,只有重新登陆才能获取到自己最新的组信息
4》临时切换用户主组,但是exit之后又会切换回来
用户和组_第12张图片
Alt text

5》/etc/gshadow 和/etc/group文件如果手动修改时必须同步,否则会造成临时更改用户主组时不成功
6》组的管理员
Alt text

但是不建议直接修改配置文件,可以使用vipw(相当 于vim /etc/passwd)
7》另外也有用于语法检查的命令:pwck(对于用户) grpck(用于对组的检查)
8》 chage: chage -d 0 tom:设置用户下一次登录时强制修改密码 相当于passwd -e tom
9》:批量创建用户
@1:先进入/etc/passwd文件将需要创建的用户的信息复制下来。例如: wang:x:1001:1001::/home/wang:/bin/bash
mage:x:1002:1002::/home/mage:/bin/bash
jing:x:1003:1004::/home/jing:/bin/bash
libai:x:1004:1005::/home/libai:/bin/bash
@2:在需要建立用户的系统上创建一个文件用于存放这些用户信息。例如创建 user.txt 将用户信息放在此文件里并保存退出
@3.看getent passwd看用户是否存在
@4.虽然用户信息复制过来了,但是口令没有复制过来,所以更改口令,可以用: echo xxx | passwd –stdin wang 或者是 echo wang:xxx | chpasswd
@5: 也可以批量改变用户口令,也是将用户口令都放在一个文件里,编辑 username : password 之后保存退出

用户和组_第13张图片
Alt text

但是还是存在一些问题


用户和组_第14张图片
Alt text

然后使用

cp /etc/skel/.[^.]* . /home libai

10》:id (可以用于判断用户是否存在)

-u:显示UID
-g:显示GID
-G:显示用户的主组
-n:显示名称,需配合ugG使用

11》:su :切换用户 如果需要来回切换用户,最好使用 exit

用户和组_第15张图片
Alt text

12:passwd:修改指定用户的密码

-l:锁定指定用户
 -u:解锁指定用户
 -e:强制用户下次登录时修改密码
 -n:指定最短使用期限
 -x:最大使用期限
 -w:提前多少天开始警告
 --stdin:从标准输入接受用户密码 
    echo PASSWORD | passwd --stdin USERNAME

13:将user1添加到g1,g1,g3的方法

@1: usermod -aG g1,g2,g3 user1
@2: gpasswd -a user1 g1 gpasswd -a user1 g2 gpasswd -a user1 g3
@3: grouomems -a user1 g1 grouomems -a user1 g2 grouomems -a user1 
      g3 

将user1从g1,g2,g3组中删除

@1:usermod -G “” user1 
@2:usermod -G 主组名 user1

练习

用户和组_第16张图片
Alt text
用户和组_第17张图片
Alt text

你可能感兴趣的:(用户和组)