详解Linux下用户和组的配置文件

本文将介绍Linux下用户和组的概念及相关配置文件,通过本文,能更好的认识/etc/pssswd ,/etc/group,以及UID、GID的概念,最后将通过修改用户配置文件来实现用户和组的管理工作,对Linux的多任务、多用户有一个更清楚的认识。

一、用户(USER)

在LInux上用户的管理工作是通过修改相关的配置文件来实现的,在日常的工作中主要包含对用户的查询、增加、修改和删除,由此可见,修改配置文件对用户管理的重要性,下面将对用户(USER)的配置文件来具体说明。

用户的配置文件包括/etc/passwd和/etc/shadow文件,这两个文件是用来记录用户的密码、UID、GID等信息的,但密码是以加密的形式来存放的,且加密算法本身会产生雪崩效应:即初始条件的微小变化,将引起结果的巨大变活,所以想要破解密码基本是不可能的,下面将详细说明用户组的两个配置文件的区别:

1、/etc/passwd内容的详解:

在/etc/passwd中,每一行都代表的是一个用户的信息,一行有7段,用:来分割,如下所示:

root:x:0:0:root:/root:/bin/bash

        第一字段:用户名(也被称为登录名);在上面的例子中,我们看到这个用户的用户名是root,即管理员; 
        第二字段:口令;我们看到的是一个x,表示其为密码占位符,真实的密码已被保存到/etc/shadow 文件中; 
        第三字段:UID ;用户的用户ID号; 
        第四字段:GID;用户组的ID号; 
        第五字段:用户名全称;
        第六字段:用户的家目录所在位置;
        第七字段:用户所用SHELL 的类型,由上可见系统默认的是bash;

用户的UID:

UID即为用户在系统中的ID号,众所周知,Linux系统识别用户不是看用户名,而是看它自身的ID号来识别,每个用户的ID号都是唯一的,系统用户的UID从0开始,到65535,都可以分配用户,但他们之间是有区别的。我们的Linux系统分为管理员和普通用户两种,普通用户为1-65535,普通用户又分为系统用户和登录用户,ID号分别为1-,999和1000-65535。

上面说过,每个用户的UID号都是唯一的,把几个用户共用一个UID是危险的,比如我们上边说的root用户,如果把普通用户的UID改为0,和root共用一个UID,这事实上就造成了系统管理权限的混乱,如我们想用root权限,可用su命令实现,但绝不可以让一个用户和root分享同一个UID。

2、/etc/shadow内容的详解:

shadow,顾名思义,是passwd的影子文件,/etc/shadow文件包括用户、被加密的密码及用户的有限期限等,这个文件只有root权限才可以读取和操作,如下:

root:$6$6aHonQcR$Dt8.0GnvD3IO5cyVKDvRZLb8/zQMRz5.o6dflIsR/3E1Py1kCSMJ5P2Xga8Deh0ZTQxesQd5wgdyYWTOCvvcv0:17086:0:99999:7:::

       第一字段:用户名(也被称为登录名),和/etc/passwd 是相同的;
        第二字段:密码(已被加密),如果是有些用户在这段是x,表示这个用户不能登录到系统;这个字段是非空的; 
        第三字段:上次修改口令的时间;这个时间是从1970年01月01日到最近一次修改口令的时间间隔(天数),可以通过passwd 来修改用户的密码;
        第四字段:两次修改口令间隔最少的天数;如果设置为0,则禁用此功能;也就是说用户必须经过多少天才能修改其口令;默认值是通过/etc/login.defs文件定义中获取,PASS_MIN_DAYS 中有定义; 
        第五字段:两次修改口令间隔最多的天数;这个能增强管理员管理用户口令的时效性,应该说在增强了系统的安全性;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_MAX_DAYS 中定义; 
        第六字段:提前多少天警告用户口令将过期;当用户登录系统后,系统登录程序提醒用户口令将要过期;如果是系统默认值,是在添加用户时由 /etc/login.defs文件定义中获取,在PASS_WARN_AGE 中定义; 
        第七字段:在口令过期之后多少天禁用此用户;此字段表示用户口令作废多少天后,系统会完全禁用此用户;
        第八字段:用户过期日期;此字段指定了用户作废的天数(从1970年的1月1日开始的天数),如果这个字段的值为空,帐号永不过期; 
        第九字段:保留字段;

