Linux 中新建用户的默认配置文件

一、/etc/login.defs配置文件

          /etc/login.defs 文件用于在Linux创建用户时,对用户的一些基本属性做默认设置,例如指定用户 UID和 GID 的范围,用户的过期时间,密码的最大长度等等。该文件里的配置对root用户无效。

            需要注意的是,如果该文件与/etc/shadow里有相同的选项,则以/etc/shadow的设置为准。也就是说/etc/shadow的配置优先级高于/etc/login.defs

配置文件详解:

[root@whb ~]# grep -Ev '^$|^#' /etc/login.defs
 
MAIL_DIR	/var/spool/mail       #创建用户时,还在此目录下创建用户的mail文件 

PASS_MAX_DAYS	99999                 #用户密码最大的有效期

PASS_MIN_DAYS	0                     #用户密码最小的修改时间 

PASS_MIN_LEN	5                     #用户密码的最小长度(默认不生效)

PASS_WARN_AGE	7                     #密码到期前的警告时间

UID_MIN                  1000         #普通用户最小的UID

UID_MAX                 60000         #普通用户最大的UID

SYS_UID_MIN               201         #系统用户最小的UID

SYS_UID_MAX               999         #系统用户最大的UID

GID_MIN                  1000         #普通组的最小GID

GID_MAX                 60000         #普通组的最大GID

SYS_GID_MIN               201         #系统组的最小GID

SYS_GID_MAX               999         #系统组的最大GID

CREATE_HOME	yes        #新建用户时,是否创建家目录

UMASK           077        #默认创建目录的权限级别

USERGROUPS_ENAB yes        #新建用户时,在未指定基本组时,是否新建一个同名的组作为其主组

ENCRYPT_METHOD SHA512      #采用SHA512算法加密 

二、/etc/default/useradd配置文件

同样也是新建用户时的默认配置文件

[root@whb ~]# cat /etc/default/useradd 
# useradd defaults file

GROUP=100            #当login.defs中的USERGROUPS_ENAB为no时,使用此选项,新建用户的组的GID为100

HOME=/home           #普通用户家目录的位置  

INACTIVE=-1          #是否启用账户过期停权,-1为不启用

EXPIRE=              #用户的过期时间,不设置表示未启用

SHELL=/bin/bash      #新建用户默认的shell类型

SKEL=/etc/skel       #用户家目录的模板

CREATE_MAIL_SPOOL=yes  #创建用户时,是否创建mail文件

 

案例:

关闭/etc/login.defs中的USERGROUP_ENAB=no,创建用户时,默认GID为100

[root@whb ~]# grep 'USERGROUPS_ENAB' /etc/login.defs
USERGROUPS_ENAB no
[root@whb ~]# useradd   user07
[root@whb ~]# id  user07       #此时会发现,user07的GID为100
uid=2001(user07) gid=100(users) groups=100(users)
点赞

发表回复