linux用户组及权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux用户组及权限相关的知识,希望对你有一定的参考价值。

我们要想访问到系统资源,就需要以某个user身份登录进系统,这个user身份在系统中具有唯一标识符(UID),在访问某个文件资源的时候,会首先检测这个用户是否具有访问的权限,然后再检测这个文件是否对这个用户开放了访问权限。

一、用户

    什么是用户?用户在系统中是能够访问资源的标识符。一个用户可以属于多个组。

    用户分类:
            管理员root,UID为0
            普通用户:UID范围1-65536
                    系统用户:UID范围1-499
                    一般用户:UID范围500-65535
            (如果用户的数量超过65535,就使用32进制做标识符)

二、组

    什么是组?组是一个容器,用来存放用户的容器,一个组可以有多个用户。
    用户组类别,可以分为:系统组和一般组,也可以分为:私有组,基本组和附加组;私有组:创建用户时,如果没有指定用户所属组,那么系统会自动为其出创建一个与用户名相同的组;一般组:用户的默认组;附加组:默认组以外的其它组。

三、权限

决定用户是否能够访问资源。

    使用ls  -l /etc/passwd对列出的内容分析:
    [[email protected] ~]# ls -l /etc/passwd
    -rw-r--r--. 1 root root 856 Jun 12 10:45 /etc/passwd
            第一个 - :表示文件的类型
            rw- :表示用户的权限,r表示用户具有读权限,w表示用户具有写权限,- 表示用户没有执行权限。
            r-- :表示所属组的用户具有的权限,r表示所属组的用户具有读权限,-表示所属组的用户没有写权限,- 表示组的用户没有执行权限。
            r-- :表示其他用户具有的权限,r表示其他用户具有读权限,-表示其他用户没有写权限,- 表示其他用户没有执行权限。
            root  root :表示/etc/passwd文件所属的用户和组。
            856 :文件大小,单位字节。
            Jun 12 10:45 :文件最近一次修改(modify)时间。
            /etc/passwd :文件名。
            (以上只是示例,不同文件信息不同)
    权限的详细介绍:
            权限      二进制表示    八进制表示    
            ---               000               0                   无权限
            --x               001              1                    执行权限
            -w-              010               2                   写权限
            -wx              011              3                   写和执行权限
            r--               100               4                   读权限
            r-x               101               5                   读和执行权限
            rw-              110               6                   读写权限
            rwx              111              7                   读写执行权限

    对于文件来说,如755表示rwxr-xr-x权限,表示文件所属的用户具有读写执行权限,所属组的用户具有读和执行权限,其他用户具有读和执行权限,其中的x表示此文件具有运行的权限;对于目录来说x表示能够进入到此目录,可以使用ls等命令来列举查看文件,对文件来说写w权限表示可以删除、修改文件内容,r读权限可以使用cat等命令查看文件内容。
    对用户student来说,如果想要使用cat等命令查看file文件的内容,首先查看用户是否具有执行cat命令的权限,如果有,再查看file文件的所属用户和组,如果file文件属于student用户且具有r权限,那么就可以查看文件内容,如果不属于student用户,但是这个student用户在file文件的所属组里,且这个组有r权限,那么student也可以查看文件内容,除此之外,如果file文件具有其他用户可读权限,也可以查看文件内容。
    需要注意的是root用户不受权限的约束。

四、/etc/passwd,/etc/group,/etc/shadow文件详解

1./etc/passwd存放用户相关信息的文件

    如 root:x:0:0:root:/root:/bin/bash 冒号作为分隔符
    root表示用户名
    x表示密码占位符
    0用户uid
    0用户组gid
    root所属组
    /root家目录
    /bin/bash登陆后运行的bash程序
    (查看哪些是系统中的合法shell,可以查看/etc/shells)

2./etc/group组相关信息

    查看内容如:bin:x:1:bin,daemon 冒号分隔符
    bin组名称
    x密码占位符
    1组gid
    bin,daemon属于bin组的用户

3./etc/shadow

    部分内容:student:$6$XeP2QJOX$Po/4iCJKdoWX4tTytGCG4022pFZ5oK53vzdW7Gt7AsiAh1mtyKm1xnAwdw/7B6517D02anKwZmToQR04L87n41:17698:0:99999:7::: ,冒号分隔
    第一段student表示用户名
    第二段中$6$XeP2QJOX$,XeP2QJOX这个密码标识,6表示加密算法;Po/4iCJKdoWX4tTytGCG4022pFZ5oK53vzdW7Gt7AsiAh1mtyKm1xnAwdw/7B6517D02anKwZmToQR04L87n41这段表示加密后的密码
    第三段17698表示从1970-1-1开始到最近一次修改密码的时间
    第四段0表示密码最短使用期限,0表示不做限定
    第五99999段表示密码最长使用期限,99999表示不做限制
    第六段7表示密码快失效的警告时间,7意味着距离密码失效还剩7天就发出警告
    第七段表示密码非活跃时间,也就是说你可以登陆,但必须更改密码
    第八段密码失效时间
    第九段保留字段,没其他作用
    (在第二段中有些是!!或者 * 号,这表示禁止此用户登录)

五、总结

root管理员用户不受任何权限的约束,需要注意。
加密方法:
        对称加密:加密和解密使用同一个密码
        公钥加密:每个密码都成对儿出现,一个为私钥(secret key),一个为公钥(public key)
        单向加密,散列加密:提取数据特征码,常用于数据完整性校验
                    1、雪崩效应
                    2、定长输出
                            MD5:Message Digest, 128位定长输出
                            SHA1:Secure Hash Algorithm, 160位定长输出

以上是关于linux用户组及权限的主要内容,如果未能解决你的问题,请参考以下文章

linux用户及权限详解-用户组-用户管理-权限管理

Linux用户及文件权限管理

Linux入门-5 用户及权限基础

Linux用户及权限管理

LINUX用户用户组及权限管理

Linux 用户用户组及权限管理