Brc's blog
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于

Brc

努力中
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于
  • Linux基础

    • Bash shell
    • 文件属性
    • 编辑工具vim
    • 用户管理
      • 用户基本概述
        • 什么是用户
        • 为什么需要用户
        • 用户有哪些分类
        • 查询用户ID信息
      • 用户相关配置文件
        • passwd文件
        • shadow文件
      • 用户相关命令
        • 添加用户useradd
        • 添加用户示例1
        • 添加用户示例2
        • 修改用户usermod
        • 修改用户示例1
        • 修改用户示例2
        • 删除用户userdel
        • 删除用户示例1
        • 删除用户示例2
      • 设定密码passwd
        • 交互设定密码
        • 非交互设定密码
    • 用户组管理
    • 普通用户提权
    • 基础权限
    • 特殊权限
    • 文件特殊属性
    • IO重定向
    • 文件查找
    • 文件压缩
    • 软件包管理

    • 磁盘管理

    • 进程管理
    • 计划任务
    • systemd
    • Supervisor
    • 网络管理

    • Chrony时间同步
    • NFS网络文件系统
  • Linux进阶

  • 其他

  • 运维
  • Linux基础
Brc
2021-07-04
目录

用户管理

# 用户基本概述

# 什么是用户

用户在这里指的是能够正常登录Linux或windows系统的账号

image-20210704145724378

# 为什么需要用户

  • 系统上的每一个进程(运行的程序),都需要一个特定的用户运行;
  • 通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障;

# 用户有哪些分类

  • 系统对用户有一个约定?(约定娶你,就真的会娶嘛?)

    用户UID 系统中约定的含义
    0 超级管理员,最高权限,有着极强的破坏能力
    1~200 系统用户,用来运行系统自带的进程,默认已创建
    201~999 系统用户,用来运行用户安装的程序,所以此类用户无需登录系统
    1000+ 普通用户,正常可以登陆系统的用户,权限比较小,能执行的任务有限

# 查询用户ID信息

  • 使用id命令查询当前登录用户的信息

    [root@web ~]# id		#查看当前所登陆的用户信息
    uid=0(root) gid=0(root) groups=0(root)
    [root@web ~]# id bi		#查看其它用户的信息
    uid=1000(bi) gid=1000(bi) groups=1000(bi)
    
    1
    2
    3
    4

# 用户相关配置文件

当我们创建一个新的用户,系统会将用户的信息存放在/etc/passwd中,而密码单独存储在/etc/shadow中也就是说这两个文件非常的重要,不要轻易删除与修改。

# passwd文件

  • /etc/passwd配置文件解释如下图,或者使用命令man 5 passwd获取帮助

    image-20210704150952528

# shadow文件

  • /etc/shadow配置文件解释如下图,或者使用命令man 5 shadow获取帮助

    image-20210704151134873

# 用户相关命令

# 添加用户useradd

若想要添加Linux系统普通用户,可以使用useradd命令,使用root账号登录Linux系统之后就可以添加系统普通用户了。

选项 功能描述
-u 指定要创建用户的UID,不允许冲突
-g 指定要创建用户基本组
-G 指定要创建用户附加组,逗号隔开可添加多个附加组
-d 指定要创建用户家目录
-s 指定要创建用户的bash shell
-c 指定要创建用户注释信息
-M 给创建的用户不创建家目录
-r 创建系统账户,默认无家目录

# 添加用户示例1

  • 创建birenchong用户

    • 用户ID为5001
    • 基本组为ops,附加组dev
    • 注释信息2000 new student,登陆shell:/bin/bash
    [root@web ~]# groupadd ops
    [root@web ~]# groupadd dev
    [root@web ~]# useradd -u 5001 -g ops -G dev -c "2000 student" -s /bin/bash birenchong
    
    1
    2
    3

# 添加用户示例2

  • 创建一个mysql的系统用户

    • 该用户不需要家目录。该用户不需要登陆系统
    [root@web ~]# useradd -r dba -M -s /sbin/nologin
    
    1

