linux权限

linux文件权限概述

一个文件有三种类型权限 分别为: r w x 分别为读写执行权限
有三种角色, 分别是所有者, 所属组, 其他人, 每个角色有各自的读写执行权限,

每种类型, 如读, 有两种可能性, 可读或者不可以读, 则最多有 2*2*2 八种可能性
用0-7 八个数可以表示八种可能性
如 7 = 2^2 + 2^1 + 2^0 则为 rwx
6 = 2^2 + 2^1 + 0 则为rw-

默认创建文件最大权限为666(rw-rw-rw-)
默认创建目录最大权限为777(rwxrwxrwx)

系统通过设置/etc/profile下的umask确定新创建文件或者目录的最高权限

umask = 0022
即 022 = ----w--w-
如新创建文件, 权限为 rw-rw-rw-  -  ----w--w-  = rw-r--r--

linux中文件和目录的rwx代表的意义不一样

文件

r读: cat tail  more  head 查看文件内容
w写: 编辑 vi  echo >> 
x执行:  ./文件

目录

r读: ls ll 查看目录下内容
w写: 对目录下的内容进行操作 , 如cp, rm, mv
x执行: cd . 能否进入到目录中

acl权限

创建目录: mkdir aaa

给lw设定文件acl权限rx

setfacl -m u:lw:rx aaa/

drwxrwx---+ 2 tony student 4096 12月 24 23:12 aaa

获取文件acl权限

getfacl aaa

# file: aaa
# owner: tony
# group: student
user::rwx
user:lw:r-x
group::rwx
mask::rwx
other::---

mask值是控制最大权限的 实际有效权限, 需要和mask权限相与 &
setfacl -m m:rx aaa

//递归实现acl权限
setfacl -m u:lw:rx -R apa
setfacl -m g:student:rx -R apa

// 设置目录的默认acl权限
setfacl -m d:u:lw:rw -R apa

sudu权限

sudo权限是对命令权限进行限制, 让普通用户以超级管理员的身份去执行某些命令

编辑sudo文件

visudo //实际修改/etc/sudoers文件

//用户
tony ALL=(ALL)  /sbin/ifconfig

//组
%student ALL=(ALL)  /sbin/ifconfig

//切换到tony 
su - tony

//查看sudo命令
sudo -l

//sudo 命令  表示以超级管理员的身份运行该条命令
sudo /sbin/ifconfig

特别注意

visudo
tom     ALL=/usr/bin/useradd
tom     ALL=/usr/bin/passwd
tom     ALL=/bin/vi
// 如果不显示tom的密码权限, tom可以通过执行
// sudo passwd  或者   sudo passwd root 来修改用户密码, 一定要小心

//应该这么写, 防止用户将超级管理员的密码更改, 服务器送给别人
tom     ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd "", !/usr/bin/passwd root

// 

如果sudo vi 将会是以超级管理员的身份运行vi命令, 灾难性的后果

SetUID

给执行文件授予setUID权限, 在执行文件时, 默认会以文件所有者的权限执行

  • 只有可以执行的二进制程序才能设定SUID权限
  • 命令执行者要对该程序拥有x(执行)权限
  • 命令执行者在执行该程序时获得该程序文件属主的身份(在执行程序的过程中, 灵魂附体为文件的属主)
  • SetUID权限只在该程序执行过程中有效, 也就是说身份改变只有程序执行过程中有效
chmod 4755 /bin/vi
执行该条命令后, /bin/vi命令拥有SetUID权限
则其他用户在执行/bin/vi时, 会灵魂附体, 变身root, 非常危险 如 : /bin/vi shadaw

ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 30768 2月  22 2012 /usr/bin/passwd
//增加SetUID权限
chmod u+s a.php

-rwSr--r--.  1 root root    17 12月 18 22:59 a.php

// 减掉
chmod u-s a.php

SetGID

给可执行文件赋予SetGID权限, 文件在执行时, 默认会以文件所属组的身份执行, 例如


locate 查找命令, 是有setGID权限
/usr/bin/locate权限为 rwx--s--x.

而/var/lib/mlocate/mlocate.db权限为-rw-r-----.
普通用户没有写权限,
当普通用户执行时locate命令时, 会以locate所属组slocate去执行,
而/var/lib/mlocate/mlocate.db所属组也是slocate, 对该文件有查看权限, 即可以执行locate命令


授予SetGID权限

chmod 2755 a.php

Sticky BIT

SBIT只对目录有效, 一般设置在777的目录上, 即普通用户对该目录拥有写入权限, 即可以删除该目录下其他人创建的文件, 赋予了BIT粘着位权限, 出root可以删除所有文件, 其他人只能删除自己在该目录创建的文件, 如tmp目录, 所有人都可以创建, 但自己删除自己创建的文件

drwxrwxrwt.   4 root root  4096 12月 26 21:49 tmp

实例

[root@localhost ~]# cd /home/uar/
[root@localhost uar]# mkdir test
[root@localhost uar]# ls
test

[root@localhost uar]# ll
drwxr-xr-x 2 root root 4096 12月 26 23:04 test

[root@localhost uar]# chmod 777 test
[root@localhost uar]# ll
drwxrwxrwx 2 root root 4096 12月 26 23:04 test

[root@localhost uar]# chmod 1777 test
[root@localhost uar]# ll
drwxrwxrwt 2 root root 4096 12月 26 23:04 test

[root@localhost uar]# cd test
[root@localhost test]# touch a.php
[root@localhost test]# ll
总用量 0
-rw-r--r-- 1 root root 0 12月 26 23:05 a.php

切换至uar, 去删除a.php, test为777

[tom@localhost ~]$ su - uar
密码:

[uar@localhost ~]$ ll
drwxrwxrwt 2 root root 4096 12月 26 23:05 test

[uar@localhost ~]$ cd test/
[uar@localhost test]$ ls
a.php
[uar@localhost test]$ rm -rf a.php
rm: 无法删除"a.php": 不允许的操作

chattr属性

选项 i:

  • 如果对文件设置i属性, 那么不允许对文件进行删除, 改名, 也不能添加和修改数据
  • 如果对目录设置i属性, 那么只能修改目录下文件的数据, 但不允许建立和删除文件

选项 a:

  • 如果对文件设置a属性, 那么只能在文件中增加数据, 但是不能删除和修改数据; 使用echo aaa >> 文件
  • 如果对目录设置a属性, 那么只允许在目录中建立和修改文件,不能删除

给文件设置chattr属性

    chattr +i a.php

移除chattr属性

    chattr -i a.php

查看chattr属性

    //查看文件
    lsattr -a a.php
    // 查看目录
    lsattr -d dir
[root@localhost test]# lsattr -a cls
----i--------e- cls
[root@localhost test]# lsattr -d dir
----i--------e- dir
[root@localhost test]# rm -rf dir
rm: 无法删除"dir": 不允许的操作

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,458评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,454评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,171评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,062评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,440评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,661评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,906评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,609评论 0 200
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,379评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,600评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,085评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,409评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,072评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,088评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,860评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,704评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,608评论 2 270

推荐阅读更多精彩内容