用户权限管理
用户与用户组
用户与角色分类
用户是根据角色定义的。可分三类用户角色,root用户,普通用户,虚拟用户
虚拟用户实际不存在,只是为了方便管理,满足进程或文件的属主需求
用户和组配置文件
/etc/passwd
对所有用户可读,每行含义如下
用户名:口令:用户标识:组表示:注释:主目录:默认shell
口令 其中口令是加密的口令,而且不是明文,比如用x *代替,这种是shadow技术,真正加密的用户口令在/etc/shadow中
用户标识 即uid,uid范围在0-65535,0是root用户的uid,1-99系统保留作为管理账号,普通用户uid从100开始。在linux系统中,普通用户uid默认从500开始。当给普通用户的uid设为0后,就具有了root用户的权限,存在风险
/etc/shadow
这个文件存放/etc/passwd的加密密码,只有root用户有读权限,文件格式
用户名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留字段
加密口令 若加密口令是* ! x等字符,则用户不能登录系统
最后一次修改时间 当前到最近一次用户改密码的间隔天数,可用passwd改用户密码,查看此字段变化
最小时间间隔 两次改密码时间最小间隔
最大时间间隔 最大改密码时间间隔
警告时间 系统开始警告用户到密码正是失效的间隔天数
不活动时间 表示用户口令过期多少天后,系统会自动禁用此用户,用户无法登录系统
失效时间 表示用户生存期 超过该字段账号失效 若该字段为空 则用户永久可用
/etc/group
存放用户组信息,文件格式如下
组名:口令:组标识:组内用户列表
口令 也是加密非明文,存在了/etc/gshadow中
组标识 即GID
组内用户列表 以逗号间隔
/etc/login.defs
该文件用来定义创一个用户时的默认配置,看几个常见的配置
MAIL_DIR /var/xxx/mail # 创用户时,在该目录创一个用户mail目录
PASS_MAX_DAYS 999 # 密码持续保持有效最大天数
PASS_MIN_DAYS 5 # 同上,最小天数
PASS_MIN_LEN # 密码最小长度
PASS_WARN_AGE # 口令到期前多少天通知用户密码快到期了
UID_MIN 500 创用户时最小的UID,从该uid开始
UID_MAX GID_MIN GID_MAX
CREATE_HOME yes/no # 创用户时是否创用户主目录
/etc/default/useradd
定义了创建用户后一些默认属性,比如用户主目录,适用的shell等
GROUP=123 # 用户默认的GID
HOME=/home # 用户主目录默认创建位置
INACTIVE=-1 # 是否启用用户过期是否禁用,-1表示不用此配置
EXPIRE= # 账号过期日期,不设置表示不启用
SHELL=/bin/bash # 指定新建用户的shell类型
SKEL=/etc/skel # 指定用户主目录默认文件来源,即新用户主目录下文件都是从这里复制来的
改此文件除了文本编辑器 还可以用useradd命令的-D选项改
添加 切换 删除用户组命令
groupadd
groupadd -g GID -o(表示新用户组GID可以与已存在组的GID相同)
newgrp
可以切换用户的属组。创用户时可先指定用户可以所属的组有哪些,再用这个命令根据需要切换属组
groupdel
增删改查用户命令
useradd
创建用户过程 创用户时,先读取login.defs 和/etc/default/useradd根据这两个配置添加用户,然后向/etc/passwd 和/etc/group添加用户和用户组记录,其中的加密文件也会自动生成,然后按/etc/default/useradd配置创建用户主目录,最后复制/etc/skel所有文件到用户主目录
usermod
注意 改用户组可以usermod也可以newgrp
userdel
文件权限
常见文件类型有 -(普通文件) d(目录) c(字符设备文件) b(块设备文件) s(套接字文件) p(管道文件) l(符号链接文件)
ll命令每行如下:
drwxrwxrwx 3 root root 4096 Jun 19 testfile
3是该文件的硬连接数量
4096是文件大小,单位默认是bytes
testfile 以.开头的文件是隐藏文件,只能ls -a才能显示
chmod
主要有两种格式
chmod who +|-|= mode filename 比如chmod u=rwx,g+w,o+w testfile
chmod 755 testfile
磁盘存储管理
/dev下有大量设备文件,可分为字符设备(c)和块设备(b)。字符设备的存取是以字符流方式进行的,依次传一个字符,比如打印机,终端等;块设备是以数据块方式存取的,常见设备是磁盘。通过块设备读取时,先从内存中读写,而不是直接传到物理盘
磁盘设备的表示法
常见磁盘类型有IDE,STAT,SCSI。表示法主要有两种
1 主设备号+次设备号+磁盘分区号
对于IDE磁盘 hda1 hdb2
对于SCSI磁盘 sda1 sdb2
对于终端设备 tty1 tty2 ttyS5
2 主设备号+[0-n],y
对于IDE (hd[0-n], y)
对于SCSI (sd[0-n], y)
UEFI BIOS MBR GPT
UEFI 统一可扩展固件接口,定义了一种在操作系统和平台固件之间的接口标准,用于操作系统自动从预启动的启动系统环境加载到一种操作系统上,时开机化繁为简。UEFI准确说是一种规范,不同厂商根据UEFI进行实现做出的PC固件,可以叫UEFI固件
BIOS 基本输入输出系统 用汇编语言编程,用中断执行输入输出操作。UEFI比BIOS好在:读取分区表,访问某些特定文件,执行特定格式代码
MBR 主引导分区 即硬盘的主引导记录分区列表,硬盘的0柱面,0磁头,1扇区成为主引导分区。MRBR主要有三部分组成,分别是主引导程序/硬盘分区表DPT和硬盘有效标志。主引导程序占446字节,DPT占64字节,硬盘有效标志占2字节。MBR分区表64字节,所以只有4个分区,因为每个分区长16字节,所以MBR不支持2T以上分区