第三章 用户身份
一、用户身份与能力
1、UID分类
管理员UID为0:系统的管理员用户
系统用户UID为1-999:Linux系统为了避免因某个服务程序出现漏洞而被黑客提权至正太服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。
普通用户UID为1000后:是管理员创建的用于日常工作的用户。
2、id命令
(1)、查看当前用户信息
[centos@centos ~]$ id
uid=1000(centos) gid=1000(centos) 组=1000(centos),10(wheel) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
3、useradd命令
(1)、useradd命令中的参数及作用
| 参数 | 作用 |
|---|---|
| -d | 指定用户的家目录(默认为/home/username) |
| -e | 账户到期时间,格式为YY-MM-DD |
| -u | 指定该用户的默认UID |
| -g | 指定一个初始的用户基本组(必须已存在) |
| -G | 指定一个或多个扩展用户组 |
| -N | 不创建与用户同名的基本用户组 |
| -s | 指定该用户的默认Shell解释器 |
(2)、创建一个名称为linuxcool的用户并使用id命令确认信息
//创建用户
[root@centos ~]$ sudo useradd linuxcool
//确认信息
[root@centos ~]$ id linuxcool
uid=1001(linuxcool) gid=1001(linuxcool) 组=1001(linuxcool)
(3)、创建一个linuxdown普通用户并指定家目录的路径、用户的UID以及Shell解释器
/sbin/nologin:终端解释器中的一员,与Bash解释器有着天壤之别。一旦用户的解释器被设置为nologin,则代表该用户不能登录到系统中。
//创建用户
[root@centos ~]# useradd -d /home/linux -u 8888 -s /sbin/nologin linuxdown
//确认信息
[root@centos ~]# id linuxdown
uid=8888(linuxdown) gid=8888(linuxdown) 组=8888(linuxdown)
4、groupadd命令
group命令用于创建新的用户组。
语法格式:groupadd [参数] 群组名
(1)、创建一个用户组ronny
[root@centos ~]# groupadd ronny
5、usermod命令
usermod命令用于修改用户的属性,英文全称:“user modify”。
语法格式:usermod [参数] 用户名
(1)、usermod命令中的参数及作用
| 参数 | 作用 |
|---|---|
| -c | 填写用户账户的备注信息 |
| -d-m | 参数-m与参数-d连用,可重新指定用户的家目录并自动把旧的数据转移过去 |
| -e | 账户的到期时间,格式为YY-MM-DD |
| -g | 变更所属用户组 |
| -G | 变更扩展用户组 |
| -L | 锁定用户禁止其登录系统 |
| -U | 解锁用户,允许其登录系统 |
| -s | 变更默认终端 |
| -u | 修改用户的UID |
(2)、将centos加入到root用户组中
//变更组
[root@centos ~]# usermod -G root centos
//确认信息
[root@centos ~]# id centos
uid=1000(centos) gid=1000(centos) 组=1000(centos),0(root)
(3)、修改UID值
//修改UID值
[root@centos ~]# usermod -u 6666 linuxdown
//确认信息
[root@centos ~]# id linuxdown
uid=6666(linuxdown) gid=8888(linuxdown) 组=8888(linuxdown)
(4)、将用户的解释器终端由默认的/bin/bash修改为/sbin/nologin
//变更默认终端
[root@centos ~]# usermod -s /sbin/nologin linuxcool
//切换用户
[root@centos ~]# su linuxcool
此帐户目前不可用。
6、passwd命令
passwd命令用于修改用户的密码、过期时间等信息,英文全称:“password”。
语法格式:passwd [参数] 用户名
(1)、passwd命令中的参数及作用
| 参数 | 作用 |
|---|---|
| -l | 锁定用户,禁止登录 |
| -u | 解除锁定,允许登录 |
| –stdin | 允许通过标准输入修改用户密码,如 echo “NewPassWord” | passwd --stdin Username |
| -d | 使该用户可用空密码登录系统 |
| -e | 强制用户在下次登录时修改密码 |
| -S | 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 |
(2)、修改root密码
[root@centos ~]# passwd root
更改用户 root 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
(3)、锁定用户并查看状态
//锁定用户
[root@centos ~]# passwd -l linuxcool
锁定用户 linuxcool 的密码 。
passwd: 操作成功
//查看状态
[root@centos ~]# passwd -S linuxcool
linuxcool LK 2023-04-20 0 99999 7 -1 (密码已被锁定。)
(4)、解锁用户并查看状态
//解锁账户
[root@centos ~]# passwd -u linuxcool
解锁用户 linuxcool 的密码。
passwd: 操作成功
//查看状态
[root@centos ~]# passwd -S linuxcool
linuxcool PS 2023-04-20 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
7、userdel命令
userdel命令用于删除已有的用户账户,英文全称为:“user delete”。
语法格式:userdel [参数] 用户名
(1)、userdel命令中的参数以及作用
| 参数 | 作用 |
|---|---|
| -f | 强制删除用户 |
| -f | 同时删除用户及用户家目录 |
(2)、删除linuxdown用户
//删除用户
[root@centos ~]# userdel linuxdown
//查看是否存在
[root@centos ~]# id linuxdown
id: “linuxdown”:无此用户
(3)、强制删除linuxcool用户以及家目录
//删除用户
[root@centos home]# userdel -rf linuxcool
//查看家目录是否存在
[root@centos home]# ls
centos
本文详细介绍了Linux系统中管理用户和用户组的相关命令,包括useradd创建用户,groupadd创建用户组,usermod修改用户属性,passwd修改密码,以及userdel删除用户。还涉及到UID分类,用户权限和安全性的讨论。

2695

被折叠的 条评论
为什么被折叠?



