1.定义了用户对资源或者服务的访问能力叫做权限
2.用户,逻辑容器 ,关联权限:用户组 方便地指派权限
Linux定义了3类文件使用的能力
1.文件的属主(所有者)
2.文件的属组(原生组)
3.其他用户的访问权限
对于计算机而言,就是识别用户名,是获取资源与服务的标识符
组也是标识符
安全上下文指的是一类定义某个进程允许做什么的许可和权限的集合
用户操作计算机,进程完成对于计算机的操作
进程--用户操作计算机的代理
Tom 发起ls进程 Jerry 也发ls进程
文件的权限,进程也有属主与属组
内核判断用户的权限
ls -l
drwxr-xr-x. 3 zeak zeak 4096 Sep 28 04:30 Desktop
drwxr-xr-x. 2 zeak zeak 4096 Sep 25 02:04 Documents
drwxr-xr-x. 2 zeak zeak 4096 Sep 25 02:04 Music
drwxr-xr-x. 2 zeak zeak 4096 Sep 25 02:04 Pictures
-rw-rw-r--. 1 zeak zeak 0 Sep 28 04:34 x.txt
第一列 每三个为一组,定义了文件的3中权限
依次对应了属主 属组 其他用户
d rwx r-x r-x 3 zeak zeak 4096 Sep 28 04:30 Desktop
文件类型 属主权限 属组权限 其他用户权限 属主 属组
r:可读,可以使用类似cat等文本查看命令进行查看
w:可写,可以进行编辑或者删除
x:可执行 exacutable 可以当做命令提交给内核运行
r:可以对该目录使用ls(不能使用ls -l查看文件详细信息)等命令查看目录
w:可以在该目录下创建文件
x:可以使用cd切换进目录并且可以使用ls -l 查看目录内文件的详细信息
文件不建议有执行权限,而目录应该有
有权限 r,w,x 没有权限 使用 '-' 表示
r--(100):只读
r-x(101):读与执行
---(000):无权限
--x(001):执行
-w-(010):只有写权限
-wx(011):写与执行
rw-(110):读写
rwx(111):全部权限
rwxr-xr-x 755
rw-r----- 640
rwxrwxr-x 775
660 rw-rw----
用户ID:UID /etc/passwd 存储了用户名与用户ID的对应
组ID:GID /etc/group 存储了group的属性信息,如组名,组ID
/etc/passwd, /etc/group
数据库文件 密码位为空
用户输入用户名之后,计算机将用户名对应到用户ID(数据库.转换过程)
,之后计算机执行的操作通过该ID号完成
用户:/etc/shadow 存储了用户的密码
组:/etc/gshadow 存储了组的密码
RedHat系列
管理员 UID:0
普通用户 UID 1--65535
系统用户:UID 1-499 用于运行后台进程,限定权限,不能登录系统
一般用户 :UID 500-60000
用户权限+文件自身的权限=用户的访问能力
用户组:
管理员组
普通组
系统组:
一般组:
一个用户可以属于多各组
私有组:创建用户时没有指定组,系统自动会创建一个以用户名命名的组,作为用户的私有组
基本组:用户的默认组 基本组不一定是私有组
附加(额外)组:基本组之外的组都可以叫作附加组或者额外组
系统上的进程都是可执行文件,进程的执行者就是进程的属主,进程以其属主去访问文件
例子
一个进程以tom组,tom用户的身份运行
访问对象 rwxrw-r-- jerry tom a.txt
查看文件与进程的属主是否一样,一致,以属主权限访问
不一样,查看进程的用户是否属于文件的属组 如果是,则以数组的权限访问
不一致,则以其他用户的权限访问
例子
tom 执行ls命令
rwx-r-xr-x root root /bin/ls 文件也有权限
tom只能以其他用户的权限进行访问 r-x 有执行权限
此ls命令进程的属主 是此进程的发起者,即tom
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
各个字段 分隔符 :
accout(用户名/登录名)
password(x表示占位符,密码存储在shadow文件)
UID
GID:基本组ID
GECOS:用户的注释信息 可以为空
home directory:用户家目录
shell:用户登录默认打开的shell
whatis passwd
passwd (1) - update user's authentication tokens
passwd (5) - password file
passwd [sslpasswd] (1ssl) - compute password hashes
cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
#cat /etc/shadow
root:$1$gX6cVC8Q$jacAH9rybBzd0IGKsS7sE0:16997:0:99999:7:::
bin:*:15937:0:99999:7:::
daemon:*:15937:0:99999:7:::
vcsa:!!:16994::::::
各列含义
accout:登录名
encrypted password:加密的密码
例子: $1$gX6cVC8Q$jacAH9rybBzd0IGKsS7sE0 $分隔符 1 表示机密方法md5
第二个人$符之后的数据是密码 密码的前8位属于Salt(杂质),随机生成
!! 表示用户是锁定的,不能用于登录;* 表示可以正常登录
date of last password change:从1970年开始到上次修改密码的时间 0 表示用户下次登陆需要修改密码
minimum password age :在密码被修改之前需要经过的天数 密码最短使用期限
maximum password age:密码最长使用时间
password warning period:距离密码失效剩余几天的时候通知用户
password inactivity period:密码到期后,用户一直没有修改密码,密码到期后会有一定的宽限时间,在宽限时间内,
登陆后第一步是修改密码如果用户在宽限时间也没有修改密码,则账号被锁定
account expiration date:密码不活跃时间
reserved field:保留区域
对称加密:加密解密使用同一个密钥
公钥加密:每个秘钥成对出现,一个公钥\(public key\),一个私钥\(secure key\)
单项加密:也叫作散列加密,指纹加密 能加密,不能解密 提取数据特征码 进行数据完整性校验
1.雪崩效应\(蝴蝶效应\):初始条件的微小改变,将会引起结果的巨大改变
2.定长输出
MD5:Message Digest 128位的定长输出
SHA1:Secure Hash Algorithm 160位定长输出
which useradd 得到文件路径
ls -l $\(which useradd\)
ls -l \`which adduser\`
lrwxrwxrwx. 1 root root 7 Jul 12 04:07 /usr/sbin/adduser -> useradd 指向useradd的软链接
useradd USERNAME
创建成功后,会在/etc/passwd最后一行添加一个用户 没有设定密码时,用户不可用
管理员可以使用passwd USERNAME 修改其他用户的密码
cat /etc/group
root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
adm:x:4:adm,daemon
各列含义
group_name:组名
password:密码 x 密码占位符
GID :组ID
user_list :用户列表
group GROUPNAME
useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage
groupadd,groupdel,groupmod,gpasswd
chown,chgrp,chmod