# 修改用户usermod

若想要修改Linux系统普通用户,可以使用usermod命令,使用root账号登录Linux系统之后就可以修改系统普通用户了。

选项 功能描述
-u 指定修改用户的UID
-g 指定要修改用户基本组
-G 指定要修改用户附加组,使用逗号隔开多个附加组,覆盖原有的附加组
-d 指定要修改用户家目录
-s 指定要修改用户的bash shell
-c 指定要修改用户注释信息
-l 指定要修改用户的登陆名
-L 指定要锁定的用户
-U 指定要解锁的用户

# 修改用户示例1

  • 修改birenchong用户

    • uid为5008
    • 基本组为network,附加组为ops,dev,sa
    • 注释信息为student,登陆名称为new_birenchong
    [root@web ~]# groupadd network
    [root@web ~]# usermod birenchong -u 5008 -c "student" -g network -aG sa -l new_birenchong
    
    1
    2

# 修改用户示例2

  • 修改new_birenchong用户

    • 为new_birenchong配置密码
    • 锁定该用户,然后测试远程连接登陆
    • 解锁该用户然后再次测试远程连接登陆
    #配置密码
    [root@web ~]# echo "123" | passwd --stdin new_birenchong
    
    #锁定用户
    [root@web ~]# usermod -L new_birenchong
    
    #解锁用户
    [root@web ~]# usermod -U new_birenchong
    
    1
    2
    3
    4
    5
    6
    7
    8

# 删除用户userdel

若想要删除Linux系统普通用户,可以使用userdel命令,使用root账号登录Linux系统之后就可以删除系统普通用户了

# 删除用户示例1

  • 删除new_birenchong用户

    • 连同家目录一起删除
    [root@web ~]# userdel -r new_birenchong
    
    1

# 删除用户示例2

  • 批量系统中此前创建过的所有无用的用户

    • 使用awk提取无用的用户名称
    • 使用sed拼接删除用户的命令
    • 调用userdel命令,连同家目录一起全部删除
    [root@web ~]# awk -F ':' '$3>1000{print $1}' /etc/passwd | sed -r 's#(.*)#userdel -r \1#g' | bash
    
    1

# 设定密码passwd

  • 创建用户后,如需要使用该用户进行远程登陆系统则需要为用户设定密码,设定密码使用passwd
    • 1.普通用户只允许变更自己的密码,无法修改其他人密码,并且密码长度必须8位字符
    • 2.管理员用户允许修改任何人的密码,无论密码长度多长或多短。

# 交互设定密码

  • 通过交互方式为用户设定密码

    [root@web ~]# passwd				#给当前用户修改密码
    [root@web ~]# passwd root			#给root用户修改密码
    [root@web ~]# passwd birenchong		#给birenchong用户修改密码,普通用户只能自己修改自己
    
    1
    2
    3

# 非交互设定密码

  • 非交互式设定简单密码

    [root@web ~]# echo "123" | passwd --stdin birenchong
    
    1
  • 非交互式设定随机密码

    # mkpasswd是随机生成密码的一个工具,如果没有这个命令,请先安装
    [root@web ~]# yum install -y expect
    
    # -l:指定密码长度(默认是7位数) -d:指定数字个数 -c:指定小写字母个数 -C:指定大写字母个数 -s:指定特殊字符个数
    [root@web ~]# echo $(mkpasswd -l 10 -d 2 -c 2 -C 2 -s 4) | tee pass.txt | passwd --stdin birenchong
    
    1
    2
    3
    4
    5
#Linux
Last Updated: 2021/11/05, 14:31:43
编辑工具vim
用户组管理

← 编辑工具vim 用户组管理→

最近更新
01
谷歌云创建GKE集群
07-26
02
ElastiCacheForRedis启用密码
07-26
03
upload-to-gcs
06-29
更多文章>
Theme by Vdoing | Copyright © 2021-2024 Brc | MIT License | 浙ICP备19031881号-4
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式