3A

资源分派:

  • Authentication:认证,验证用户身份
  • Authorization:授权,不同的用户设置不同权限
  • Accouting|Audition:审计

    当用户登录成功时,系统会自动分配令牌token,包括:用户标识和组成员等信息

用户

Linux中每个用户是通过User Id (UID)来唯一标识的

是一个纯数字,系统自动分配的,Linux中只靠UID来判断用户而不是用户名

  • 管理员:root, 0
  • 普通用户:1-60000 自动分配
    • 系统用户:1-499 (CentOS 6以前), 1-999 (CentOS 7以后)对守护进程获取资源进行权限分配
    • 登录用户:500+ (CentOS6以前), 1000+(CentOS7以后)给用户进行交互式登录使用

      用id命令查看UID
[root@C8-1 ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@C8-1 ~]# id pang
uid=1000(pang) gid=1000(pang) groups=1000(pang)

用户组

Linux中可以将一个或多个用户加入用户组中,用户组是通过Group ID(GID) 来唯一标识的。

  • 管理员组:root, 0
  • 普通组:
    • 系统组:1-499(CentOS 6以前), 1-999(CentOS7以后), 对守护进程获取资源进行权限分配
    • 普通组:500+(CentOS 6以前), 1000+(CentOS7以后), 给用户使用

      减少了非陪权限的复杂性,root组里的用户并不一定是超级管理员

      在Linux里允许用户名和组名同名,Windows不允许用户名和组名同名

用户和组的关系

  • 用户的主要组(primary group):用户必须属于一个且只有一个主组,

    默认创建用户时会自动创建和用户名同名的组,做为用户的主要组,由于此组中只有一个用户,又称为私有组
  • 用户的附加组(supplementary group): 一个用户可以属于零个或多个辅助组,附属组,附加组可有可无
[root@C8-1 ~]# id mail
uid=8(mail) gid=12(mail) groups=12(mail)

gid表示用户主组的信息,groups表示用户所有加入的组的信息,假如没有其他附加组,则只显示主组,看起来和gid一样,但并不是。

安全上下文

能不能访问资源,是由执行命令者的身份决定的

Linux安全上下文Context:运行中的程序,即进程 (process),以进程发起者的身份运行,进程所能够访问资源的权限取决于进程的运行者的身份

比如:分别以root 和pang 的身份运行/bin/cat /etc/shadow ,得到的结果是不同的,资源能否能被访问,是由运行者的身份决定,非程序本身。

要想访问资源先检查权限,没权限先赋权!

pang用户可以查看passwd但是无法查看shadow文件

[root@C8-1 ~]# su pang
[pang@C8-1 root]$ 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
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
libstoragemgmt:x:996:993:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
setroubleshoot:x:995:992::/var/lib/setroubleshoot:/sbin/nologin
clevis:x:994:990:Clevis Decryption Framework unprivileged user:/var/cache/clevis:/sbin/nologin
cockpit-ws:x:993:989:User for cockpit-ws:/nonexisting:/sbin/nologin
sssd:x:992:988:User for sssd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:991:987::/var/lib/chrony:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
pang:x:1000:1000::/home/pang:/bin/bash
[pang@C8-1 root]$ cat /etc/shadow
cat: /etc/shadow: Permission denied

最新文章

  1. LINQ系列:Linq to Object集合操作符
  2. Android4.0 添加一个新的Android 键值
  3. 新浪微博的账号登录及api操作
  4. IPD模式下开展敏捷开发的一些问题汇总
  5. 针对不同包之间的action跳转,怎么配置?
  6. 在Windows上安装MySQL5.7
  7. postfix 邮件备份方法
  8. c++ 哪些自定义的数据类型
  9. Unity3D与iOS的交互设计<ViewController 的跳转>
  10. 垃圾脚本黑我linux服务器
  11. jenkins服务器安装
  12. iOS 开发http post 文件的上传
  13. 集成学习之Boosting —— AdaBoost原理
  14. python猜数字GUI版本V0.1
  15. 学习! ! ! Study! ! !
  16. 深入浅出mybatis之入门使用
  17. Static需谨慎
  18. Eclipse中tomcat更改部署路径 deply path
  19. 吴裕雄 python神经网络(8)
  20. Docker(五)-Dcoker容器

热门文章

  1. python文件的相关操作
  2. zepto | 用事件委托去解决无法给新增添的DOM添加事件的问题
  3. Docker多主机管理(八)
  4. php第三天-数组的定义,数组的遍历,常规数组的操作
  5. Bottleneck靶机渗透
  6. MySQL手注之盲注(布尔)
  7. iOS14剪切板探究,淘宝实现方法分析
  8. 正睿十一A班模拟赛day1
  9. C#开启线程的四种方式
  10. C# excel文件导入导出