二、关于用户组(GROUP):

用户组的配置文件主要有/etc/group和/etc/gshadow,其中/etc/gshadow是/etc/group的加密信息文件;

1、/etc/group:

root:x:0:

在/etc/group 中的每条记录分四个字段: 
        第一字段:用户组名称; 
        第二字段:用户组密码; 
        第三字段:GID 
        第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;

        /etc/group文件使用户组的配置文件,内容包括用户和用户组,从中可以很清楚的看出用户所属的某个组或某些组。其中同一用户组的用户之间具有相同的权限。这一特性使得管理员在系统管理中获得了极大的方便。

        2、/etc/gshadow:

        /etc/gshadow的内容包括用户组(GROUP)、口令、GID及每个组所包含的用户:

root:::

        第一字段:用户组 ;
        第二字段:用户组密码,这个段可以是空的或!,如果是空的或有!,表示没有密码; 
        第三字段:用户组管理者,这个字段也可为空,如果有多个用户组管理者,用,号分割; 
        第四字段:组成员,如果有多个成员,用,号分割; 


        三、通过修改用户(USER)和用户组(GROUP)配置文件来修改用户或用户组:

        1、我们可以修改/etc/passwd和/etc/group来修改用户和用户做归属的组,通过修改/etc/passwd来实现,当然也可以修改用户的bash类型,家目录等等;

        2、修改用户所归属的组,可通过/etc/group修改来实现;

        3、删除用户及用户组,我们可以通过删除/etc/passwd和/etc/group相应的用户和用户组就能达到目的,当然也能通过userdel和groupdel来实现对用户及用户组的删除;

        通过对用户和用户组的描述,可以使我们清楚的知道配置文件对Linux系统的重要性,也从另一面反映出Linux系统的哲学思想之一,即:使用文本文件保存程序的配置数据,使用一个文本编辑器即可完成系统及服务配置工作。



原创文章,作者:maomaosan2008,如若转载,请注明出处:http://www.178linux.com/53743

(0)
maomaosan2008maomaosan2008
上一篇 2016-10-23
下一篇 2016-10-23

相关推荐

  • 用一条命令’pwd’判断并证明系统命令的执行顺序。

    一、命令分类        在Linux系统中命令分为两类:            1.内部命令:shell buildin 每次启动系统都会重新加载入内存。        2.外部命令:即某目录下的…

    Linux干货 2017-09-03
  • grep,find等相关命令

    Q1:显示当前系统上root、fedora或user1用户的默认shell; ~]# grep -E "^root|^fedora|^user1" /etc/passwd | awk -F: '{print $1,$NF}' ro…

    Linux干货 2016-11-27
  • 文件系统管理&raid&脚本编程之参数、算数运算练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; (1) ~]# fdisk /dev/sdb Welcome to…

    Linux干货 2016-11-08
  • 文件系统知一二

    文件系统知一二 What?文件系统是什么?     我们经常说文件系统,那么文件系统是什么东西呢?    计算机的文件系统是一种存储和组织计算机数据的组织结构。 常见的文件系统有哪些?           &n…

    Linux干货 2016-03-09
  • 激情的魅力samba服务(热舞篇)

    正如名称一样的迷人的一个服务,充满了激情。火热的天气中更添加一分悸动,本章就尝试对下面火热的samba服务是要如何破解并掌握于手心中。(本篇当中借鉴了鸟哥私房菜和linux就该这么学还有传说中的中华小题库,通过做题来对于samba进行初步的了解)后续还会添加一篇关于samba服务的文章,作为深度了解。 首先了解下samba的来源,听说作者老道(Tridgwe…

    Linux干货 2017-08-19
  • rpm包管理(二)

    查询查询库文件包查询[select-options][query-options]licdR常用的查询用法:卸载:二进制文件的恢复包效验使用rpm命令导入公钥(KEY文件)验证rpm包来源(光盘)的来源及完整性检查包安装后生成的文件,是否发生过变动RPM包管理器的数据库如果某个rpm相关内容被删除如果rpm命令的包被删除了信息库被删除了删除/usr/bin下…

    Linux干货 2016-09-19