账号和权限管理
Linux用户权限及管理
1.管理用户账号
1.1用户账号概述
1.1.1用户账号的分类
超级用户: root用户是Linux操作系统中默认的超级用户账号,对本主机拥有最高的权限,系统中超级用户是唯一的。
普通用户: 由root用户或其他管理员用户创建,拥有的权限会受到限制,一般只在用户自己的宿主目录中拥有完整权限。
程序用户: 在安装Linux操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,仅用于维持系统或某个程序的正常运行,如bin、daemon、ftp、mail等。
1.1.2用户标识UID (User IDentity ,用户标识号)
root用户账号的UID固定值0
程序用户账号的UID默认为Centos5,6: 1~499,Centos7: 1~ 999
普通用户的UID默认为Centos5, 6: 500~ 65535,Centos7: 1000~ 65535
1.1.3用户账号文件
作用:保存用户名称、宿主自录、登录Sell等基本信息,每一行对应一个用户的帐号记录
文件位置:
/etc/passwd :保存用户名称、宿主目录、登录Sell等基本信息
/etc/shadow:保存用户的账号、密码等有效信息
/etc/passwd
以冒号为分割,每个字段的含义。
字段1:用户帐号的名称
字段2:用户密码占位符“x”
字段3:用户帐号的UID号
字段4:所属基本组帐号的GID号
字段5:用户全名
字段6:宿主目录
字段7:登录Shell信息( /bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁 用户登陆系统)
/etc/shadow
字段1:用户帐号的名称;
字段2:使用SHA512加密的密码字串信息,当为“*” 或“! !”时表示此用户不能登录到系统。,若该字段内容为空,则该用户无须密码即可登录系统;
字段3:上次修改密码的时间,表示从1970年01月01日算起到最近一次修改密码时间隔的天数;
字段4:密码的最短有效天数,自本次修改密码后,必须至少经过该天数才能再次修改密码。默认值为0,表示不进行限制;
字段5:密码的最长有效天数,自 本次修改密码后,经过该天数以后必须再次修改密码。默认值为99999, 表示不进行限制;
字段6:提前多少天警告用户密码将过期,默认值为7;
字段7:在密码过期之后多少天禁用此用户;
字段8:帐号失效时间,此字段指定了用户作废的天数(从1970年01月01日起计算),默认值为空,表示账号永久可用;
字段9:**保留字段(未使用),**没有特定用用途
2.添加用户
2.1useradd
基本格式
useradd 【选项】 用户名
添加用户:查看是否在 passwd和shadow文件中生成信息
-
在/etc/passwd 文件和/etc/shadow 文件的末尾增加该用户账号的记录
-
若未明确指定用户的宿主目录,则在/home 目录下自动创建与该用户账号同名的宿 主目录,并在该目录中建立用户的各种初始配置文件。
-
若没有明确指定用户所属的组,则自动创建与该用户账号同名的基本组账号,组账
-
-u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
-
-
-e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-
-g:指定用户的基本组名(或使用 GID 号)。
-
-G:指定用户的附加组名(或使用 GID 号)。
-
-M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
2.2密码管理
为用户账号设置密码
passwd [选项]... 用户名
选项 | 作用 |
-d | 清空指定用户密码 |
-l | 锁定用户账户 |
-S | 查看用户账户状态 |
-u | 解锁用户账户 |
2.3usermod
usermod [选项]... 用户名
常见选项
-
-l 更改用户账号的登录名称(Login Name)
-
-L 锁定用户账户
-
-u 修改用户的 UID 号
-
-U 解锁锁用户账户
-
-d:修改用户的宿主目录位置。
-
-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-
-g:修改用户的基本组名(或使用 GID 号)
-
-G:修改用户的附加组名(或使用 GID 号)
2.5添加组
- -a:向组内添加一个用户
-
-d:从组内删除一个用户成员
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程