一篇文章搞懂Linux系统的权限管理
前言
一篇文章搞懂Linux系统的权限管理。
一、查询文件和目录的权限
ls -l file : 查看文件权限
ls -ld dir :查看目录权限
#对于每一位的解释#
[1] : 文件类型
#- 普通文件
#
文章目录 前言 一篇文章搞懂Linux系统的权限管理。 一、查询文件和目录的权限 ls -l file : 查看文件权限 ls -ld dir :查看目录权限 #对于每一位的解释# [1] : 文件类型 #- 普通文件 #d 目录 #l 软连接 #b 快设备 #c 字符设备 #s socket套接字 #p 管道 | [2] : 用户权限 ##rw-|r–|r– 前三位: u 中三位: g 后三位: o [3] : 系统的selinux开启 [4] : 对于文件:文件内容被系统记录的次数(硬链接个数) ##对于目录:目录中子目录的个数 [5] : 文件拥有者 [6] : 文件拥有组 [7] : 对于文件:文件内容大小 ##对于目录:目录中子文件的元数据大小 [8] : 文件内容被修改的时间 [9] : 文件名称 二、普通权限的类型及作用 1.用户对文件的身份 u : user 文件的拥有者,ls -l 看到的第五列信息 g : group 文件拥有组, ls -l 看到的第六列信息 o : other 既不是拥有者也不是拥有组成员的其他用户的通称 2.权限类型 3.设定普通权限的方法 chmod ##设定文件权限 chmod 复制权限 chmod --reference=/tmp /mnt/westosdir ##复制/tmp目录的权限到/mnt/westosdir上 chmod -R --reference=/tmp /mnt/westosdir #复制/tmp目录的权限到/mnt/westosdir及目录中的子文件上 -R 代表第归操作 chmod 字符方式设定权限 chmod file : 用字符方式设定文件权限 示例:
chmod 数字方式设定权限# 权限布尔值表示方式 rwx = 111 r-- = 100 -w- = 010 –x = 001 — = 000 三位二进制可以表示的最大范围为8进制数。 三、系统默认权限设定 系统本身存在的意义共享资源,从安全角度讲系统共享的资源越少,开放的权力越小系统安全性越高。既要保证系统安全Linux 文件与目录管理,又要系统创造价值,于是把应该开放的权力默认开放,把不安全的权力默认保留。 如何保留权力? umask表示系统保留权力 umask : 查看保留权力 umask 权限值 : 临时设定系统预留权力 文件默认权限 = 777-umask-111 目录默认权限 = 777-umask umask值越大系统安全性越高 umask修改 umask临时更改 umask 777 永久更改 vim /etc/bashrc : shell系统配置文件 74 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then 75 umask 002 #普通用户的umask 76 else 77 umask 022 – 077 #root用户的umask 78 fi vim /etc/profile : 系统环境配置文件 59 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then 60 umask 002 #普通用户的umask 61 else 62 umask 022 – 077 #root用户的umask 63 fi source /etc/bashrc : source作用时使我们更改的内容立即被系统识别 source /etc/profile 四、文件用户用户组管理 chown username file : 更改文件拥有者 chgrp groupname file : 更改文件拥有组 chown username:groupname file : 同时更改文件的拥有者和拥有组 chown|chgrp -R user|group dir : 更改目录本身及目录中内容的拥有者或者拥有组 五、特殊权限 stickyid 粘制位 针对目录 : 如果一个目录stickyid开启,那么这个目录中的文件只能被文件所有人删除。 设定: chmod 1原始权限 dir chmod o+t dir sgid 强制位 针对目录 : 目录中新建的文件自动归属到目录的所属组中 设定: chmod 2原始权限 dir chmod g+s dir #只针对二进制的可执行文件(c程序) #当运行二进制可执行文件时都是用文件拥有组身份运行,和执行用户无关 suid : 冒险位 只针对二进制的可执行文件(c程序),当运行二进制可执行文件时都是用文件拥有者身份运行,和执行用户无关。 设定 chmod 4原属性 file chmod u+s file 六、acl权限列表 Aiccess Control Lists : 访问控制列表 功能:在列表中可以设定特殊用户对与特殊文件有特殊权限 “+ ”代表acl权限列表功能开启。 当文件权限列表开启,不要用ls -l 的方式来读取文件的权限。 getfacl westosfile: 读取acl列表权限读取。 显示内容分析 file: mnt/westos : 文件名称 owner: root : 文件拥有者 group: root : 文件拥有组 user::rw- : 文件拥有者权限 user:westos:rwx : 特殊指定用户权限 group::r-- : 文件拥有组权限 group:westos:— : 特殊指定的用户组的权限 mask::rwx : 能够赋予特殊用户和特殊用户组 权限列表设定与删除
acl mask 控制 #mask是能够赋予指定用户权限的最大阀值 问题:当设定完毕文件的acl列表之后用chmod缩小了文件拥有组的权力 mask会发生变化 恢复:
acl 列表的默认权限 setfacl -m u:lee:rwx /mnt/westosdir : 只对于/mnt/westosdir目录本身生效 setfacl -Rm u:lee:rwx /mnt/westosdir : 对于/mnt/westosdir目录和目录中已经存在的内容生效 以上的命令之针对与存在的文件生效,新建文件是不会被设定的 setfacl -m d:u:lee:rwx /mnt/westosdir/ : 针对与/mnt/westosdir目录中新建文件生效 七、attr权限 attr权限限制所有用户 i : 不能作任何的更改 a : 能添加不能删除 chattr +i|+a|-i|-a dir|file : 设定attr权限 lsattr dir|file : 查看attr权限 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |