set_uid

运行一个命令的时候,相当于这个命令的所有者,而不是执行者的身份。

suid的授权方法

suid     权限字符s(S),用户位置上的x位上设置。
授权方法:chmod passwd
chmod u+s passwd

suid的作用

1.让普通用户拥有二进制文件的所属主权限,二进制文件需要有执行权限。
2.如果设置的二进制文件没有执行权限,那么suid的权限显示就是大S。
3.特殊权限suid仅对二进制可执行程序有效,其他文件或目录则无效。
4.如果普通用户需要操作没有权限的文件,为对应的命令赋予Suid权限。
注意: suid双刃剑, 是一个比较危险的功能, 对系统安全有一定的威胁。

set_gid

运行一个命令的时候,相当于是这个命令所在的用户组

sgid授权方法

suid     权限字符s(S),取决于属组位置上的x。
授权方法:chmod directory
chmod g+s directory

sgid作用

1.针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
2.当某个目录设置了sgid后,在该目录中新建的文件不在是创建该文件的默认所属组
3.使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单。

sticky粘滞位

sticky对目录有写权限的用户仅仅可以删除目录里属于自己的文件,不能删除其他用户的文件
系统中存在的/tmp目录是经典的粘滞位目录,谁都有写权限,因此安全成问题,常常是木马第一手跳板。

sticky授权方法

粘滞位      权限字符t(T),其他用户位的x位上设置。
授权方法:chmod /tmp
chmod o+t /tmp

sticky作用

1.让多个用户都具有写权限的目录,并让每个用户只能删自己的文件。
2.特殊sticky目录表现在others的x位,用小t表示,如果没有执行权限是T
3.一个目录即使它的权限为"777"如果是设置了粘滞位,除了目录的属主和"root"用户有权限删除,除此之外其他用户都不允许删除该目录。

查看隐藏属性

[root@Test01 ~]# lsattr /tmp
-------------e- /tmp/100m
其中e为默认值

修改隐藏属性chattr

)    使用chattr修改
+增加,-减少,=设置仅有 ) 相关参数如下
a 只允许向文件中增加内容(包含root用户)例:chattr +a a.txt
i 不允许修改文件内容(包含root用户) 例:chattr +i a.txt
A 文件或目录每次被访问不会修改atime。可避免I/O过度访问磁盘
s 若删除,则从磁盘空间删除
c 对文件自动压缩,读取是自动解压
u 若删除,还在磁盘中,可以恢复文件
a:让文件或目录仅可追加内容
i:不得任意更动文件或目录 //创建文件并设置属性
[root@xuliangwei ~]# touch file_a file_i
[root@xuliangwei ~]# lsattr file_a file_i
---------------- file_a
---------------- file_i //设置属性
[root@xuliangwei ~]# chattr +a file_a
[root@xuliangwei ~]# chattr +i file_i
[root@xuliangwei ~]# lsattr file_a file_i
-----a---------- file_a
----i----------- file_i //a权限, 无法覆盖写入和删除文件
[root@xuliangwei ~]# echo "aa" > file_a
bash: file_a: Operation not permitted
[root@xuliangwei ~]# rm -f file_a
rm: cannot remove ‘file_a’: Operation not permitted //a权限, 只能追加, 适用于日志文件
[root@xuliangwei ~]# echo "aa" >> file_a //i权限, 无法写入, 无法删除
[root@xuliangwei ~]# echo "i" > file_i
bash: file_i: Permission denied
[root@xuliangwei ~]# echo "i" >> file_i
bash: file_i: Permission denied
[root@xuliangwei ~]# rm -f file_i
rm: cannot remove ‘file_i’: Operation not permitted //解除限制
[root@tianyun ~]# chattr -a file100
[root@tianyun ~]# chattr -i file200

进程掩码umask

umask用于控制系统权限, 默认系统权限较大, 需要靠Umask来变更权限
默认新建文件,系统默认最大权限为666
默认新建目录,系统默认最大权限是777

我们在新建文件和目录的默认权限会受到umask的影响, umask表示要减掉的权限。
创建目录权限值为777-umask
创建普通文件权限值为644-umask

