五.Linux系统中的用户管理

一.用户及用户组存在的意义 

(一)用户存在的意义
系统资源是有限的,如何合理分配系统资源?在这个问题解决时必须要有连个资源配合
1.身份  account
2.授权    author
3.认证    auth

3A机制,3A机制组成系统中最底层的安全架构

(二)用户组存在意义
用户组是一个逻辑容器,对用户进行归类和统一授权

二.用户及用户组在系统中的存在方式 

电脑对数字敏感            id
人类对字符串敏感    名称

id   <-------> 名称 必须要记录到文件当中用户才能存在,用户就是/etc/passwd文件中的一行字符,用户组存在的方式就是/etc/group 文件中的一行字符

三.用户切换 

(一)用户查看
whoami        查看当前用户
id        查看用户id信息

???
    -u    查看用户的用户id
    -g    查看用户主组id
    -G    查看用户所有的组的id
    -n    显示名称

(二)用户切换
su - username

-        切换用户环境 (注意)

不加-,用户环境混乱,权限问题出现


username    如果root ----> commonuser    不需要后者密码
        commonuser ----> root        需要密码
        commonuser ----> commonuser    需要密码
        
注意:在做用户切换时当使用完毕用户身份及时退出,不要在一个shell中反复执行su命令,在一个shell中反复执行su命令会导致环境错乱.

四.用户涉及到的系统配置文件

(一)./etc/passwd        用户身份信息文件
root:       x:    0:   0:      root:     /root:       /bin/bash
用户名 密码 uid gid 用户说明 家目录  默认开启的shell

注:用户id: (2*16 0-65535)  (0:root 1-999:systemuser 1000-65535:commonuser)

                     

(二)./etc/group        组身份信息文件
组名称:组密码:组id:组的附加成员 

root:     x:         0:
组名 组密码 组id 组的附加成员
(三)./etc/skel/.*        用户环境配置文件模板

 

             

  隐藏文件 .bash_logout(退出设置)   .bash_profile(环境变量全局的)  .bashrc(脚本)
(四)./etc/shadow        用户认证信息文件

用户名:密码锁定:最后一次修改密码(从1970.7.1算起):密码最小使用期限:密码最大: 距离使用期限几天警告:密码过期后还有几天可以修改密码:账号的使用期限:保留 

(五)./home/username        用户家目录

修改底层文件,用户的建立

1.vim /etc/passwd

2.vim /etc/group

3.建立新用户下的家目录

4.生成密码

gnome-session-quit --force 快速退出到登录界面

直接用户删除:家目录;用户邮箱;用户身份信息文件;组身份信息文件;用户认证信息文件

五.用户和用户组建立及删除

监控用户建立的命令

两个命令可以用分号隔开


watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo =======;ls -l /home"

(一).useradd         username    用户建立
    -u id    username    uid        (2**16=0-65535)
                0         表示超级用户
                 1-200        系统预留id
                201-999    系统用户
                1000-60000    用户级用户
                /etc/login.defs    记录用户建立的默认方式

    -g id    username    主组id
    -G id    username    附加组id
    -d dir    username    指定用户家目录
    -c word    username    指定用户说明
     -s shell username    指定用shell

    -M   username        创建时不创建家目录

(二).userdel -r    username    用户删除         -r 删除用户的系统配置文件 

(三).groupadd    groupname    组建立
    -g id    groupname    指定组名称
(四).groupdel    groupname    组删除

六.用户和用户组的信息管理

(一).usermod    
    -l        更改用户名称
    -u        更改用户id  ( 需要一个新的id)
    -g        更改主组id
    -G        更改用户附加组身份
    -aG        添加用户附加组身份
    -c        更改用户说明
    -d        更改家目录指向(只是更改了/etc/passwd 的文件内容)


    -md        更改家目录指向同时更改家目录名称


    -s        更改默认shell   

             (-s /sbin/nologin 用户不能登录,只运行应用,不让其登入系统)

             
    -L        冻结账号

密码锁定(密码前多了!)
    -U        解锁

echo westos | passwd --stdin test 非交互式给用户设密码   (将密码westos传递给passwd标准输出给用户test)

(二).groupmod -g    更改用户组id (需要一个新的组id)

 七.用户认证信息管理 

(一).用户名称
passwd -S lee        查看密码状态

(二).用户加密字符
1.更改密码
passwd lee        只有root可以执行 “echo 123 | passwd --stdin lee” (将密码123传递给passwd标准输出给用户lee)

passwd            普通用户改密码
Changing password for user lee.
Current password:     输入原始密码
New password:         输入新密码(8位以上无序数字+无序字母组合)
Retype new password:     重复输入
passwd: all authentication tokens updated successfully.

2.冻结认证
passwd -l lee        冻结账号认证 (密码锁定,密码前多了两个!)
usermod -L lee

2.passwd -u lee        解锁账号认证
usermod    -U lee

3.passwd -d lee    密码删除 (用户登录无需密码)

4.passwd -e     lee        修改默认使用时间为0             (密码最后一次修改天数,从1970-1-1算其到今天的时间)
chage -d  0     lee        账号必须改密码才能登陆系统

5.密码最短有效期
passwd -n 1 lee            lee在1天内不能改密码
chage -m 1  lee        

6.密码最长有效期
passwd -x 40 lee        40天内lee用户必须更新密码否则会被冻结
chage -M 30  lee

7.密码过期警告
passwd -w 2 lee            账号过期前警告时间
chage -W 1 lee

8.认证非活跃天数
passwd -i 2 lee            账号认证最大时间超过后还能用多久
chage -I 1  lee

(chage修改后无提示)

9.账号认证到期时间

chage -E "2020-05-11"    lee     到2020-5-11这天账号会被冻结

10.未启用功能

八.用户权力下放 


在系统中普通用户时无法执行系统管理命令的,如果需要普通用户执行系统管理动作,那么需要
root用户来进行授权。

普通用户授权方式 “sudo”(相当于切换用户)
作用:可以使普通用户使用指定的用户身份呢运行命令

(一)授权方法:
visudo             (此命令作用是编辑/etc/sudoers并提供语法检测,即改即生效)

在文件的100行左右     代码规范性

username    hostname=(newusername)        [NOPASSWD:] /command, /command1

用户    在哪台主机=(用超级用户身份)    执行命令

Linux   在localhost.localdomain    使用超户   免密        执行useradd 和 userdel

注意:(不用的用户及时删掉或禁止登录)

(二)测试:
su - lee

sudo   useradd  westostest        在lee第一次使用sudo命令时需要输入lee密码

exit    退出lee

su - westos

sudo userdel -r westostest        westos可以免密执行userdel 命令

九.练习

1.

2.(1)

(2)

(3)

(4)useradd westosadmin

也可以

3.(1)

(2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值