美文网首页
再谈文件权限

再谈文件权限

作者: 诺之林 | 来源:发表于2021-03-11 22:03 被阅读0次

本文的主线 准备 => setuid => sticky

准备

vim app.js
var fs = require('fs')

fs.writeFile('app.txt', 'hello node', function() {
    console.log('finish')
})

setuid

setuid: run with the privileges of the file owner

whoami
# op

ls -l `which node`
# -rwxr-xr-x 1 op op 45626872 Jan  7  2020 /home/op/.nvm/versions/node/v12.14.1/bin/node

node app.js
# finish

ls -l app.txt
# -rw-rw-r-- 1 op op 10 Mar 11 20:36 app.txt
sudo chown root:root `which node`

ls -l `which node`
# -rwxr-xr-x 1 root root 45626872 Jan  7  2020 /home/op/.nvm/versions/node/v12.14.1/bin/node

node app.js
# finish

ls -l app.txt
# -rw-rw-r-- 1 op op 10 Mar 11 20:42 app.txt
sudo chmod u+s `which node`
sudo chmod 4755 `which node`

ls -l `which node`
# -rwsr-xr-x 1 root root 45626872 Jan  7  2020 /home/op/.nvm/versions/node/v12.14.1/bin/node

node app.js
# finish

ls -l app.txt
# -rw-rw-r-- 1 root op 10 Mar 11 21:10 app.txt

系统应用: sudo

sudo chown `whoami`:`whoami` `which node`

ls -l `which node`
# -rwxr-xr-x 1 op op 45626872 Jan  7  2020 /home/op/.nvm/versions/node/v12.14.1/bin/node

id
# uid=1000(op) gid=1000(op) groups=1000(op),27(sudo)

ls -l `which sudo`
# -rwsr-xr-x 1 root root 149080 Feb  1  2020 /usr/bin/sudo

sudo `which node` app.js
# finish

ls -l app.txt
# -rw-r--r-- 1 root root  10 Mar 11 21:12 app.txt

sticky

sticky: the files in that directory can only be removed by the owner

whomai
# op

mkdir public

touch public/op.txt

ls -l public
# -rw-rw-r-- 1 op op 0 Mar 11 21:19 op.txt
sudo useradd other

sudo su other

touch /home/op/public/other.txt
# touch: cannot touch '/home/op/public/other.txt': Permission denied

exit

chmod 777 public

sudo su other

touch /home/op/public/other.txt

ls -l /home/op/public
# -rw-rw-r-- 1 op    op    0 Mar 11 21:19 op.txt
# -rw-rw-r-- 1 other other 0 Mar 11 21:22 other.txt

rm /home/op/public/op.txt
whoami
# op

chmod +t public
chmod 1777 public

ls -l
# drwxrwxrwt 2 op op 4096 Mar 11 21:25 public

touch public/op.txt

ls -l public
# -rw-rw-r-- 1 op op 0 Mar 11 21:26 op.txt
sudo su other

rm /home/op/public/op.txt
# rm: cannot remove '/home/op/public/op.txt': Operation not permitted

系统应用: /tmp

whoami
# op

ls -l / | grep tmp
# drwxrwxrwt  11 root root       4096 Mar 11 21:26 tmp

touch /tmp/op.txt

ls -l /tmp/*.txt
# -rw-rw-r-- 1 op op 0 Mar 11 21:29 /tmp/op.txt

sudo su other

rm /tmp/op.txt
# rm: cannot remove '/tmp/op.txt': Operation not permitted

参考

相关文章

  • 再谈文件权限

    本文的主线 准备 => setuid => sticky 准备 setuid setuid: run with t...

  • Linux学习--文件权限

    February 1, 2017 常用的文件类型 文件权限 目录文件的权限 特殊权限 常用的文件类型 文件权限 目...

  • 第十六天课堂笔记 3月21号

    学习内容【文件】权限 【目录】权限***、 【文件】权限 【目录】权限*** 字符和数字(8进制)权限知识****...

  • 操作系统(5)——文件权限

    一、文件权限设置 1、文件权限概念: 2、文件权限设置 3、文件属主和属组设置

  • shell命令整理(四)之文件权限管理(下)

    文件权限--高级权限 高级权限的类型 设置权限方法 Set UID 1、SUID权限仅对命令文件(二进制文件)有效...

  • Linux--常用命令--权限问题

    一.权限 > 关于权限查看 文件类型 文件权限 个数 文件所属者 文件所属组 文件大小 - rw-...

  • 20170724 文件权限

    概要 linux文件权限linux文件特殊权限ACL 访问控制列表 一、linux文件权限 (一)linux文件属...

  • 预习2019-03-20

    #权限知识及应用实践 文件权限简介:Linux系统中的文件权限和文件对应的用户及用户组关联很大。 文件权限为说明 ...

  • 系统权限指令

    系统权限指令 chmod 改变文件或者文件的权限 2.其他权限管理命令chown 改变文件目录或者文件的...

  • Linux笔记(二)

    Linux用户权限 给文件修改权限 chmod 命令:给文件添加权限例如:将“test.txt”文件的权限设置为:...

网友评论

      本文标题:再谈文件权限

      本文链接:https://www.haomeiwen.com/subject/nmgoqltx.html