umask涉及到的相关文件/etc/bashrc /etc/profile ~/.bashrc ~/.bash_profile

注意umask影响的范围
shell (vim,touch) --umask--> 新文件或目录权限
vsftpd --umask--> 新文件或目录权限
samba --umask--> 新文件或目录权限
useradd --umask--> 用户 HOME

.假设umask值为:(所有位为偶数)
//文件的起始权限值
- = .假设umask值为:(其他用户组位为奇数)
//计算出来的权限。由于umask的最后一位数字是5,所以,在其他用户组位再加1。
- = .默认目录权限计算方法
- = umask //umask所有位全为偶数时
示例:mkdir d044 //目录733
示例:touch f044 //文件622 umask //umask值的部分或全部位为奇数时
示例:mkdir d023 //目录754
示例:touch f023 //文件644 umask //umask值的所有位为奇数时
示例:mkdir d035 //目录742
示例:touch f035 //文件642
示例1: 在shell进程中创建文件
//查看当前用户的umask权限
[root@xuliangwei ~]# umask [root@xuliangwei ~]# touch file0022
[root@xuliangwei ~]# mkdir dir0022
[root@xuliangwei ~]# ll -d file0022 dir0022/
drwxr-xr-x root root Jan : dir0022/
-rw-r--r-- root root Jan : file0022
示例2: 修改shell umask值(临时生效)
[root@xuliangwei ~]# umask
[root@xuliangwei ~]# mkdir dir000
[root@xuliangwei ~]# touch file000
[root@xuliangwei ~]# ll -d dir000 file000
drwxrwxrwx root root Jan : dir000
-rw-rw-rw- root root Jan : file000
示例3: 修改shell umask值(永久生效, 强烈不建议修改)
[root@xuliangwei ~]# vim /etc/profile
if [ $UID -gt ] && [ "`id -gn`" = "`id -un`" ]; then
umask
else
umask
fi //立即在当前 shell 中生效
[root@xuliangwei ~]# source /etc/profile
示例4: 通过umask决定新建用户HOME目录的权限
[root@xuliangwei ~]# vim /etc/login.defs
UMASK
[root@xuliangwei ~]# useradd dba
[root@xuliangwei ~]# ll -d /home/dba/
drwx------. dba dba 月 : /home/dba/ [root@tianyun ~]# vim /etc/login.defs
UMASK
[root@xuliangwei ~]# useradd sa
[root@xuliangwei ~]# ll -d /home/sa/
drwxrwxrwx. sa sa 月 : /home/sa/

特殊权限练习题

创建三个用户, 分别为curlylarrymoe这些用户都是stooges组的成员。
这些用户帐号密码都为password
1.要求以上用户和组可以在/home/stooges目录里访问,创建,删除文件
2.其他用户一律不允许访问该目录
3.在该目录下新建的文件会自动属于stooges组拥有

//创建用户,组
useradd curly
useradd larry
useradd moe
groupadd stooges //创建密码
echo "password" |passwd --stdin moe
echo "password" |passwd --stdin larry
echo "password" |passwd --stdin curry //将用户加组
gpasswd -a larry stooges
gpasswd -a moe stooges
gpasswd -a curly stooges //创建目录并配置权限
mkdir /home/stooges
chmod /home/stooges
chown .stooges /home/stooges
chmod g+s /home/stooges

