Day-11 linux特殊权限

1.suid(set uid)特殊权限

set uid简称suid
当我们为某个命令设定了suid,无论是谁使用该命令,都会使用该命令的"属主"运行该命令
suid==4000
chmod u+s /usr/bin/passwd
chmod 4755 /usr/bin/passwd
chmod u-s #去掉权限

suid优点:可以让普通用户执行无法执行的命令,相比于提权方便
缺点:如果rm为suid,无论是谁执行该命令,都能删除系统的任何资源


权限.png
例子:cat设置特殊权限,在普通用户中检验
[root@oldboy ~]# which cat
/usr/bin/cat
[root@oldboy ~]# ll /usr/bin/cat
-rwxr-xr-x. 1 root root 54160 Oct 31  2018 /usr/bin/cat
[root@oldboy ~]# ll /usr/bin/cat
-rwsr-xr-x. 1 root root 54160 Oct 31  2018 /usr/bin/cat
检验:
[jack@oldboy ~]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
无标题1.png

总结:进程以何种身份去查看一个文件时,取决于运行这个进程的用户,对这个文件有没有权限,当使用suid时,则使用命令的属主权限。

2.sgid(set gid) 特殊权限

将目录设置为sgid后,如果在往该目录下创建文件,都将与该目录的 所属组保持一致,演示如下

[root@oldboyedu ~]# groupadd devops 
[root@oldboyedu ~]# useradd zhangsan -G devops
[root@oldboyedu ~]# useradd lisi -G devops
[root@oldboyedu ~]# mkdir /opt/share
[root@oldboyedu ~]# chmod 2777 share/             
[root@oldboyedu ~]# chown .devops share/

测试不同的用户在该目录下创建文件,检查属主和属组 #使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单。

3.sbit

如果一个目录设定了粘滞位, 那么谁都可以在该目录下创建文件,.
删除文件只能是 谁创建的谁删除. 除此以外 root 和/tmp/的所属主都能 删除该目录下的内容.

[root@oldboy ~]# chmod 1755 /mnt
[root@oldboy ~]# ll -d /mnt
drwxr-xr-t. 2 root root 6 Apr 11  2018 /mnt

[jacky.@oldboy ~]$ cd /mnt
[jacky.@oldboy mnt]$ touch ll
[jacky.@oldboy mnt]$ rm -f file
rm: cannot remove ‘file’: Operation not permitted
[jacky.@oldboy mnt]$ rm -f ll
无标题2.png
5.特殊属性 chattr lsattr

-a 只能追加,无其他操作 -i 锁定文件,不能删除,不能追加,不能移动
1.希望任何人都不能创建用户,应该给/etc/passwd添加什么特殊属 性?

root@oldboyedu ~]# chattr +i /etc/passwd
[root@oldboyedu ~]# lsattr /etc/passwd
----i----------- /etc/passwd
不得任意更动文件或目录
[root@oldboyedu ~]# chattr -i /etc/passwd
[root@oldboyedu ~]# lsattr /etc/passwd ---------------- /etc/passwd
[root@oldboyedu ~]# useradd test123

2.日志文件,希望能往里面追加内容,但不允许删除,应该添加什么 特殊属性?
限.

[root@oldboyedu ~]# chattr +a /var/log/secure
[root@oldboyedu ~]# lsattr /var/log/secure
-----a---------- /var/log/secure

6.umask 默认权限

umask是用来控制默认创建文件或目录的权限
1.umask设定为022,表示要减去的权限
目录 777 -022 =755
文件 666 -022 =644
2.umask 设定为奇数 偶数 对文件和目录有什么影响?
文件: 如果umask出现了奇数, 要在奇数位+1
目录: 对目录毫无影响
3.设定umask
umask number 临时 (当前bash窗口有效,会随着bash的关闭一 起结束)
vim /etc/profile /etc/login.defs # 如果修改则都为永久.
PS: umask 知道就行, 不要调整,默认就是安全的权限.
目录: 755 文件: 644

你可能感兴趣的:(Day-11 linux特殊权限)