• Linux用户和组的基础概念


    (一)用户,组和权限管理

    • multi-tasks,multi-user
    • 每个使用者:
      • 用户标识,密码
        • 3A
          • 认证/Authentication
          • 授权/Authorization
          • 审计/Audition
      • 组:用户组,用户容器,有些时候叫角色
    • 用户类别
      • 管理员
      • 普通用户
        • 系统用户
        • 登陆用户
      • 用户标识:UserID,UID,16bits二进制数字,有效范围0-65535
        • 管理员:0
        • 普通用户:1-65535,CentOS来讲,一般只到6万
          • 系统用户:1-499(CentOS6),1-999(CentOS7)
          • 普通用户:500-60000(CentOS6),1000-60000(CentOS7)
        • 用户解析:名称转换;
          • UserName<-->UID
          • 根据名称解析库进行:/etc/passwd
      • 组类别1:
        • 管理员组
        • 普通用户组
          • 系统用户组
          • 登陆用户组
        • 组标识:GroupID,GID,16bits二进制数字,有效范围0-65535
          • 管理员组:0
          • 普通用户组:1-65535,对于CentOS来讲,一般只到6万
            • 系统用户组:1-499(CentOS6),1-999(CentOS7)
            • 普通用户组:500-60000(CentOS6),1000-60000(CentOS7)
          • 名称解析
            • GroupName<-->GID
            • 根据名称解析库进行:/etc/group
      • 组类别2:
        • 用户的主组/基本组
        • 用户的附加组
      • 组类别3
        • 用户的私有组:组名同用户名,且只包含一个用户
        • 公共组:组内包含多个用户
    • 认证信息
      • 通过比对事先存储的,与登陆时提供的信息是否一致
      • 密码:
        • 用户密码:/etc/shadow
        • 组密码:/etc/gshadow
        • 密码的使用策略
          • 使用随机密码
          • 最短长度不要低于8位
          • 使用大写字母,小写字母,数据,标点四类字符中的最少三种
          • 定期更换
        • 加密算法
          • 对称加密:加密和解密使用同一个密钥
          • 非对称加密:加密和解密使用一对儿密钥:共钥/pubic key,私钥/private key
          • 单向加密:只能加密,不能解密;提取数据特征码
            • 定长输出,无论源明文多长
            • 有雪崩效应,初始条件的微小变化将会导致结果的巨大改变
            • md5:消息摘要/Message Digest,5是版本号,定长输出128位
            • sha:安全哈希算法/secure hash algorithm,定长输出160位
            • sha224,sha256,sha384,sha512
            • echo "How are you?" | md5sum
            • echo "How are you?" | sha512sum
            • 在计算之时,加salt,添加随机数,所以在shadow文件中,即使两个用户的密码一样,显示的字串也不一样,从而方式密码泄漏
            • 因为加密不可逆,所以每次用户登陆时,系统都会对用户的输入进行加密,然后比较加密后的结果
    • 用户信息库文件的存储格式
      • /etc/passwd
        • name:password:UID:GID:GECOS:directory:shell
        • name:用户名
        • password:可以是加密后的密码,也可以是占位符x,(命令pwconv)
        • UID
        • GID:用户所属的主组的ID号
        • GECOS:注释信息,电话等
        • directory:用户的家目录
        • shell:用户登陆时默认打开的shell
      • /etc/shadow
        • 用户名
        • 密码:第一个$符号后面的数字表示加密算法,1表示md5,然后依次类推,第二个$符号后面表示添加的随机数,第三个$符号后面是真正的加密后的密码
        • 最后一次更改密码的日期:相对时间计时法,从1970年1月1日到更改密码那一天所经历的天数;0表示用户在下次登陆的时候必须修改密码;空表示密码的年龄功能被禁用
        • 密码的最小年龄:两次修改密码的最小间隔
        • 密码的最大年龄:密码必须修改的时间间隔
        • 密码警告时间段:提醒用户修改密码的时间间隔
        • 密码禁用期:最大年龄之后的宽限期
        • 账户过期日期:从1970年1月1日开始的天数
        • 保留字段
      • /etc/group
        • group_name:password:GID:user_list
        • user_list:以此组为附加组的用户的用户列表。主组信息查passwd文件中的GID
      • 密码存储格式:单向加密,并借助于salt完成

    相关命令:useradd,userdel,usermod,passwd,groupadd,groupdel,groupmod,gpasswd,chage,chsh,id,su等等

  • 相关阅读:
    2020-2021-1 20209314《Linux内核原理与分析》第七周作业
    2020-2021-1 20209314《Linux内核原理与分析》第六周作业
    2020-2021-1 20209314《Linux内核原理与分析》第五周作业
    2020-2021-1 20209314《Linux内核原理与分析》第四周作业
    2020-2021-1 20209314《Linux内核原理与分析》第三周作业
    选做题MyOD 20209314
    2020-2021-1 20209314《Linux内核原理与分析》第二周作业
    2020-2021-1 20209322《Linux内核原理与分析》第十二周作业
    2020-2021-1 20209322《Linux内核原理与分析》第十一周作业
    2020-2021-1 20209322《Linux内核原理与分析》第九周作业
  • 原文地址:https://www.cnblogs.com/jacky1982/p/7623593.html
Copyright © 2020-2023  润新知