十念 发表于 2024-8-16 22:11:55

《网络安全自学教程》- Linux安全标识符、身份鉴别、访问控制

《网络安全自学教程》    https://i-blog.csdnimg.cn/direct/9a6cf7be2f4e4df9aafd6d4d6eddc797.png
操作体系有4个安全目标,也就是说想要包管操作体系的安全,就必须实现这4个需求:

[*]标识体系中的用户和举行身份鉴别。
[*]依据体系安全策略对用户的操作举行访问控制,防止用户和外来入侵者对计算机资源的非法访问。
[*]审计体系运行的安全性。
[*]包管体系自身的安全性和完备性。
Linux体系利用「安全标识符」、「身份鉴别」、「访问控制」这三个安全机制实现前两个需求。
https://i-blog.csdnimg.cn/direct/7b62bca4eed64198bf2dc737a56c69c1.png


1、Linux体系标识

Linux利用 UID 来标识安全主体。
UID 是一个0~65535之间的整数,用来唯一标识用户身份,用户身份有三种。


[*]超等用户(UID=0):超等管理员,默认只有root,拥有最高权限,完全控制体系。
[*]内置用户(UID=1~499):体系保留的特殊服务,用来运行体系服务或历程。
[*]平凡用户(UID=500~65535):权限受限,usermod -u 0 username 可以通过修改用户UID的方式将平凡用户提拔为管理员权限,但这并不是完备的root权限,必要做其他配置和授权才气完全控制体系。
id 用户名 可以查看指定用户的UID。
cat /etc/passwd | grep :0 查看具有管理员权限的用户。
https://i-blog.csdnimg.cn/blog_migrate/2073836681ba81d0c9236b7a018e0158.png
UID是单向自增的,我们可以利用 usermod -u [新UID] 用户名 修改用户的UID,但不能重复利用,纵然那个UID已经没人用了。
从上一张图可以看到,新建的两个用户,UID分别是1000、1001,是自增的,这时间1001之前的UID都被用过了。
从下一张图可以看到,999这个UID已经用过了,无法设置给用户;1002这个UID还没用过,可以设置给用户。
https://i-blog.csdnimg.cn/blog_migrate/9c5efa4c07b02ae747124deb1fa1731d.png
2、Linux 身份鉴别

Linux利用文件来管理用户信息,也就是把用户信息生存在一个文件里,毕竟Linux的核心理念就是"统统结文件"。
Linux的用户账号生存在 /etc/passwd,暗码加密后生存在/etc/shadow。
cat /etc/passwd 查看用户账号信息,这个文件对全部用户可读,一行对应一个用户,用冒号分割字段。
https://i-blog.csdnimg.cn/blog_migrate/7f9cc93c38e943c36dd8bc1fc8a02f0a.png
字段从左到右依次是:

[*]root:用户名,巨细写字母或数字组成,不凌驾位。
[*]x:暗码,加密后放到/etc/shadow。
[*]0:用户标识(UID)。
[*]0:用户组标识(GID)。
[*]root:解释,用来描述用户信息。
[*]/root:主目录(用户家目录),用户登录后默认进入主目录。
[*]/bini/bash:登录的shell。
cat /etc/shadow 查看用户暗码信息,只有root可以查看,字段从左到右依次是:

[*]用户名,与/etc/passwd一 一对应。
[*]暗码,利用DES+MD5加密后生存。如果为空,登录就不必要暗码;*表示账号被锁定;!!表示暗码过期;$6$开头,表示SHA-512加密;$1$开头,表示MD5加密;$2$开头,表示Blowfish加密;$5$开头,表示SHA-256加密。
[*]最后一次修改时间,隔断1970年1月1日有多少天。
[*]最小时间隔断,两次修改暗码之间的最小天数,0表示没有限制。
[*]最大时间隔断,暗码有效期,过期后必要修改暗码,空或99999表示没有限制。
[*]告诫时间,暗码过期提前多少天提醒,0表示没有限制。
[*]账号闲置时间,暗码过期后,仍旧可以利用该暗码登录的天数,空字段表示不欺压过期。
[*]失效时间,失效后锁定用户,禁止登录。
[*]标志,一般不用。
扩展:设置/修改暗码时,暗码加密后,先由pwunconv将加密后的暗码写到/etc/passwd,再由pwconv从/etc/passwd转换到/etc/shadow中。
3、Linux访问控制

Linux用 UGO 管理机制做访问控制。
UGO 是User、Group、0ther首字母的简写,它把文件的操作者分为三种

[*]U:文件属主权限
[*]G:文件属组权限
[*]O:其他组用户的权限
每种操作者拥有三种权限:读(r)、写(w)、执行(x)。
三种操作者的9种权限共同组成一个文件的完备权限。
ls 可以查看文件的属性,属性左边第二列显示文件的权限
https://i-blog.csdnimg.cn/blog_migrate/7bed3a96ad8021b105ea3986a79d67d3.png
在权限lrwxr-xr-x中,从左到右;


[*]第一位,表示文件类型
[*]第二三四位,表示属主的权限,这里的rwx表示文件属主有读写执行权限。
[*]第伍六七位,表示属组的权限,这里的r-x表示文件属组有读和执行权限。
[*]第八九十位,表示其他组用户权限,这里的r-x表示其他组对文件有读和执行权限。
权限的设置,可以参考我的另一篇文章 Linux修改文件权限
扩展:目录的权限与文件的权限寄义有些不同:r 是可以查看目录中的内容,w 是可以增删目录中的内容,x 是可以进入目录。
除了rwx这三个常用权限位,Linux另有几个「特殊权限」 s(suid)、s (sgit)、t(Sticky Bit)。
比如 passwd 文件属主的第三个权限是s(suid),这表示其他用户在执行该文件时具有属主的权限。这样的利益是,平凡用户没有修改shadow文件的权限,当平凡用户用执行passwd命令修改暗码时,具有了属主root的权限,就能修改shadow文件了。sgid也是同样的效果。
:~$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root/usr/bin/passwd
:~$ ls -l /etc/shadow
-rw-r----- 1 root shadow/etc/shadow
新建文件或目录的默认权限,由体系掩码umask决定。「掩码」的相干资料,可以参考我的另一篇文章 Linux修改文件默认访问权限

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 《网络安全自学教程》- Linux安全标识符、身份鉴别、访问控制