suid和sgid的个人理解

uid是用户id,gid是组id,它们的权限有rwx,文件位置在/etc/passwd和/etc/group

目录默认权限是755,文件默认权限是644,默认掩码是022,

suid的特殊权限是4    #命令的本身也是文件相关

sgid的特殊权限是2    #和目录相关

striky的特殊权限是1    #防止别人删除自己的文件,在目录上设置rwt(o+t)

更改权限属性等都是在root授予:

1、 临时让普通用户获得所属用户指定的权限: chmod u+s /bin/ls

[[email protected] ~]$ ls /root

111  anaconda-ks.cfg  Desktop  install.log  install.log.syslog  s  shell

2、临时让普通用户能更改自己的密码(密码不可以简单,否则不通过更改):chmod u+s /usr/bin/passwd

[[email protected] ~]$ passwd

Changing password for user wsw.

Changing password for wsw

(current) UNIX password:

New UNIX password:

Retype new UNIX password:

临时1、 临时让普通用户获得所属用户指定的权限让普通用户获得所属组指定的权限

3、临时让普通用户获得所属组指定的权限,创建目录和文件:chmod g+s

[[email protected] test2]$ ls -l

total 0

-rw-rw-r-- 1 wsw root 0 Jan  4 21:51 abc

[[email protected] test2]$ mkdir abcd

[[email protected] test2]$ ls -l

total 4

-rw-rw-r-- 1 wsw root    0 Jan  4 21:51 abc

drwxrwsr-x 2 wsw root 4096 Jan  5 12:20 abcd

chattr: 
+i :使文件或者文件夹不可删除、移动、修改或者追加内容等操作,俗称被锁住;                             +a :使文件或者文件夹不可删除、移动、修改的操作,但可以追加内容的操作;
+i,+a 可以复制,但复制后的新文件权限变了默认权限;
lsattr:  查看目录下的文件夹或文件的隐藏权限;
-a :查看目录里面包含的子目录和(包括隐藏)文件的隐藏权限;
-R:查看目录里面包含的子目录和文件的隐藏权限(并可快捷查看子目录下的隐藏权限);

-d : 查看当前目录的隐藏权限

时间: 2024-08-03 17:52:36

suid和sgid的个人理解的相关文章

理解基本权限以及特殊权限:Suid 、Sgid、Sticky以及acl

理解基本权限以及特殊权限:Suid .Sgid.Sticky以及acl 在Linux中特殊权限是什么?为什么要设定特殊权限?回答这个问题前,我们不妨思考为什么要设定权限? 大家知道Linux中一切皆文件.不论你是什么,在linux系统中都会被当做一个文件来看待.无论你是文本或目录,硬件或软件,图片或视频等等,统统都被当做文件来看待.所以,在linux中,文件的重要性不言而喻.那么如何更合理的管理好文件呢?文件的权限管理是很重要的一环,所以接下来我将介绍文件的基本权限以及特殊权限. 基本文件权限

关于SUID、SGID、SBIT

在linux里提到操作权限的时候往往是说对应三种角色(所有者.本组人.其他人)分别有三种权限(r.w.x),这样组合起来,就是3*3=9种.分别用9个标志位来记录.用ls –l来观察文件属性会显示这9个标志位.为方便表述,假设我们从右边第一位算起.分别记作1.2.3位,存储其他人的权限:4.5.6位存储本组人权限:7.8.9位存储所有者权限.当然还有一位第10位表示文件类型.1-9位上是1,就表示有这个权限,是0就表示没有这个权限. 这是常规情况,还有一些特殊情况并没有包含在内.这个特殊情况是只

SUID或SGID程序中能不能用system函数

system()函数的声明和说明如下: 注意它的描述那里,system()执行一个由command参数定义的命令,通过调用/bin/sh -c命令来实现这个功能.也就是说它的逻辑是这样的! 进程调用system函数,system函数调用fork创建一个子进程,然后再调用exec函数来把这个子进程的正文段替换成/bin/sh命令的正文段.然后再由sh来执行exec将程序的正文段替换成command参数所代表的命令的正文段,例如,我的一个程序a.out来调用system函数来执行sleep 20命令