linux用户权限 -> 系统特殊权限的更多相关文章

  1. Linux - 用户管理与文件权限

    目录 Linux - 用户管理与文件权限 创建普通用户 切换用户 userdel删除用户 sudo 命令 文件与目录权限 Linux权限的解读 目录权限 查看用户权限的命令 文件权限 修改权限的命令 ...

  2. Linux 用户管理 与 文件权限

    Linux 用户管理 与 文件权限 用户组操作 1.groupadd命令 groupadd [-g -o] gid group 各个选项具体含义如下: -g:指定新建用户组的GID号,该GID号必须唯 ...

  3. linux用户管理和文件权限

    linux用户管理和文件权限 新建用户:useradd ftpuser      useradd -g gxx userxx修改密码:passwd ftpuser新增用户组:# groupadd gr ...

  4. linux用户权限 -> 系统基本权限

    比如rwxr-xr-x linux中正是这9个权限位来控制文件属主(User).属组(Group).其他用户(Other)基础权限. 用户对资源来说, 有三种角色 User(u): 属主用户(文件所有 ...

  5. Linux用户体系和文件权限总结

    一.           Linux系统用户和用户组相关文件 1.  /etc/passwd文件 这个passwd文件是Linux用户信息文件.文件格式说明如下: root:x:0:0:root:/r ...

  6. linux用户身份和文件权限

    1.用户身份与能力 root管理员是linux 的超级用户,他拥有系统的所有权,能够管理系统的各项功能,如添加/删除用户,启动/关闭服务进程,开启/禁用硬件设备…… "Linux系统中的管理 ...

  7. Linux 用户身份与进程权限

    在学习 Linux 系统权限相关的主题时,我们首先关注的基本都是文件的 ugo 权限.ugo 权限信息是文件的属性,它指明了用户与文件之间的关系.但是真正操作文件的却是进程,也就是说用户所拥有的文件访 ...

  8. 笔记:Linux用户管理(补充)、权限管理、内存管理、网络管理、渗透常用命令

    一.用户管理(补充) 添加用户:useradd [选项] 用户名 useradd -u 5000 -g demogroup -G root -d /home/demo -s /bin/bash dem ...

  9. Linux用户身份与文件权限学习笔记

    用户身份 管理员UID为0:系统的管理员用户 系统用户UID为1~999:服务程序会有独立的系统用户负责运行:防止被黑客入侵进行提权,并有效控制被破坏的范围 普通用户UID从1000开始:是由管理员创 ...

随机推荐

  1. [SDOI2013]项链

    description luogu 最近,铭铭迷恋上了一种项链.与其他珍珠项链基本上相同,不过这种项链的珠子却与众不同,是正三菱柱的泰山石雕刻而成的. 三菱柱的侧面是正方形构成的,上面刻有数字. 能够 ...

  2. Palindrome Number - LeetCode

    目录 题目链接 注意点 解法 小结 题目链接 Palindrome Number - LeetCode 注意点 负数肯定是要return false的 数字的位数要分奇数和偶数两种情况 解法 解法一: ...

  3. 美团codeM之美团代金券

    前天做了下美团的一个codeM比赛的资格赛,遇到一个题目挺有意思的,所以现在做一下总结. 题目描述 美团的每一个用户都有一个用户代金券的消费记录日志,每位用户都能购买若干种代金券,但是每一种代金券最多 ...

  4. 如何优雅的将DTO转化成BO

    用于网络传输的对象,我们都认为他们可以当做是DTO对象,DTO为系统与外界交互的模型对象,那么肯定会有一个步骤是将DTO对象转化为BO对象或者是普通的entity对象,让service层去处理. 网上 ...

  5. bzoj 1825: [JSOI2010]蔬菜庆典

    1825: [JSOI2010]蔬菜庆典 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 112  Solved: 45[Submit][Status][ ...

  6. 【费用流】【网络流24题】【P4013】 数字梯形问题

    Description 给定一个由 \(n\) 行数字组成的数字梯形如下图所示. 梯形的第一行有 \(m\) 个数字.从梯形的顶部的 \(m\) 个数字开始,在每个数字处可以沿左下或右下方向移动,形成 ...

  7. css基础--常用css属性01

    1  背景相关 背景颜色 background-color     = 颜色名称/rgb值/十六进制值 背景图片 background-image = url('') 背景图片平铺方式 backgro ...

  8. P4711 「化学」相对分子质量

    P4711 「化学」相对分子质量 给你一个字符串让你输出相对分子质量(弱智字符串模拟) 我比赛tm调了两个半小时啊QAQ 希望以后能增加代码力吧,纪念挂代码 Code #include<iost ...

  9. Java基础-进程与线程之Thread类详解

    Java基础-进程与线程之Thread类详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.进程与线程的区别 简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程 ...

  10. git使用初探

    1.创建文件夹,初始化git 比如在 E:\Study\xuexixuexi\guns 下创建一个guns的文件夹 使用cmd进入该文件夹:输入git init git init 2.添加远程仓库: ...