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 17:40
下一篇 2016-08-04 21:40

相关推荐

  • 重定向以及管道

    描述I/O设备的重定向

    Linux干货 2017-11-19
  • Linux系统性能工具

    linux中几款常用的系统性能分析工具: 1.vmstat命令 解释: 虚拟内存信息 用法: vmstat [options] [delay [count]] vmstat 2 5 //每2秒刷新一次,一共刷新5次 输出属性: procs: r:可运行(正运行或等待运行)进程的个数,和核心数有关 b:处于不可中断睡眠态的进程个数(被阻塞的队列的长度) mem…

    Linux干货 2017-12-19
  • CentOS上配置rsyslog客户端用以远程记录日志

    rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收集服务器,rsyslog进程可以从网络中收集其它主机上的日志数据,这些主机会将日志配置为发送到另外的远程服务器。rsyslog的另外一个用法,就是可以配置为客户端,用来过滤和发送内部日志消息到本地文件…

    Linux干货 2015-02-14
  • nginx配置(二)

    ngx_http_gzip_module: The ngx_http_gzip_module module is a filter that compresses responses using the “gzip” method. This often helps to reduce the size of transmitted data by half…

    Linux干货 2017-05-08
  • linux内核及centos系统启动流程

    Linux组成 Linux: kernel+rootfs(根文件系统) kernel功能: 进程管理、内存管理、网络管理、驱动程序、文件系统、安全功能 rootfs:程序和glibc  库:函数集合, function, 调用接口(头文件负责描述)      过程调用:proce…

    Linux干货 2016-09-10
  • LVS-NAT负载均衡两个php应用(wordpress,discuzx)( Blog 19)

    结果:需要会话保持,需要共享存储;

    Linux干货 2017-12-20