济宁城乡住房建设网站,国家企业官方网站查询系统,怎么做返利网站,南京网站建站公司Day15-Linux系统特殊权限知识精讲 为什么创建文件默认权限为644#xff0c;目录为755#xff1f;#xff1f;#xff1f;
umask 权限掩码。控制系统的文件和目录的默认权限。
[rootoldboy oldboy]# umask
0022针对文件来说#xff1a;默认权限计算方法 6 6 6
0 2 2 - … Day15-Linux系统特殊权限知识精讲 为什么创建文件默认权限为644目录为755
umask 权限掩码。控制系统的文件和目录的默认权限。
[rootoldboy oldboy]# umask
0022针对文件来说默认权限计算方法 6 6 6
0 2 2 -
6 4 4 ###系统的文件默认权限
umask掩码的3位每一位数字是否有【奇数】如果有奇数奇数位加1
测试
[rootoldboy oldboy]# umask 021
[rootoldboy oldboy]# umask
0021
[rootoldboy oldboy]# touch f021
[rootoldboy oldboy]# ls -l f021
-rw-r--rw-. 1 root root 0 5月 21 10:40 f021计算 6 6 6
0 2 1 -
6 4 5 ###系统的文件默认权限
0 0 1
6 4 6
测试
[rootoldboy oldboy]# umask 033
[rootoldboy oldboy]# umask
0033
[rootoldboy oldboy]# touch f033
[rootoldboy oldboy]# ls -l f033
-rw-r--r--. 1 root root 0 5月 21 10:42 f033结论
文件默认权限结论
权限从666开始计算。如果偶数正常做减法。如果是奇数奇数位加一。
针对目录默认权限。
权限从777开始计算。和掩码正常做减法。
测试
[rootoldboy oldboy]# mkdir d033
[rootoldboy oldboy]# ls -ld d033
drwxr--r--. 2 root root 6 5月 21 10:44 d033
[rootoldboy oldboy]# umask 045
[rootoldboy oldboy]# mkdir d045
[rootoldboy oldboy]# ls -ld d045
drwx-wx-w-. 2 root root 6 5月 21 10:45 d045UID大于199并且用户和组同名umask为002
cat /etc/bashrc
if [ $UID -gt 199 ] [ /usr/bin/id -gn /usr/bin/id -un ];
thenumask 002
elseumask 022
fi/home/oldboy 默认700 #控制/etc/login.defs
想一想为什么系统把默认权限定为
默认644目录755呢 #安全临界值
【有关权限生产环境应用案例及思路:】
运营电商 jd站点目录给什么权限安全呢
目录755
[rootoldboy oldboy]# mkdir /data/html -p
[rootoldboy oldboy]# ls -ld /data/html/
drwxr-xr-x. 2 root root 6 5月 21 11:07 /data/html/web服务运行时候有一个【虚拟用户www】
1虚拟用户www 可进入可查看程序文件不可以写、删文件。
[rootoldboy oldboy]# useradd www
[rootoldboy oldboy]# chown -R www.www /data/html
[rootoldboy oldboy]# ls -ld /data/html
drwxr-xr-x. 2 www www 6 5月 21 11:07 /data/html #可以写、删文件普通站点目录【用户和组都是root,权限755】
[rootoldboy oldboy]# ls -ld /data/html
drwxr-xr-x. 2 root root 6 5月 21 11:07 /data/html/[rootoldboy oldboy]# mkdir /data/html/upload -p ###存放图片文件
[rootoldboy oldboy]# ls -ld /data/html/upload/
drwxr-xr-x. 2 root root 6 5月 21 11:15 /data/html/upload/图片、文件目录授权【用户和组www,权限755】
[rootoldboy oldboy]# chown -R www.www /data/html/upload/
[rootoldboy oldboy]# ls -ld /data/html/upload/
drwxr-xr-x. 2 www www 6 5月 21 11:15 /data/html/upload/解决upload上传目录安全 不让上传程序控制这个目录上传的内容只能是.jpg,.zip。 不让执行nginx:针对upload访问的时候除了.jpg.zip之外不提供访问。 不让执行动态服务器和静态服务器分离访问的时候只有静态服务器不安装PHP,java,python 不让执行磁盘上挂载的时候设置禁止程序运行二进制程序。
不管什么业务都没有改程序文件的需求。
程序文件 [644 root root]
程序文件 [644 www www] #不推荐
三剑客sed 企业木马案例
[rootoldboy oldboy]# touch suid.txt
[rootoldboy oldboy]# ls -l suid.txt
-rw-r--r--. 1 root root 0 5月 21 11:55 suid.txtlinux特殊权限位
[suid]
1suid(setuid)位通过S字符标识。
2存在于基本权限的用户权限位的x权限对应的位置。
3如果用户权限位对应的x权限位上有x权限则suid就用小写的s标识。
4suid的s对应的数字权限为4。
5完整权限用八进制数4000表示。
创建文件备用测试
[rootoldboy oldboy]# touch suid.txt
[rootoldboy oldboy]# ls -l suid.txt
-rw-r--r--. 1 root root 0 5月 21 11:55 suid.txt数字权限设置suid测试
chmod 4644 suid.txt[rootoldboy oldboy]# chmod 4644 suid.txt
[rootoldboy oldboy]# ls -l suid.txt
-rwSr--r--. 1 root root 0 5月 21 11:55 suid.txt
[rootoldboy oldboy]# chmod ux suid.txt
[rootoldboy oldboy]# ls -l suid.txt
-rwsr--r--. 1 root root 0 5月 21 11:55 suid.txt取消设置suid测试
[rootoldboy oldboy]# chmod 644 suid.txt
[rootoldboy oldboy]# ls -l suid.txt
-rw-r--r--. 1 root root 0 5月 21 11:55 suid.txt字符设置suid
chmod us suid.txt
ls -l suid.txt
chmod u-s suid.txt
ls -l suid.txt为什么会有SUID
例子:普通用户修改密码。
[oldboyoldboy ~]$ passwd
更改用户 oldboy 的密码 。
为 oldboy 更改 STRESS 密码。
当前UNIX 密码
新的 密码
重新输入新的 密码
passwd所有的身份验证令牌已经成功更新。1修改密码passwd 修改/etc/shadow文件
oldboy用户使用passwd命令修改/etc/shadow文件来实现修改密码的。
ls -l /etc/shadow
[oldboyoldboy ~]$ ls -l /etc/shadow
----------. 1 root root 2484 5月 21 12:10 /etc/shadow传统权限分析oldboy是其他用户修改/etc/shadow权限—没有权限修改。。
事实呢改了
suid的特殊作用可以绕过基础权限体系可以修改没有权限修改的文件。
基于二进制命令的。
[oldboyoldboy ~]$ ls -l which passwd
-rwsr-xr-x. 1 root root 27856 4月 1 2020 /bin/passwd1给一个命令设置suid以后所有使用这个命令的用户都拥有和这个命令对应的用户的权限。
问题 cd 不好用 1bash内置命令C6系统中没有对应文件。 2有对应文件。授权系统文件的cd执行cd很可能执行的是bash内置的cd。 3
[rootoldboy ~]# which cd
/usr/bin/cd
[rootoldboy ~]# cd /usr/bin/
[rootoldboy bin]# mv cd cdd
[rootoldboy bin]# cd /root
[rootoldboy ~]# ls cdd
ls: 无法访问cdd: 没有那个文件或目录
[rootoldboy ~]# cd /usr/bin
[rootoldboy bin]# ls cdd
cdd小结
1suid功能是是针对二进制命令或程序的不能用在shell等类似脚本文件上。
2用户或属主对应的前三位权限的x位上如果有s(S)就表示具备 suid 权限。
3suid的作用就是让普通用户可以在执行某个设置了suid位的命令或程序时拥有和命令对应属主(一般为 root 管理员)一样的身份和权限(默认)。
4二进制命令程序需要有可执行权限x配合才行。
5suid对应的身份和权限仅在程序命令执行过程中有效。
6suid 是一把双刃剑是一个比较危险的功能对系统安全有一定的威胁企业里用户授权可以使用 sudo 等替代 suid 功能。授权 suid 破坏性
7在进行安全优化时系统中默认设置了suid权限的命令要取消掉。
6最后授权suid破坏性 [rootoldboy bin]# find /bin/ -type f -perm 4755|xargs ls -l
-rwsr-xr-x. 1 root root 73888 8月 9 2019 /bin/chage
-rwsr-xr-x. 1 root root 57656 8月 9 2019 /bin/crontab
-rwsr-xr-x. 1 root root 32096 10月 31 2018 /bin/fusermount
-rwsr-xr-x. 1 root root 78408 8月 9 2019 /bin/gpasswd
-rwsr-xr-x. 1 root root 44264 4月 1 2020 /bin/mount
-rwsr-xr-x. 1 root root 41936 8月 9 2019 /bin/newgrp
-rwsr-xr-x. 1 root root 27856 4月 1 2020 /bin/passwd
-rwsr-xr-x. 1 root root 23576 4月 1 2020 /bin/pkexec
-rwsr-xr-x. 1 root root 32128 4月 1 2020 /bin/su
-rwsr-xr-x. 1 root root 31984 4月 1 2020 /bin/umountsuid生产场景实际用途。
所有普通用户都能用到普通用户想修改没有权限文件时候使用。命令是没有破坏作用的。比如:ping,passwd
sgid权限知识
对于二进制命令或者程序来说sgid的功能和suid基本相同唯一的区别是suid是获得命令所属用户的身份和权限而sgid是获得命令的所属用户组的身份和权限因此有关sgid对于二进制命令或者程序方面的知识就不详细叙述了。
1.suid核心知识小结
1与suid不同的是sgid既可以针对文件也可以针对目录设置
2sgid的权限是针对用户组权限位的。
对于文件来说sgid的功能如下
1sgid仅对二进制命令及程序有效。
2二进制命令或程序也需要有可执行权限x配合。
3执行命令的任意用户可以获得该命令程序执行期间所属组的身份和权限。
理解sgid:
locate读/var/lib/mlocate/mlocate.db updatedb
[rootoldboy bin]# ls -l /var/lib/mlocate/mlocate.db
-rw-r-----. 1 root slocate 1423565 5月 21 03:23 /var/lib/mlocate/mlocate.db结论没有权限可以查询/var/lib/mlocate/mlocate.db
事实上是可以查的。
[oldboyoldboy ~]$ locate cp原因就是locate命令被设置了sgid
[oldboyoldboy ~]$ ls -l which locate
-rwx--s--x. 1 root slocate 40520 4月 11 2018 /bin/locate测试取消sgid
[rootoldboy bin]# chmod g-s /bin/locate
[rootoldboy bin]# ls /bin/locate -l
-rwx--x--x. 1 root slocate 40520 4月 11 2018 /bin/locate查看
[oldboyoldboy ~]$ locate cp
locate: 无法执行 stat () /var/lib/mlocate/mlocate.db: 权限不够参考解答
[rootoldboy ~]# mkdir /home/admins #创建共享目录admins。
[rootoldboy ~]# groupadd adminuser #添加用户组adminuser。
[rootoldboy ~]# ls -ld /home/admins
drwxr-xr-x. 2 root root 4096 Apr 30 16:54 /home/admins
[rootoldboy ~]# chgrp adminuser /home/admins/ #给adminis目录授权adminuser用户组。
[rootoldboy ~]# ls -ld /home/admins
drwxr-xr-x. 2 root adminuser 4096 Apr 30 16:54 /home/admins #查看授权结果。
[rootoldboy ~]# touch /home/admins/oldboy.txt #创建测试文件。
[rootoldboy ~]# ls -l /home/admins/对于目录继承目录所属的组来说sgid 的功能如下:
1Linux里默认情况所有用户创建文件默认用户和组都是自身。
2sgid可以让用户在此目录下创建的文件和目录具有和此目录相同的用户组设置。
setgid位主要用在目录中在为某个目录设置了setgid位以后在该目录中新创建的文件具有该目录的所属组权限而不是创建该文件的用户的默认所有者。这样使得在多个用户之间共享一个目录中的文件变得简单。
来看一道RHCE认证考试题了解即可。
创建共享目录/home/admins要求属组为adminuseradminuser组成员对admins目录有写入、读取和执行的权限其他所有用户没有任何权限(root除外)在/home/admins目录中创建的文件会自动继成adminuser组。
参考解答
[rootoldboy ~]# mkdir /home/admins #创建共享目录admins。
[rootoldboy ~]# groupadd adminuser #添加用户组adminuser。
[rootoldboy ~]# ls -ld /home/admins
drwxr-xr-x. 2 root root 4096 Apr 30 16:54 /home/admins
[rootoldboy ~]# chgrp adminuser /home/admins/ #给adminis目录授权adminuser用户组。
[rootoldboy ~]# ls -ld /home/admins
drwxr-xr-x. 2 root adminuser 4096 Apr 30 16:54 /home/admins #查看授权结果。
[rootoldboy ~]# touch /home/admins/oldboy.txt #创建测试文件。
[rootoldboy ~]# ls -l /home/admins/
total 0
-rw-r--r--. 1 root root 0 Apr 30 19:59 oldboy.txt #文件默认用户和组都是root。
[rootoldboy ~]# chmod 2770 /home/admins #授权sgid权限给admins目录。
[rootoldboy ~]# ls -ld /home/admins/
drwxrws---. 2 root adminuser 4096 Apr 30 20:10 /home/admins/ #查看授权结果。
[rootoldboy ~]# touch /home/admins/newfile.txt #在创建新文件。
[rootoldboy ~]# ls -l /home/admins/
total 0
-rw-r--r--. 1 root adminuser 0 Apr 30 20:04 newfile.txt
#新创建的文件用户组为adminuser了而非默认的root了。
-rw-r--r--. 1 root root 0 Apr 30 19:59 oldboy.txt
整个配置过程已满足题意需求。
粘滞位 sticky Bit(sbit)知识
粘贴位的功能现在很少用了不过对于像/tmp 目录这样的是整个系统用户临时文件存放地还是有点意义。 一个目录既使它的所有权限都开放了即为rwxrwxrwx而同时设置了粘贴位那么除非目录的属主和 root用户有权限删除它除此之外其他用户是不能删除这个目录的。
粘贴位的用途一般是把一个文件夹的权限都特开然后来共享文件像/tmp 目录一样。虽然方便但是带来了一定的安全隐患生产环境应禁止设置粘滞位权限。
特殊权限位对比说明表格
类别SUIDSGIDsticky字符表示SST占据位置基本权限x位基本权限x位基本权限x位基本权限位有xsst数字表示421八进制表示400020001000特护权限作用针对用户位针对用户组其它用户
特殊权限位对比说明表格 占据位置前三位中 中三位中 后三位中
方便但是带来了一定的安全隐患生产环境应禁止设置粘滞位权限。
特殊权限位对比说明表格
类别SUIDSGIDsticky字符表示SST占据位置基本权限x位基本权限x位基本权限x位基本权限位有xsst数字表示421八进制表示400020001000特护权限作用针对用户位针对用户组其它用户
特殊权限位对比说明表格 占据位置前三位中 中三位中 后三位中