zoukankan      html  css  js  c++  java
  • 用户管理-配置文件详解及配置

    用户信息文件:  /etc/passwd

    密码文件:  /etc/shadow

    用户组文件:  /etc/group

    用户组密码文件:  /etc/gshadow

    用户配置文件

      /etc/login.defs

      /etc/default/useradd

    新用户信息文件 /etc/skel

    登录信息  /etc/motd

    0.linux中用户与组

    • 1.用户

    (1)超级用户 (root,UID为0)  linux中只要是UID为0,linux就认为是超级用户。

    (2)普通用户:(UID 500-6000  ,这个大小可以在配置文件更改)

    (3)伪用户(UID 1-499)   linux自带的一些用户

    •   伪用户与系统和程序服务相关

        例如:bin,dadaemon,shutdown,halt等,任何linux系统都默认有这些用户、

          mail,news,games,apache,ftp,mysql以及sshd,与linux系统的进程相关。

    • 位用户通常不需要或无法登陆系统
    • 可以没有宿主目录
    • 2.组:

    (1)每个用户都至少属于一个组

    (2)每个用户组可以包含多个用户

    (3)同一用户组的用户享有该组共有的权限

    1.用户信息文件:  /etc/passwd简介:

    里面的一行内容代表一个用户,因此想查看当前有几个用户可以:

    [root@VM_0_12_centos ~]# wc -l /etc/passwd
    30 /etc/passwd

    里面的一行内容简介:

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

    用户名:密码位:UID:GID:描述信息:

    字段 含义
    用户名 y用户登录系统时使用的用户名
    密码 密码位
    UID 用户标识号
    GID 缺省组标识号
    注释性描述  例如存放用户全名信息等
    宿主目录 用户登录系统后的默认目录,如果创建用户未指定,会在/home下创建于与用户同名的目录
    命令解释器 用户使用的shell,默认为bash
    • 保留密码位的原因:

      linux一开始是将密码写到/etc/passwd中,然后再写到/etc/shadow中。(这些操作是linux系统在我们添加用户的时候帮我们做的先将密码写到passwd然后将密码移到shadow)

    [root@VM_0_12_centos ~]# grep qlq /etc/passwd  #在/etc/passwd中查看qlq相关信息是密码位
    qlq:x:1000:1000::/home/qlq:/bin/bash
    [root@VM_0_12_centos ~]# pwunconv  #将密码回写到/etc/passwd
    [root@VM_0_12_centos ~]# grep qlq /etc/passwd  #再次在/etc/passwd查看qlq相关信息是加密密码
    qlq:$1$en8QJp5f$00T1TAnX68yvu2LoWztoF0:1000:1000::/home/qlq:/bin/bash
    [root@VM_0_12_centos ~]# grep qlq /etc/shadow  #在/etc/shadow查看qlq信息发现shadow文件不存在
    grep: /etc/shadow: No such file or directory
    [root@VM_0_12_centos ~]# pwconv  #将密码从/etc/passwd写到/etc/shadow中
    [root@VM_0_12_centos ~]# grep qlq /etc/passwd    #查看/etc/passwd又变成密码位
    qlq:x:1000:1000::/home/qlq:/bin/bash
    [root@VM_0_12_centos ~]# grep qlq /etc/shadow  #查看/etc/shadow信息
    qlq:$1$en8QJp5f$00T1TAnX68yvu2LoWztoF0:17620:0:99999:7:::
    • 手工创建用户

      所以我们添加用户的时候我们可以用vim手动添加一个到/etc/passwd,密码可以不写,然后在shadow中也添加此用户信息,密码不写,用户登录之后再写密码。(模仿之前的用户填写,shell脚本不能写错,否则不能登录)。然后我们还需要将/etc/skel/目录下的登录信息复制到/home/新建用户 文件夹下面。因为我们使用useradd添加用户的时候会在/home目录下创建一个与用户同名的目录,且将/etc/skel/目录下的登录信息复制到用户宿主目录。

    最后登录即可:

      username:在passwd验证

      password:在shadow验证

    2.密码文件:  /etc/shadow简介

    qlq:$1$en8QJp5f$00T1TAnX68yvu2LoWztoF0:17620:0:99999:7:::

    用户名:加密密码:最后一次修改密码时间:最小时间间隔:最大时间间隔:警告时间:账号闲置时间:失效时间:标志

    如果加密密码删除,只需要用户名就可以登录,所以如果忘记密码可以删除这个文件中对应用户密码,登录之后重新设置密码即可(虽然是只读文件,root是超级管理员,可以用:wq!强行保存)

    字段   含义
    用户名 用户登录的账号
    密码 加密密码
    最后一次修改时间 距离上次修改密码时间(距离1970年1月1日)
    最小时间间隔 两次密码修改之间的最小时间间隔天数
    最大时间间隔 密码保持有效的最多天数
    警告时间 从系统开始警告到密码失效的天数
    账号闲置时间 账号闲置时间(0表示天天登录)
    失效时间 密码失效的绝对天数(失效了几天了)
    标志 一般不用

    3. 用户缺省的配置文件

    • /etc/login.defs

      上面的默认值都在/etc/login.defs中配置,因此可以修改此配置文件:

    [root@VM_0_12_centos skel]# cat /etc/login.defs
    #
    # Please note that the parameters in this configuration file control the
    # behavior of the tools from the shadow-utils component. None of these
    # tools uses the PAM mechanism, and the utilities that use PAM (such as the
    # passwd command) should therefore be configured elsewhere. Refer to
    # /etc/pam.d/system-auth for more information.
    #
    
    # *REQUIRED*
    #   Directory where mailboxes reside, _or_ name of file, relative to the
    #   home directory.  If you _do_ define both, MAIL_DIR takes precedence.
    #   QMAIL_DIR is for Qmail
    #
    #QMAIL_DIR      Maildir
    MAIL_DIR        /var/spool/mail
    #MAIL_FILE      .mail
    
    # Password aging controls:
    #
    #       PASS_MAX_DAYS   Maximum number of days a password may be used.
    #       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
    
    #       PASS_MIN_LEN    Minimum acceptable password length.
    #       PASS_WARN_AGE   Number of days warning given before a password expires.
    #
    PASS_MAX_DAYS   99999
    PASS_MIN_DAYS   0
    PASS_MIN_LEN    8    #密码最短位数(用root设置的时候不用遵循规定)
    PASS_WARN_AGE   7
    
    #
    # Min/max values for automatic uid selection in useradd
    #
    UID_MIN                  1000
    UID_MAX                 60000
    # System accounts
    SYS_UID_MIN               201
    SYS_UID_MAX               999
    
    #
    # Min/max values for automatic gid selection in groupadd
    #
    GID_MIN                  1000
    GID_MAX                 60000
    # System accounts
    SYS_GID_MIN               201
    SYS_GID_MAX               999
    
    #
    # If defined, this command is run when removing a user.
    # It should remove any at/cron/print jobs etc. owned by
    # the user to be removed (passed as the first argument).
    #
    #USERDEL_CMD    /usr/sbin/userdel_local
    
    #
    # If useradd should create home directories for users by default
    # On RH systems, we do. This option is overridden with the -m flag on
    # useradd command line.
    #
    CREATE_HOME     yes    #创建宿主目录
    
    # The permission mask is initialized to this value. If not specified,
    # the permission mask will be initialized to 022.
    UMASK           077    #默认权限
    
    # This enables userdel to remove user groups if no members exist.
    #
    USERGROUPS_ENAB yes
    
    # Use SHA512 to encrypt password.
    ENCRYPT_METHOD MD5  #加密方法
    •   另外还有一个默认的配置文件存在/etc/default/useradd
    [root@VM_0_12_centos skel]# cat /etc/default/useradd
    # useradd defaults file
    GROUP=100    #组ID
    HOME=/home    #默认宿主目录创建在那个目录
    INACTIVE=-1    #账号是否锁定,-1表示未锁定,0或其他表示锁定
    EXPIRE=      #账号失效时间
    SHELL=/bin/bash  #缺省使用的shell脚本
    SKEL=/etc/skel    #默认登录信息存放位置
    CREATE_MAIL_SPOOL=yes  #保存邮件信息的文件

    如果想查看系统的shell脚本:

    [root@VM_0_12_centos skel]# cat /etc/shells   #查看系统的shell脚本
    /bin/sh
    /bin/bash
    /sbin/nologin
    /usr/bin/sh
    /usr/bin/bash
    /usr/sbin/nologin
    /bin/tcsh
    /bin/csh

    4.登录信息文件 /etc/motd   /etc/issure

      • 1./etc/issure  登录输入用户名和密码时候的提示符
    [root@iz2ze46xi6pjjj69ailg9lz ~]# cat /etc/issue
    S
    Kernel 
     on an m

    这个配置文件是在登录的时候会出现的配置文件:

    最好不要暴露我们的liux版本,所以我们可以修改/etc/issure,例如:

    (1)备份且修改issure文件:

    [root@iz2ze46xi6pjjj69ailg9lz ~]# cp /etc/issue /etc/issue.bak20180330
    [root@iz2ze46xi6pjjj69ailg9lz ~]# vim /etc/issue
    [root@iz2ze46xi6pjjj69ailg9lz ~]# cat /etc/issue
    please enter username and password!:

    (2)重新登录查看提示符:

      •  /etc/motd  登录成功之后的提示符(可以替代wall发广播与替代mail发邮件)
    [root@iz2ze46xi6pjjj69ailg9lz ~]# cat /etc/motd
    
    Welcome to Alibaba Cloud Elastic Compute Service !

     

     修改登录成功之后的提示信息:

     (1)备份且修改/etc/motd文件

    [root@iz2ze46xi6pjjj69ailg9lz ~]# cp /etc/motd /etc/motd.bak20180330
    [root@iz2ze46xi6pjjj69ailg9lz ~]# vim /etc/motd
    [root@iz2ze46xi6pjjj69ailg9lz ~]# cat /etc/motd
    
    Welcome to China!This is your father!

    (2)登录查看提示信息:

  • 相关阅读:
    @雅礼集训01/13
    @hdu
    @bzoj
    @hdu
    @bzoj
    @雅礼集训01/10
    @codeforces
    @spoj
    @bzoj
    @bzoj
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/8675467.html
Copyright © 2011-2022 走看看