目录
1用户账号和组账号概述
1.1用户帐号类型
Linux中每个用户是通过 User Id (UID)来唯一标识的 新建用户 1-60000 自动分配 0-65535 端口号
管理员:root, 0
程序用户:1-499 (CentOS 6以前), 1-999 (CentOS 7以后) 不登录的用户 系统默认的情况
对守护进程获取资源进行权限分配
普通用户:500+ (CentOS6以前), 1000+(CentOS7以后) 不指定 顺序
给用户进行交互式登录使用
-
超级用户
-
普通用户
-
程序用户
1.1.1 超级用户 0 超级
超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机拥有至高 无上的权限,类似于 Windows 操作系统中的 Administrator 用户。只有当进行系统 管理、维护任务时,才建议使用 root 用户登录系统,日常事务处理建议只使用普通用户账号。日常工作一般不会使用root账号,小公司除外,小公司运维可能就你一个人你说了算。
1.1.2 普通用户 受到系统某一类限制
普通用户:账号需要由 root 用户或其他管理员用户创建,拥有的权限受 到一定限制,处理问题受到限制,一般只在用户自己的宿主目录中拥有完整权限。
1.1.3程序用户
程序用户:在安装 Linux 操作系统及部分应用程序时,会添加一些特定的低权限用 户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运 行,如 bin、daemon、ftp、mail 等。
1.2 组帐号
1.2.1 基本组(私有组)
-
建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。
-
在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定
基本组:有且唯一
附加组:可有可无,可以有多个
1.2.2 附加组(公共组)
附加组:除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定
、
1.3 ID
1.3.1 UID
UID(User IDentity,用户标识号):Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为 UID(UserIDentity,用户标识号),对于操作系统核心来说,UID 是区分用户的基本依据,原则上每个用户的 UID 号应该是唯一的。root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。
centos7登录用户是从1000起到60000
centos6 500~60000
1-999 预留给系统,叫系统用户,某个程序比如数据库
给人使用的账户是从1000开始
1.3.2 GID
GID(Group IDentify,组标识号):与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID(Group IDentity,组标识号)。root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。
1.4 用户账号管理
1.14.1文件位置:
-
/etc/passwd
存放保存用户名称、宿主目录、登录 Shell 等基本信息
-
/etc/shadow 存放保存密码
-
第一字段:用户名:root
第二字段:密码: $6$HzYRIWo05k6aVw2p$aLg7wfHGwoghmuUrIYced 当为*或!!时表示用户不能登录到此系统,若该字段为空,则表示无需密码即可登录
第三字段:上次修改密码时间,最后一次修改密码的时间
第四字段:最小修改密码间隔时间, 今天 下一次间隔天数,才能修改,频繁修改, 也就是说,该字段规定了从第 3 字段(最后一次修改密码的日期)起,多长时间之内不能修改密码。如果是 0,则密码可以随时修改;如果是 10,则代表密码修改后 10 天之内不能再次修改密码。此字段是为了针对某些人频繁更改账户密码而设计的安全性考虑
第五字段:密码有效期 经常变更密码是个好习惯,为了强制要求用户变更密码,这个字段可以指定距离第 3 字段(最后一次更改密码)多长时间内需要再次变更密码,否则该账户密码进行过期阶段。该字段的默认值为 99999,也就是 273 年,可认为是永久生效。如果改为 90,则表示密码被修改 90 天之后必须再次修改,否则该用户即将过期。管理服务器时,通过这个字段强制用户定期修改密码。
第六字段:密码到期提醒(提示密码即将过期时间) 7 密码将要过期的前7天会提醒你 与第 5 字段相比较,当账户密码有效期快到时,系统会发出警告信息给此账户,提醒用户 "再过 n 天你的密码就要过期了,请尽快重新设置你的密码 该字段的默认值是 7,也就是说,距离密码有效期的第 7 天开始,每次登录系统都会向该账户发出 "修改密码" 的警告信息。
第七字段:密码过期后的宽限天数 (密码过期后多少天禁用此用户) 90 这个 也称为“口令失效日”,简单理解就是,在密码过期后,用户如果还是没有修改密码,则在此字段规定的宽限天数内,用户还是可以登录系统的;如果过了宽限天数,系统将不再让此账户登陆,也不会提示账户过期,是完全禁用。比如说,此字段规定的宽限天数是 10,则代表密码过期 10 天后失效;如果是 0,则代表密码过期后立即失效;如果是 -1,则代表密码永远不会失效。
第八字段:账号失效时间 同第 3 个字段一样,使用自 1970 年 1 月 1 日以来的总天数作为账户的失效时间。该字段表示,账号在此字段规定的时间之外,不论你的密码是否过期,都将无法使用!该字段通常被使用在具有收费服务的系统中。账号无法登录生命值
第九字段:保留字段收费内容
1.4.2添加用户
基本格式
useradd 【选项】 用户名
添加用户:查看是否在 passwd和shadow文件中生成信息
-
在/etc/passwd 文件和/etc/shadow 文件的末尾增加该用户账号的记录
-
若未明确指定用户的宿主目录,则在/home 目录下自动创建与该用户账号同名的宿 主目录,并在该目录中建立用户的各种初始配置文件。
-
若没有明确指定用户所属的组,则自动创建与该用户账号同名的基本组账号,组账 号的记录信息将保存到/etc/group 和/etc/shadow 文件中。
-
选项
-
-u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
-
-d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。
-
-e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-
-g:指定用户的基本组名(或使用 GID 号)。
-
-G:指定用户的附加组名(或使用 GID 号)。
-
-M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
-
-s:指定用户的登录 Shell /sbin/nologin
1.4.3 密码管理
passwd命令
为用户账号设置密码
passwd [选项]... 用户名
基本用法 不加选项 可以添加密码
选项
-
-d:清空指定用户的密码,仅使用用户名即可登录系统。
-
-l:锁定用户账户。
-
-S:查看用户账户的状态(是否被锁定)。
-
-u:解锁用户账户。
1.4.4修改用户账号的属性
usermod命令
usermod [选项]... 用户名
常见选项
-
-l 更改用户账号的登录名称(Login Name)
-
-L 锁定用户账户
-
-u 修改用户的 UID 号
-
-U 解锁锁用户账户
-
-d:修改用户的宿主目录位置。
-
-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-
-g:修改用户的基本组名(或使用 GID 号)
-
-G:修改用户的附加组名(或使用 GID 号)
-
-s:指定用户的登录 Shell
1.4.5 删除用户
userdel [选项] 用户
-
-r 将宿主目录一起删除
-