码迷,mamicode.com
首页 > 其他好文 > 详细

用户和组管理基础

时间:2016-08-01 23:03:40      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:linux命令   用户   组管理讲解   

   用户和组管理基础


简介

在linux系统中,用户管理是基于用户名和密码的方式进行资源的分配

用户类别:
用户标识:UserID,UID
16bits二进制数字:0-65535
管理员:ID号为0;------只要是为0的就是管理员用户
普通用户:1-65535
    系统用户:1-499(CentOS 6),1-999(CentOS 7)
    登录用户:500-60000(CentOS6),1000-60000(CentOS7)
名称解析:名称转换
    Username <--> UID
    根据名称解析库进行: /etc/passwd
计算机只会过识别ID号判断用户类型


组类别:
组标识:GroupID,GID
    管理员组:0
    普通用户组:1-65535
        系统用户组:1-499(CentOS6),1-999(CentOS7)
        登录用户组:500-60000(CentOS6),1000-60000(CentOS7)
名称解析: groupname <--> gid
    解析库:/etc/group

Linux组的类别

用户的主要组(主组):
    用户必须属于一个且只有一个主组组名同用户名,且仅包含一个用户:
用户的附加组(辅助组):
    一个用户可以属于零个或多个辅助组
私有组:组名同用户名,且只包含一个用户
公共组:组内包含了多个用户

用户相关的配置文件

Linux用户和组的主要配置文件:
/etc/passwd:用户及其属性信息(名称、UID、主组ID等)
/etc/group:组及其属性信息
/etc/shadow:用户密码及其相关属性
/etc/gshadow:组密码及其相关属性
  • /etc/passwd

[root@qzx ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
 1   2 3 4  5    6      7  
1.用户名  
2.用户密码,这里的x表示隐藏,具体密码在/etc/shadow  
3.UID  
4.GID    
5.用户的详细说明信息  
6.用户的家目录  
7.用户的默认shell
  • /etc/group

      [root@qzx ~]# cat /etc/group
      bin:x:1:bin,daemon
      组名:组密码:组id:以当前组为附加组的用户列表(多个的话可以用,隔开)
  • /etc/shadow

      qzx:$6$BhPk8ACU5lLXaACs$iB4zKp0r2B/zo5GkgXjzvSgTGfsyxtpd9sXL939Oxcg.oMR6k5G1Bnmaqp59ivH8rzFrgGslbLt4/4L0dk5.q.:17002:0:99999:7:::
      1、用户名
      2、加了密的密码,$6表示sha512加密
      3、最近一次更改密码的日期(从1970年1月1日起到密码最近一次被更改的时间)
      4、密码再过几天可以被变更(0表示随时可被变更)
      5、密码的最大使用期限,密码再过几天必须被变更
      6、密码的提前几天警告(默认为一周)
      7、密码过期几天后帐号会被锁定
      8、账户的过期日期,从1970年1月1日算起,多少天后帐号失效

    技术分享

    pwunconv 密码不转换直接查看passwd中密码, 执行后cat /etc/passwd中显示密码 shadow中就没有了

      [root@qzx ~]# pwunconv
      [root@qzx ~]# cat /etc/passwd
      root:$6$vnmALXUV5utyFkPS$Y0pkRMEzfAZYmhWmBhnD5.BKeTxvTYPotdzDaddP3AVwT2YU2tflNWbq/us.bij0RZe9qj4bLW5mDLkZ3706V1:0:0:root:/root:/bin/bash
      [root@qzx ~]# cat /etc/shadow
      cat: /etc/shadow: No such file or directory

pwconv 转换回去

  • /etc/gshadow

      haldaemon:!::haldaemon
      1         2 3 4
      1、群组名称:就是群组名称
      2、群组密码:
      3、组管理员列表:组管理员的列表,更改组密码和成员
      4、以当前组为附加组的用户列表:(分隔符为逗号)

指定查看某一个用户的passwd,shadow,group, gshadow方法

getent [passwd,shadow,group, gshadow] 用户名

例如

[root@qzx ~]# getent passwd qzx
qzx:x:500:500:qzx:/home/qzx:/bin/bash
[root@qzx ~]# getent group qzx
qzx:x:500:
[root@qzx ~]# getent gshadow root
root:::

passwd和group的编写与检查

  • vipw和vigr

  • pwck和grpck



密码

 加密机制:
加密:明文--> 密文
解密:密文--> 明文

密码的几点特性

  1. 单向加密:哈希算法,原文不同,密文必不同

  2. 相同算法定长输出,获得密文不可逆推出原始数据

  3. 雪崩效应:初始条件的微小改变,引起结果的巨大改变

    md5: message digest, 128bits
    sha1: secure hash algorithm, 160bits
    sha224: 224bits
    sha256: 256bits
    sha384: 384bits
    sha512: 512bits

更改加密算法 authconfig --passalgo=sha256 --update
12

密码的复杂性策略

  1. 使用数字、大写字母、小写字母及特殊字符中至少3种

  2. 足够长

  3. 使用随机密码

  4. 定期更换;不要使用最近曾经使用过的密码


用户和组管理基础

标签:linux命令   用户   组管理讲解   

原文地址:http://11741220.blog.51cto.com/11731220/1833208

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!