您的位置:首页 > 运维架构 > Linux

Linux下用户的管理useradd、usermod、passwd 和权力的下放visudo

2019-03-28 10:51 441 查看

######用户管理######

####用户的查看####

1)查看当前用户

whoami         ##查看当前用户

2)系统中用户的查看

id             ##查看指定用户id信息

id

-u   ##查看用户的uid

-g   ##查看用户的gid

-G   ##查看用户所在的所有组的id

-n   ##显示名字而不显示id数字

####用户切换 ####

gome-session-quit   --force     ##注销当前用户再登陆其他用户

su- 用户名称

su- 中 “-” 标示在用户身份切换时同时切换当前用户的环境

su- 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要

注意:
每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

####用户在系统中的存储方式####

/etc/passwd    用户信息文件

用户名称:密码:uid:gid:说明:家目录:默认shell

##说明:默认shell的指定有那些可以查看系统中/etc/shells文件"

/etc/group    用户组信息文件

组的名字:组密码:组id:组成员

/etc/shadows    认证信息文件

/etc/skel/.*    默认开启shell的配置,用户的骨文件

/home/username  用户的家目录

####用户管理命令 ####

1)用户的删除

userdel

userdel student       ##删除用户但不删除用户的配置文件

userdel-r student     ##删除用户并删除用户的配置文件

2)用户建立

用户信息监控命令

watch -n 1 "tail -n 3 /etc/passwd /etc/group;ls -l /home"

useradd ##建立用户的,建立用户时,读取/etc/login.defs 文件内容确定规则

useradd -u 8888 westos ##指定用户uid

useradd -g 21 westos ##指定用户初始组id,“21用户组必须是存在的”

useradd -G 21 westos ##指定用户的附加组id “21用户组必须存在”

useradd -c “hello” westos ##指定用户的说明

useradd -d /home/lee westos ##指定用户的家目录

useradd -s /bin/sh westos ##指定用户的默认shell

groupadd ##建立用户组

groupadd -g 888 westos ##建立用户组并指定用户组的id

groupdel ##删除用户组

groupdel user

3)更改用户信息

usermod

usermod -l 新名称 westos ##更改用户的名称

usermod -u 6666 westos ##更改用户uid

usermod -g 21 westos ##更改用户的初始组

usermod -G 21 westos ##更改用户的附加组

usermod -aG 72 westos ##添加用户的附加组

usermod -G “” westos ##删除用户所有附加组的身份

usermod -c “hahahah” westos ##指定用户说明文字

usermod -d /home/lee westos ##更改用户家目录的指向

usermod -md /home/lee westos ##更改用户家目录

usermod -s /bin/sh westos ##更改用户的shell

usermod -L westos ##冻结用户

usermod -U westos ##解锁用户

####用户认证信息####

/etc/shadow ##记录用户认证信息

westos:!!:17895:0:99999: 7: : :

[1] [2] [3][4] [5] [6] [7] [8] [9]

此文件一共有九列:

[1]

westos 用户名称:

[2]

!! 用户密码:

用户的加密字符串,默认用的加密方式为sha512对称加密,

如果加密字符串前出现"!"那么用户被冻结

[3]

17895
用户密码最后一次被更改的时间:此时间计算是从1970-1-1开始计算的累计天数

[4]

0 用户密码最短有效期:

如果此位有设定数字,那么在此数字范围内的天数内是不能修改用户密码的

[5]

99999 用户密码最长有效期:

用户必须在此有效期内更新密码,如果超时会被冻结

[6]

7 密码警告期限:

在过期前制定天数内会发送警告信息给用户

[7]

用户非活跃天数:

此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数

[8]

用户到期日:

默认为空,表示帐号一定会被冻结的时间点

[9]

用户自定义列,目前没有启用

####密码信息

passwd -S westos
##查看westos用户密码信息

#用户名称#

#用户密码#

passwd       westos    ##更改westos密码

passwd  -l   westos    ##在用户密码前加入“!!”,即锁定用户

passwd  -u   westos    ##解锁用户

usermod  -L  westos    ##在用户密码前加入“!”

usermod  -U  westos    ##在密码不为空时使用

passwd   -d  westos    ##清空westos密码

passwd  -fu   westos   ##强制执行解锁

注意:

普通用户改密码时

1.必须知道当前用户原始密码

2.密码不能和帐号名称相似

3.密码不能是纯数字或纯字母

4.密码不能是有序的字母和数字的组合

#用户密码最后一次被更改的时间#

passwd  -e westos     ##会改变用户最后一次更改密码时间为0.

用户在登陆时会被强制更改密码

chage   -d 0 westos   ##两个命令功能类似

#用户密码最短有效期#

passwd  -n 1 westos     ##westos用户在1天之内不能修改密码

chage   -m 1 westos

#用户密码最长有效期#

passwd  -x 30 westos    ##设定westos在30天内必须改密码

chage    -M 40      westos

#密码警告期限#

passwd   -w 2  westos    ##密码过期前两天有警告输出

chage    -W 2 westos

#用户非活跃天数#

passwd   -i 1    westos    ##密码过期后仍可登陆系统的天数

chage    -I 1   westos

#用户到期日#

chage   -E 2018-11-11 westos       ##westos用户在2018-11-11日会被冻结




#####用户授权####

1.权力下放文件为 /etc/sudoers

此文件可以用vim直接编辑,但是不提供语法检测

也可以使用visudo编辑此文件,visudo命令是提供语法检测的

2.下放方式

  • visudo

100行左右

用户 主机名称=(得到的用户身份) 命令

tom localhost=(root) /usr/sbin/useradd ##tom用户可以在localhost主机以
##root用户身份执行useradd命令

tom localhost=(root) NOPASSWD: /usr/sbin/useradd
##tom用户可以在localhost主机以 root用户身份免密执行useradd

3.测试

su - tom
sudo useradd hello


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