1.? ??用户帐号类型
? ? ?普通用户? ? ? ? ?权限受到限制的用户
? ? ?超级管理员? ? ?拥有至高无上的权限
? ? ?程序用户? ? ? ? 不是给人使用的,给程序使用的。无法直接登录系统的用户
2.系统如何区别用户的身份:
? 使用的是uid号(User Id用户标识)
centos7
? ? ? ?超级管理员 默认是 0
? ? ? ?普通用户? 包括1000~60000
? ? ? ?程序用户 1~999
?centos6
? ? ? 超级管理员:uid=0
? ? ? 程序用户 1~499
? ? ? 普通用户 500~6000
3.用户组
? ? 建立账户,若没指定账户所属组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默? ? ? ? 认只容纳了一个用户。
? ? ?在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定
? ? ? ? 基本组:有且唯一
? ? ? ? 附加组:可有可无,可以有多个
? ? ? ? 默认新建用户时自动添加同名的组
? ?附加组:除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定
? ? 与 UID 类似,每一个组账号也有身份标记,root 组账号的 GID 号为固定值 0,而程序组账号的? ? ? GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。
? 用户是员工? 组是职位
? 员工可以兼职多个岗位
? 总有一个最重要的身份 主要组合附加组
? 主要组 必须要一个组 有且唯一
? 附加组 可有可无 有可以有多个
? 默认当你创建一个新用户时会自动创建一个和之同名的主组
? 用户的主要组(primary group):用户必须属于一个且只有一个主组,默认创建用户时会自动创建? ? 和用户名同名的组,做为用户的主要组,由于此组中只有一个用户,又称为私有组
? 用户的附加组(supplementary group): 一个用户可以属于零个或多个辅助组,附属组
4.用户账号管理
(1)/etc/passwd 存放用户信息
?
?分七段(每段用冒号隔开)
已第一行为例 从左到右
root? ? ? ? ? ? 用户名称
:x? ? ? ? ? ? ? ? 密码占位符 ??
:0? ? ? ? ? ? ? ? uid
:0? ? ? ? ? ? ? ? gid
:root? ? ? ? ? ? 备注信息,描述
:/root? ? ? ? ? ?家目录路径
:/bin/bash? ? 默认的shell环境
其中/sbin/nologin是一个特殊的Shell,它用于禁止用户登录到系统。
通常下类型用户会被设置为/sbin/nologin
系统用户被用于特定系统服务或运行,设置为/sbin/nologin可以防止它误操作和安全问题。
FTP用户:对于只提供FTP服务的用户,可以阻止他们通过SSH或其他方式登录到系统。限制权限,增强系统安全性。
匿名用户:匿名用户是指无需身份验证即可访问某些系统资源的用户,Shell设置为/sbin/nologin可以确保他们无法登录到系统,只能通过匿名方式访问指定资源
临时禁用用户:需要临时禁用某个用户,例如当用户被发现异常活动或需要进行其他安全审查时,将其Shell设置为/sbin/nologin可以立即禁止其登录
(2)?/etc/shadow? 存放保存密码
分九段
第1用户名
第2密码
第3最后一次修改密码时间
第4修改密码最小天数 0 不限制
第5?密码有效期?
第6:密码到期提醒?
第7:密码过期后的宽限天数 (密码过期后多少天禁用此用户)
第8:失效时间?
第9:保留字段,未使用
5.添加用户
useradd命令
useradd 【选项】 用户名
?? ? ?在/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:指定用户的登录
例如.创建用户ky26, 其ID号为1005;不建立家目录,不允许登录
useradd -u1005 -M -s??/sbin/nologin? ?ky266.
passwd命令
为用户账号设置密码
passwd [选项]... 用户名
基本用法 不加选项 可以添加密码
选项
? ? -d:清空指定用户的密码,仅使用用户名即可登录系统。
?? ? -l:锁定用户账户。
?? ? -S:查看用户账户的状态(是否被锁定)。
?? ? -u:解锁用
7.修改用户账号的属性
usermod命令
usermod ?[选项]... ?用户名
常见选项
-l ?更改用户账号的登录名称(Login Name)
-L 锁定用户账户
-u 修改用户的 UID 号
-U ?解锁锁用户账户
?-d:修改用户的宿主目录位置。
-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-g:修改用户的基本组名(或使用 GID 号)
?-G:修改用户的附加组名(或使用 GID 号)
-s:指定用户的登录 Shell
useradd? 是添加新用户并对新用户进行一些个性化设置
usermod 是对已有用户的属性进行更改,,选项和useradd基本一致
8.删除用户
userdel [选项] 用户
?-r ?将宿主目录一起删除
9.组管理
与用户帐号文件相类似 /etc/group:保存组帐号基本信息 /etc/gshadow:保存组帐号的密码信息基本不使用
groupadd命令
groupadd [-g GID] 组账号名
gpasswd 命令——添加、设置、删除组成员
?-a:向组内添加一个用户
?-d:从组内删除一个用户成员
?-M:定义组成员列表,以逗号分隔
9.文件/目录的权限和归属
?
?
二进制数字表示法
? ? ? ? ? ?rwx ? ?rwx ? ?rwx
二进制111 ? ?111 ? ?111
十进制 7 ? ? ? ? 7 ? ? ? ?7
? ? ? ? ? ? ? r=100(二进制)=4(十进制)
? ? ? ? ? ? ? w=010(二进制)=2(十进制)
? ? ? ? ? ? ? x=001(二进制)=1(十进制)
?
10.chmod(修改权限)
chmod 对谁(所有者,所属组,其他)操作(+ - =)权限 文件
谁:u,g,o,a
操作:+,-,=
权限:r,w,x(普通权限对root无效)
u? 属主
g? 属组
0? 其他人
a 所有人
+ 是加上 在原有的基础上加上权限
-? 在原有的基础上减去权限
= 赋予 原有权限不看? 就是等于后面的权限
chown
chown -R? ?修改属主 属组
-R? 递归? 所有多改
属主,属组多改
chown? ?属主:属组? 文件或文件夹
改属主
chown 用户名 文件
改属组
chown :组名 文件
11.umask
umask 的值可以用来保留在创建文件权限
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022
例如 umask 024,则以后建立的文件和目录的默认权限就为 642
? 123就是644