关于特殊文件权限:suid、sgid和sticky-bit

用 ls –l 命令时,能看到三个八进制数字,表示文件的权限.其实文件的权限应该用4个八进制文件来表示,没有显示的那个是第一位,用来设定一些特殊的权限,这个八进制数字的三个位是:SUID.SGID.stick-bit. SUID:当设置了SUID 位的文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权.如果所有者是 root 的话,那么执行人就有root权限了.这时该位将变成一个安全漏洞,因此不要轻易设置该位. SGID:该权限只对目录有效.目录被设置

特殊权限 SUID、SGID、Sticky

一. 前提 本篇主要讲解SUID, SGID, Sticky三个权限的基本原理和应用. 为什么要使用特殊权限? 比如系统中假如有超过四类人然而每一类人都需要一种独特权限.只有三种独特权限的基础权限系统就会明显不够用. 特殊权限可以扩展系统基础权限的功能,使得linux权限更加强大灵活. 在理解特殊权限之前,需要先具备几个关于安全上下文的认知: 前提:进程有属主和属组:文件有属主和属组: (1) 任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否拥有执行权限: (2) 启动为进程之

linux特殊权限SUID、SGID、SBIT

linux特殊权限SUID.SGID.SBIT 一.SUID 我们先来看一个文件,如下: [[email protected] ~]# ll /usr/bin/passwd -rwsr-xr-x. 1 root root 25980 2月  22 2012 /usr/bin/passwd 可以看到/usr/bin/passwd这个文件状态是"-rwsr-xr-x",而不是我们平时所熟悉的"-rwxr-xr-x",那么当s出现在文件拥有者的x权限上时,此时就被称为SE

Linux文件系统上的特殊权限(SUID、SGID、Sticky)

Linux文件系统上的特殊权限(SUID.SGID.Sticky) SUID: 任何一个可执行程序文件能不能启动为进程:取决于发起者对程序文件是否有执行权限: 启动为进程之后,其属主不是发起者,而程序文件自己的属主:这种机制即为SUID: 权限设定: chmod u+s FILE... chmod u-s FILE... 注意: s: 属主原本拥有x权限: S: 属主原本无x权限: SGID: 默认情况下,用户创建文件时,其属级为此用户所属的基本组: 一旦某目录被设定了SGID权限,则对此目录拥

文件的三种特殊权限——suid、sgid和粘滞位(sticky)

文件的正常权限是首选对用户进行分组:文件属主,文件属组和其它.然后每组类用户对文件具有三种基本的权限:r,w,x.除了这些正常的权限设置,还可以设置三种特殊权限. 1. suid.任何用户执行设置有该权限的文件后,不再以用户自己的身份作为进程的属主,而是以该执行文件的属主作为进程的属主.这种权限的实质就是让执行该文件的用户,在进程运行过程中被授予文件属主的身份. 举例: -rwsr-xr-x. 1 root root 48568 Sep 10 14:24 /tmp/cat 任何用户运行cat时,

[8-30]Linux文件系统上的特殊权限(SUID、SGID、Sticky)

知识储备 权限模型 对于某个文件而言,Linux对3类对象分别定义了3种不同的权限: 3类对象:属主u.属组g.其他o 3种权限:读权限r.写权限w.执行权限x A目录中有a.txt这个文件,用户能否删除这个文件取决于用户是否对A目录有写权限,而不是对a.txt有没有写权限,谨记! 进程的安全上下文 每个进程也有属主.属组,进程需要访问的文件也有属主.属组 默认情况下进程的属主是进程发起者这个用户 进程的属组是这个用户的基本组 其实除了rwx3类权限,Linux下还有特殊的权限模型SUID.SG