Linux 文件系统权限

一、简述权限

 文件系统的权限管理机制的建立,约束了用户对数据的操作。

1、对系统安全而言

 管理员的操作权限非常大,足以破坏系统,权限机制将管理员与普通用户之间区分开,防止系统被随意破坏。

2、对用户而言

 Linux是一个多用户的操作系统,不同用户间为了防止其他人破坏数据或访问数据,文件系统的权限管理是非常必要的。

二、文件权限说明

  • 文件权限的设定对象分为三类

 1、owner:文件拥有者

 2、group:定义的用户组

 3、other:其他人

 针对不同对象设定各自的权限

  • 文件权限对于文件的意义

 r (read):可读取此一文件的实际内容,如读取文本文件的文字内容等;

 w (write):可以编辑、新增或者是修改该文件的内容(但不含删除该文件);

 x (execute):该文件可以提请内核启动为进程。

  • 文件权限对于目录的意义

 r (read contents in directory)
 表示具有读取目录结构列表的权限,可ls 列出文件列表;
 w (modify contents of directory)

 表示具有对目录结构进行更改的权限

 1.建立新的文件与目录;

 2.删除已经存在的文件与目录(不论该文件的权限为何!)

 3.将已存在的文件或目录进行更名;

 4.搬移该目录内的文件、目录位置。

 x (access directory)

 表示具有进入该目录的权限。对目录拥有x权限十分重要,如果没有该权限,不能在目录下做任何操作,拥有rx可以使用ls -l 命令;光有w权限,没有x,不能对目录结构进行任何改动。

三、权限管理命令

 chmod [OPTION]… MODE[,MODE]… FILE…

 该命令分为三种执行模式

 1、赋权模式:直接操作一类用户所有权限

 chmod u=,g=,o=

 2、授权模式:操作一类用户单一权限

 chmod u[+|-],g[+|-],o[+|-]

 3、八进制模式:直接三类用户权限码

 chmod 741 FILE

  • 权限码说明

  权限:八进制:十进制

  r–:100:4

  -w-:010:2

  –x:001:1

 例如,rwxr-xr-x ->755

  • 递归选项-R

  • 目录X权限用法

chmod -R +X /testdir

 递归的时候只对目录加x权限,不对文件加x权限(原文件已具有x权限除外)

四、文件反向掩码umask

 在Linux上创建新文件的默认权限由umask来决定

  • 新建目录默认权限

    777-umask

  • 新建文件默认权限

    因为新建文件带有可执行权限是一件危险的事情,所以Linux上新建文件不允许带有x权限

    666-umask,结果位如果是奇数(带有x权限)则将其权限+1

  • umask相关命令

    umask:查看

    umask -S:模式方式显示

    umask xxx:设定

    umask -p:输出可被调用

五、文件系统的特殊权限

  •  普通用户运行passwd程序的问题

 首先讲一下安全上下文:

 任何一个可执行程序能否发起,由发起者对其是否有执行权限决定的。

 程序启动为进程后,进程继承发起者的属主属组。

 当进程访问文件时,应用继承而来的身份来执行操作。

 如此一来,普通用户运行passwd修改自己的密码时,必然要对/etc/shadow 文件进行读写,而我们知道此文件设置的权限极为严格,只有管理员用户才可读写,普通用户运行的passwd进程身份是其他人,无法对此文件读写。而实际上我们操作时可以修改自己的密码,这是因为passwd二进制文件具有特殊文件权限。

-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd

  •  特殊权限介绍

 Linux文件系统上有三个特殊权限位,

 setuid,setgid,sticky bit

 权限位上代替x位置,–s–s–t

  • setuid

chmod u+s FILE
chmod u-s FILE

 作用于可执行二进制文件有效。

 表示任何用户执行该文件发起的进程,继承文件所有者的身份,而不是发起者。

 让本来没有相应权限的用户运行此类程序时,可以访问原来没有权限的资源。

  • setgid

chmod g+s FILE|DIR
chmod g-s FILE|DIR

 作用于可执行二进制文件时,

 表示任何用户执行该文件发起的进程,继承文件所属组的身份。

 作用于目录时,

 表示在目录下新建文件的所属组为此目录的所属组

  • sticky bit

chmod o+t DIR
chmod o-t DIR

 只作用于目录

 表示该目录下的文件,除管理员和目录属主外,其他用户只可以删除自己的文件。




原创文章,作者:cutemsyu,如若转载,请注明出处:http://www.178linux.com/27512

(0)
cutemsyucutemsyu
上一篇 2016-08-04
下一篇 2016-08-04

相关推荐

  • N26-博客作业-week16

    1、源码编译安装LNMP架构环境 IP:192.168.12.137 Nginx:1.8.1 MariaDB:5.5.57 PHP:5.6.31 安装开发环境包组 yum groupinstall “Development Tools” “Server Platform Development” -y 安装开发程序包 yum install pcre-dev…

    2017-08-04
  • 网络班N22期第一周博客作业

    一、计算机的组成及功能。  计算机是由硬件系统和软件系统两部分组成的。 1、硬件系统包含:    (1)、主板。又叫主机板(mainboard)、系统板(systemboard)或母板(motherboard),它安装在机箱内,是微机最基本的也是最重要的部件之一,主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有B…

    Linux干货 2016-08-15
  • Nginx配置详解

    NginX 回顾http协议: 1.URL格式 URL:shceme://username:password@host:port/path;params?query#fram 2.http事务:     request:请求报文格式       reponse:响应报文…

    Linux干货 2016-10-25
  • 博客作业-N22第二周

    1、linux上的文件管理类命令都有那些,其常用的使用方法及其相关示例演示。 答: cp 复制文件 [root@localhost network-scripts]# cp ifcfg-eno16777736 ifcfg-eno.bak [root@localhost network-scripts]# ls ifcfg-eno16777736  …

    Linux干货 2016-08-22
  • 简明 Vim 练级攻略

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。 ——————————正文开始—————————— …

    Linux干货 2015-04-04
  • cut命令练习总结

    cut命令的作用是实现文本内容的切割,原内容或者原文件不受影响。   cut小练习:                       2016年 07月 …

    Linux干货 2016-07-22