用户和组相关的配置文件总结

前言:

在用户管理,组管理过程中,最基本的四个文件就是/etc下面的passwd,shadow,group,gshadow。他们记录了与用户和组相关的信息。是学习和深入了解用户,组的基本。

除了这些基本的配置文件 还有与初始化相关的配置文件。定义用户添加时初始状态的配置文件/etc/default/useradd。

以及用户家目录的内容文件参考目录/etc/skel。和与用户,组基本属性默认设置的配置文件/etc/login.defs。接下来就对这些配置文件进行详细介绍。

/etc/passwd:

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

    1.帐号名称:用来提供给对数字不太敏感的人类使用来登入系统的。需要对呀UID。例如root的UID对应的就是0(第三位)

    2.密码:早起Unix系统的密码是放在这一栏的。但是因为passwd的特性是所有程序逗都能读取,这样很容易造成密码资料被窃取,因此后来就将这个栏位的密码资料改进到/etc/shadow中了。所以这里会看到一个x。

    3.UID:这个就是标识用户的识别码。通常,centos6中,id为0是系统管理员,即只要uid是0就是管理员,就散用户名是root,对应的uid不是0,那么它也不是系统管理员。1到499是系统用户,500到60000是普通用户,在centos 7中,系统帐号的id是1到999,普通用户的id是1000到60000。

    4.GID:这个与/etc/group有关。用来标识一个用户组。

    5.使用者资料说明栏:用来说明这个帐号的意义,比如:全名,办公室的房间号,办公室电话,家里电话等等

    6.家目录:指明用户的家目录,以上面为例,root的家目录就是/root。所以当root登录后就立刻跑到/roo目录里面,默认普通用户的家目录在/home/yourname

    7.shell:指定我们登录用户后使用的shell类型,特别要注意的/sbin/nologin这个shell,可使用户不能登录。

/etc/shadow:

    例:root:$6$wtbCCce/PxMeE5wm$KE2IfSJr.YLP7Rcai6oa/T7KFhO…:16559:0:99999:7:::

    1.帐号名称:这里的名称与/etc/passwd里的帐号名称对应。

    2.密码:这个栏里才是用户正真的密码,而且是经过加密的密码。并且很难被破解出来,虽然很难但不等于不会,所以此文件的权限是只有root可以读写。

    3.最近修改密码的日期:这个栏位记录了更改密码那一天的日期。16559表示修改密码那天距离1970年1月1日的天数,

    4.密码不可被更改的天数(与第三栏相比):标识这个密码被修改后需要经过几天才可以在此被修改,如果是0的话,表示密码可以被随时修改。如果设置为10天,标识你设置完密码后的10天内都不能修改密码。

    5.密码需要重新变更的天数:(与第三栏相比):这个栏位用来指定在最近一次修改密码后,在多少年数内需要在此的变更密码才行。你必须在这个天数内重新设定你的密码,否则这个帐号的密码将会过期。

    6.密码需要变更期限前的警告天数:(与第五栏相比)当账号的密码有效期限快要到的时候,系统会根据这个栏位的设定,发出警告言论给这个帐号,提醒他再过n天密码就要过期了,如上面的例子,则是密码到期之前的7天之内,系统会警告该用户。

    7.密码过期后的帐号宽限时间(密码失效日):(与第五栏相比)密码有效日期为第三栏更新日期加上第五栏的重新变更日期,过了该期限后使用者依旧没有更改密码,那该密码就算过期了。虽然密码过期但是该帐号还是可以用来进行其他的工作,包括登入系统取得bash。不过如果密码过期了,那当你登入系统时,系统会强制要求你必须重新设定密码才能登入继续使用。该栏目的表示,在密码过期几天后,如果使用者还是没有登入更改密码,那么该帐号的密码就会失效,即该帐号再也无法使用该密码登入了。要区分密码过期和密码失效

    8.帐号失效日期:这个日期跟第三栏一样,都是使用1970年来的总天数设定。这个栏标识,这个帐号在此栏规定的日期之后,将无法再使用。就是所谓的帐号失效,此时无论你的密码是否过期,这个帐号就不能在被使用,这个栏位会被使用通常应该在收费服务的系统中,你可以规定一个日期让这个帐号不能再使用了。

    9.保留:最后一栏是保留的,看以后有没有新功能加入。

/etc/default/useradd

    GROUP=100                 <==预设的群组
    HOME=/home                 <==预设的家目录所在目录
    INACTIVE=-1                 <==密码失效日,在shadow内的第7栏
    EXPIRE=                         <==帐号失效日,在shadow内的第8栏
    SHELL=/bin/bash                 <==预设的shell
    SKEL=/etc/skel                 <==使用者家目录的内容资料参考目录
    CREATE_MAIL_SPOOL=yes    <==是否主动帮使用者建立邮件信箱(mailbox)

    

    GROUP=100:新建帐号的初始群组为GID是100的群组,但centos中并不是这样。centos采用私有群组机制,在帐号创建时,系统默认会创建一个与帐号名一样的群组给使用者作为初始去租。这种群组这顶机制会比较有保密性,因为每个用户都有自己的群组,而家目录的权限设定为,只有自己和进入自己的家目录。所以此机制不会参考GROUP=100这个设定值。

    HOME=/home:用户家目录的基准目录,即用户的家目录通常是与帐号同名的目录,这个目录将会放在次设定值的目录后。

    INACTIVE=-1:密码过期后是否会失效的设定值,我们在shadwo配置文件中提过,第七栏位的设定值将会影响到密码过期后,在多久时间内还可以使用旧密码登入。这个项目就是在指定该天数!如果是0代表密码过期立刻失效,如果是-1则是代表密码永远不会失效。如果是30,则代表过期30天后才会失效。

    EXPIRE=:帐号失效的日期,就是shadow内的第八栏,你可以直接设定帐号在哪个日期后就直接失效,并且和密码的问题无关。

    SEELL=/bin/bash:默认使用的shell名称,系统默认的shell就写在这里,假如你的服务器不需要用户登录系统取得shell,那么就可以将这里设定为/sbin/nologin,这样,新建的使用者默认就无法登入了。

    SKEL=/etc/skel:用户家目录参考的基准目录,用户刚创建后家目录内就有各种配置文件,都是有/etc/skel所复制过去的。假如你想用户刚建立就有某个目录,就把该目录添加到/etc/skel中,这样每次用户被创建,此目录就会被复制到家目录下。

    CREATE_MAIL_SPOOL=yes:建立使用者的邮箱。

