一、用户配置文件
用户管理简介:
linux把通过把用户分为三个基本组,user,group,other来分配基本的权限
用户通过/etc/passwd用过用户名来获取用户的uid,通过/etc/group来获取用户所属组的gid,系统只能通过id号来识别哦那过户。所以,越是对服务器安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范。在linux中主要是通过用户配置文件来查看和修改用户的信息。
1、用户信息文件 /etc/passwd
配置文件信息如下:vim /etc/passwd
第一字段:用户名称
第二字段:密码标志
第三字段: UID
0 : 代表超级用户
1-499:代表系统用户(伪用户)【默认很多 不能删除给os中启动服务不能登陆不能操作】
500——65535+:代表自定义的普通用户
第四字段:GID用户初始组【只有一个,创建用户时自动建立,不推荐改】和附加组【同时属于其他组,像是大学的社团】
第五字段:用户说明
第六字段:家目录【普通用户 home/用户名【二级目录】 超级用户:/root/【一级目录】】
第七字段:登陆之后的shell:linux的命令解释器标准:bin/bash sbin/nologin
注意:Root不一定是管理员 uid=0的一定是管理员
2、影子文件 /etc/shadow
配置文件信息如下:vim /etc/shadow
第一字段:用户名
第二字段:加密密文【密码相同,密文也不相同】 sha521加密 ** !!没密码
第三字段:密码的最后一次修改日期 【时间戳表示 1970.1.1后的一天为一戳】
第四字段:两次密码修改间隔的时间
第五字段:密码的有效期273年
第六字段:到期之前的提醒天数
第七字段:到期后的宽限时间
第八字段:账号失效时间【不管它之前的有效期限 时间戳转换 date –d “1970-01-01 17000days”】
第九字段:保留字
3、组信息文件 /etc/group和组密码文件 /etc/gshadow
配置文件信息如下:vim /etc/group
第一字段:组名
第二字段:组密码标志
第三字段:GID
第四字段:组中附加用户
4、用户家目录:/home/用户名
普通用户:/home/用户名/,所有者和所属组都是此用户,权限时700;
超级用户:/root/,所有者和所属组都是root用户,权限时550;
5、用户邮箱:/var/spool/mail/用户名
用户模板目录:ls -a;
用户的隐藏文件:用户创建时自动建立,/etc/lkel;
注意:在Linux中,写入配置文件时才能永久生效,执行命令行的形式可能重启后失效。
二、用户管理相关文件和用户管理命令
用户添加命令:useradd
useradd [选项] 用户名
-u UID :手工指定用户的UID;
-d 家目录:手工指定用户的家目录;
-c 用户说明:手工指定用户的用户说明;
-g 组名:手工指定用户的初始组;
-G 组名:指定用户的附加组;
-s shell:手工指定用户登陆的shell,默认是/bin/bash;
添加完用户查看用户信息:
useradd sc
grep sc /etc/passwd
grep sc /etc/shadow
grep sc /etc/group
grep sc /etc/gshadow
ll -d /home/lamp
ll /var/spool/mail/lamp
修改用户密码:passwd
修改用户信息:usermod
修改用户密码状态:chage
删除用户:userdel
用户切换命令:su
用户默认值文件:
/etc/default/useradd
GROUP=100 用户默认组
HOME=/home 家用户目录
INACTIVE=-1 密码过期宽限天数,shadow文件7字段
EXPIRE= 密码失效时间,shadow文件8字段
SHELL=/bin/bash 默认shell
SKEL=/etc/skel 模板目录
CREATE_MALL_SPOOL=yes 是否建立邮箱
/etc/login.defs
PASS_MAX_DAYS 9999 密码有效期天数(5)
PASS_MIN_DAYS 0 密码修改间隔(4)
PASS_MIN_LEN 5 密码最小位数
PASS_WARN_AGE 7 密码到期警告
UID_MIN 500 最小和最大UID范围值
GID_MAX 60000
ENCRYPT METHOD SHA521 密码的加密模式
修改用户密码状态chage
chage 【选项】 用户名
选项:
-l :列出用户的详细密码状态
-d 日期:修改密码最后一次的更改日期 shadow3字段
-m 天数:两次密码修改间隔(4字段)
-M天数:密码有效期(5字段)
-W天数:密码过期前警告天数(6字段)
-I(i天数):密码过后宽限天数(7字段)
-E(日期):账号失效时间(8字段)
chage -d 0 lamp
注释:这个命令其实是把密码修改日期归0了(shadow第三字段)
:这样用户一登陆就要修改密码
手工删除用户:
vi /etc/passwd
vi /etc/shadow
vi /etc/group
vi /etc/gshsdow
rm -rf /var/spool/mail/lamp
rm -rf /home/lamp
切换用户身份:su
su 【选项】 用户名
选项:
-:选项只使用“-”代表连接用户环境变量一起切换
-c:仅执行一次命令,而不切换用户身份
Env:查看用户的环境变量名【用户当前所操作的环境】
su - root ;切换为root用户
su - root -c "useradd user3" ;不切换成root,但是执行useradd命令添加user3用户
四、用户组管理相关命令
添加用户组:
groupadd 【选项】 组名
-g GID 指定组ID
修改用户组:
groupmod 【选项】组名
-g GID 修改组ID
-n 新组名: 修改组名
groupmod -n testgrp group1 ;把组名group修改为testgrp
删除用户组:
groupdel 组名
要想删除组,不允许有初始用户存在,如果存在,则不能删除。