首页 > 代码库 > Linux下修改配置文件创建用户

Linux下修改配置文件创建用户

1.1用户配置文件

[root@vmoracle ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash

/etc/passwd中共有7个字段使用冒号分割,一个用户对应一条记录。


root:               用户名。

x:                     用户密码占位符,真正的密码通过加密后存放在/etc/shadow文件中。

0:                     root用户的UID(user-id),系统用户ID小于500,普通用户ID大于等于500。

0:                     root用户的GID(group-id),系统组ID小于500,普通组ID大于等于500。

root:               用户的描述信息。

/root:               root用户的home目录,普通用户的home目录一般位于    /home/用户名。

/bin/bash:      用户登录系统时使用的shell。


[root@vmoracle ~]# head -1 /etc/shadow
root:$6$hUzF3bHDW.6UMp0G$FSNJI.yGgOoTMuz53n0vdGhY2RudU/H/RIHt4BDu1VHldyLAog5/b5cRIEgAhrsOzXFR3kSW77TWVaDcZya5P1:16312:0:99999:7:::

/etc/shadow主要存放与用户密码相关的参数共有9个字段使用冒号分割,一个用户对应一条记录。


root:               用户名和/etc/psswd中的用户名对应。

字段2:            通过MD5加密算法加密的用户密钥,如果为!!表示还没有创建用户密码。

16312:            最后更改密码的日期和1970-1-1相隔的天数。

0:                     指定密码设置多少天后才能更改,0代表随时可以。

99999:            密码使用期限,指定多少天后必须修改密码。

7:                     密码到期前的提示的天数,这儿表示密码过期前的7天开始提示用户修改密码。

字段7:             账户失效日期,用户密码超过指定使用日期没有修改密码,到账户失效这段时间之间账户处于失效状态,可以让管理员重新启用。

字段8:             账户失效时间由1970-1-1开始计算,到期后无法使用,一般用于收费系统。

字段9:             保留字段。


1.2组配置文件

[root@vmoracle ~]# head -2 /etc/group
root:x:0:
bin:x:1:bin,daemon

/etc/group有4个字段,使用冒号分割。


bin:                                 组名称。

x:                                     组密码。

1:                                     组ID(GID)。

bin , daemon:               属于该组的用户,使用逗号分隔。

[root@vmoracle ~]# head -2 /etc/gshadow
root:::
bin:::bin,daemon

/etc/gshadow4个字段。


第一字段:用户组。

第二字段:用户组密码,空或者!代表没有密码。

第三字段:用户组的管理者。

第四字段:属于该组的用户,使用逗号分隔。


2.1添加用户修改/etc/passwd文件

要求:手动添加用户51cto  uid=1000,gid=1000(51),home目录为/home/51cto/。

在/etc/passwd尾部添加一行51cto用户的信息。

51cto:x:1000:1000:51cto-user:/home/51cto:/bin/bash


2.2添加用户修改/etc/group文件

在/etc/group尾部添加一行51cto用户组的信息。

51cto:x:1000:51cto


2.3添加用户修改/etc/shadow文件

使用openssl命令生成用户MD5密码:

[root@vmoracle ~]# openssl passwd -1 -salt ‘12345678‘   
#-1    指定加密算法为MD5。
#-salt 指定8位字符,相同密码而不同的-salt参数也会的到不同的加密字符串。
Password:                   #输入密码
$1$12345678$Rc8mmKN1Iv/J.McnSngGw.

计算今天和1970-1-1相隔天数:

[root@vmoracle ~]# date +%s
1420121883                #距离1970-1-1秒数。
[root@vmoracle ~]# bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty‘. 
1420121883/86400          #每天86400秒。
16436                     #得到日期。

在/etc/shadow尾部加入一行51cto用户的密码信息:

51cto:$1$12345678$Rc8mmKN1Iv/J.McnSngGw.:16436:0:99999:7:::


2.4创建51cto用户home目录:

[root@vmoracle ~]# cp -r /etc/skel/ /home/51cto
#复制/etc/skel/目录到51cto用户主目录下
[root@vmoracle ~]# chown -R 51cto.51cto /home/51cto/
#修改/home/51cto 目录用户和组为51cto             
[root@vmoracle ~]# chmod -R go= /home/51cto/
#修改/home/51cto 目录权限使得组和其他人没有访问权限。


2.5结果验证:

[root@vmoracle ~]# su - 51cto
[51cto@vmoracle ~]$ su - 51cto
Password: 
***********************************************************************
*************************Hello World!**********************************
***********************************************************************
[51cto@vmoracle ~]$

使用su(switch-user)能切换进刚才创建的用户说明成功配置没有问题。














本文出自 “Linux手动创建用户” 博客,请务必保留此出处http://xzb2015.blog.51cto.com/8796643/1598334

Linux下修改配置文件创建用户