用户相关的其他拓展知识
用户的创建流程
uesradd创建用户时和两个文件息息相关
/etc/login.defs(用gerp'^'[a-Z]/etc/login.defs 筛选出来文件中不带#号和空行的内容,只显示其他的内容)分为17行
MAIL_DIR /var/spool/mail
创建用户时,用户的相关邮件所在路径
PASS_MAX_DAYS 99999
控制用户最长使用密码的时间
PASS_MIN_DAYS 0
控制用户最短使用密码时间
PASS_MIN_LEN 5
普通用户密码最小长度
PASS_WARN_AGE 7
控制先创建用户,警告密码过期前N天提示修改密码
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
GREATE_HOME yes
创建用户的家目录(默认yes)
UMASK 077
umask=077 ,规定创建用户后,用户的家目录权限
USERGROUPS_ENAB yes
创建用户的同时创建组
ENCRYPT_METHOD SHA512
加密方式(随机加密)
/etc/default/useradd(除了#开头和空行,总共分7行)
GROUP=100
被/etc/login.defs的USEGROUPS_ENAB控制,如果是no,则执行这一条
HOME=/home
默认指定普通用户的家目录,但是可以修改
INACTIVE=-1
账号过期后不会停止使用,-1代表不启用
EXPIRE=
账号过期时间,默认是不会过期
SHELL=/bin/bash
创建用户时默认的shell
SKEL=/etc/skel
普通用户的环境变量文件存放的位置、
CREATE_MAIL__SPOOL=yes
创建用户时,是否同时创建邮件文件(默认同时创建)
企业案例扩展
当用户的命令提示符变为这样时:-bash-4.1#
解决办法
-bash-4.1# cp /etc/skel/.bash*.
拷贝所有该用户环境变量配置文件到该用户家目录下
再次登录即可
用户的密码管理
设置密码命令: passwd
语法:passwd 选项 用户名
交互;命令行提示我们需要输入内容,人机之间的交流
设置用户密码时的免交互选项:--stdin
useradd wk03 && echo 123456|passwd --stdin wk03
创建用户并设置密码
useradd用户名 -p 密码
生成随机数密码
echo $RANDOM
确定随机密码:root@localhost[09:33:02]:
~$ echo $RABDOM|md5sum|cut -c 1-10
68b329da98
生成随机密码之后,通过管道符交给tee命令将密码保存到指定文件中,然后再给用户设置随机密码 : root@localhost[10:32:56]:~
$ echo $(echo $RANDOM|md5sum|cut -c 5-14)|tee /oldboy/pass.txt|passwd --stdin wk03
查看随机密码: root@localhost[10:33:09]:~
$ cat /oldboy/pass.txt
a233552720
tee命令:让管道中的数据分流
mkpasswd
选项
-I : 指定密码位数
-d : 指定密码中包含几个数字
-c : 指定密码中包含几个小写字母
-C : 指定密码中包含几个大写字母
-s : 指定密码中包含几个特殊符号
用户组的基本管理
/etc/group
root :x :0:
第一列 :组名
第二列 :组密码占位符
第三列:组GID
第四列 :仅显示附加成员,基本成员不显示
/etc/gshadow
root :::
第一列: 组名
第二例: 组密码
第三列: 组管理员
第四列 :仅显示附加成员,基本成员不显示
组相关命令
增
groupadd
语法:groupadd 【option】 组名
选项 : -g 指定gid
删
groupdel
语法 :groupdel 组名
改
groupmod
语法 : groupmod [option} 组名
选项: -g 修改组的gid
查
cat /etc/group
id +用户名
用户切换身份命令
su -用户名
含义:可以切换到这个用户的家目录下
特点:su 切换用户,使用普通用户登录,然后使用su命令切换到root
优点:简单 方便
缺点:需要知道root密码,不安全,切换到root 没有日志审计功能
sudo
含义 :提权,将普通用户的身份提权成root,执行超级管理员可以执行的命令
特点:sudo 提权,当需要使用root权限时,进行提权,而无需切换至root用户
优点:安全 方便
缺点;复杂