详解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 20:57
下一篇 2016-10-23 21:39

相关推荐

  • N26-第六周作业

    vim编辑器的使用 编辑模式:默认模式编辑模式–>输入模式;i:insert,在光标所在处输入;a:append,在光标所在处后方输入o:在光标所在处下方打开的一个新行;光标处在行首;I:在光标所在行的行首输入A:在光标所在处的行尾输入;O:在光标所在处的上方打开一个新行; 输入模式–>编辑模式ESC 编辑模式&#8211…

    Linux干货 2017-03-13
  • week4

    一,复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没 有任何访问权限; cp -r /etc/skel/ /home/tuser1 chmod -R go= /home/tuser1/ 二,编辑/etc/group文件,添加组hado…

    Linux干货 2016-11-18
  • Linux nginx 服务

                           Linux nginx 服务 Nginx服务简介:      NGINX :是一个自由、开源、高性能、轻量级的HT…

    系统运维 2016-11-18
  • HAProxy实现请求的80端口转发至后端的8000端口并实现动静分离

    一 实验目的 用HAProxy作为负载均衡器,实现把前端请求调度到后端,前端监听80端口,转发至后端的8000端口,并会对访问资源进行判断实现不同的访问内容转发至相对应的服务器。 二 实验拓扑 三 实验环境 IP 功能 192.168.20.108 HAProxy 192.168.237.129 Nginx 192.168.237.130 Nginx+PHP…

    Linux干货 2016-12-19
  • man命令的用法

    man 命令的用法    在linux运维工作中,经常会有一些命令我们不是很清楚它们的准确用法,这时候我们就需要去查询这些命令的用法,linux中就有很多文档帮助我们去了解这些命令的用法,其中就有一条命令man,下面我就总结一下它的用法。     man 是 manual 的简写,提供命令的帮助文件。   &…

    Linux干货 2017-02-17
  • vim编辑器

      在linux系统中使用文本编辑器来编辑你的配置文件是一件很重要的事。vim是linux最常用的文本编辑器,具有以下优势:所有的linux都内置vi文本编辑器。很多软件都会主动调用vi,如crontab、visudo等. 所以我们必须学好vi,vim分为以下3种模式:   一般模式: 用 vi打开一个文件时,一进入该文件就是一般模式了。…

    Linux干货 2016-06-09