/etc/skel/

    就是上面提到的,用户家目录的内容参考目录,并且有以下配置文件。

    .bash_logout:当每次退出系统(退出bash shell)时,执行此文件

    .bash_profile:每个用户都可使用该文件输入专用于自己的shell信息,当用户登录时,该文件仅仅执行一次,默认情况下,他设置一些环境变量,执行用户的.bashrc文件

    .bashrc:该文件包含用户bash shell的信息,当登录时以及每次打开新的shell时,该文件被读取.

/etc/login.defs

    MAIL_DIR /var/spool/mail  <==使用者预设邮件信箱放置目录
 
    PASS_MAX_DAYS 99999     <==/etc/shadow内的第5栏,多久需变更密码日数
    PASS_MIN_DAYS 0         <==/etc/shadow内的第4栏,多久不可重新设定密码日数
    PASS_MIN_LEN 5         <==密码最短的字元长度,已被pam模组取代,失去效用!
    PASS_WARN_AGE 7         <==/etc/shadow内的第6栏,过期前会警告的日数
 
    UID_MIN 1000     <==使用者最小的UID,意即小于1000的UID为系统保留
    UID_MAX 60000     <==使用者能够用的最大UID
    SYS_UID_MIN 201     <==保留给使用者自行设定的系统帐号最小值UID
    SYS_UID_MAX 999     <==保留给使用者自行设定的系统帐号最大值UID
    GID_MIN 1000     <==使用者自订群组的最小GID,小于1000为系统保留
     GID_MAX 60000     <==使用者自订群组的最大GID
    SYS_GID_MIN 201     <==保留给使用者自行设定的系统帐号最小值GID
    SYS_GID_MAX 999     <==保留给使用者自行设定的系统帐号最大值GID
 
    CREATE_HOME yes       <==在不加-M及-m时,是否主动建立使用者家目录?
    UMASK 077       <==使用者家目录建立的umask ,因此权限会是700
    USERGROUPS_ENAB yes       <==使用userdel删除时,是否会删除初始群组
    ENCRYPT_METHOD SHA512     <==密码加密的机制使用的是sha512这一个机制!

原创文章,作者:M21-陕西-李贤,如若转载,请注明出处:http://www.178linux.com/53544

(0)
M21-陕西-李贤M21-陕西-李贤
上一篇 2016-10-24 09:09
下一篇 2016-10-24 09:10

相关推荐

  • CentOS6.9系统上编译安装httpd.2.2.32

    本文所做的所有操作是在一部新安装的CentOS6.9系统上。 1.环境与配置 环境说明:VMware上安装的CentOS6.9系统,两张系统盘做成的yum源 配置:编译生成的所有的文件都存放在/usr/local/httpd22/这个目录下 2.安装GCC编译器 [root@localhost ~]# yum grouplist | grep “Develo…

    2017-04-20
  • Linux命令格式、获取帮助、文件系统

    一、Linux的命令     (一)、概念和意义:             发起一个命令:请求内核将某个二进制程序运行为一个进程;      &nbs…

    Linux干货 2016-08-15
  • 自制简易linux系统

    一、环境准备 1.笔记本电脑 2.vmware12软件 3.CentOS 6虚拟机 4.大于5G空间的物理磁盘分区 二、分区并挂载文件系统 1.添加磁盘 在vmware中选中CentOS 6系统并右击鼠标选择设置,添加–>硬盘–>SCSI(推荐)–>创建新虚拟磁盘–>大小改为5G–>完成 2.分区并…

    Linux干货 2016-09-20
  • N25-第1周博客作业

    计算机概述及命令 一、计算机原理及其组成功能 计算机作为一个整体,由软件和硬件两大部分组成:  (1)计算机硬件系统。        计算机的硬件系统结构有哈佛结构和冯·诺伊曼结构两种。 哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内…

    Linux干货 2016-12-03
  • DNS

    DNS DNS解析 DNS名称解析方式:名称 –> IP:正向解析IP –> 名称:反向解析注意:二者的名称空间,非为同一个空间,即非为同一棵树;因此,也不是同一个解析库; DNS查询类型:递归查询:一般是客户机和服务器之间的查询;即只发送一个请求,其他的工作交由上层服务器去解决;迭代查询:一般是服务器和服务器之间的凡是,…

    Linux干货 2017-05-31
  • shell-在线翻译脚本

            在linux过程中难免会碰到陌生的单词,此时不得不打开翻译软件或网页请求翻译,但这样切换界面比较麻烦,也浪费时间;         今天头脑发热,尝试着在网上找命令行翻译工具,但无果;…

    2017-02-19