13、特殊权限、if语句
来源:互联网 发布:如何用java编写小游戏 编辑:程序博客网 时间:2024/05/16 17:28
linux文件系统上的特殊权限
SUID,SGID,Sticky
安全上下文
进程有属主和属组;文件有属主和属组
任何一个可执行文件,可否启动为进程,取决发起者是否有执行权限
启动为进程后,其属主为发起者,属组为发起者所属组
进程访问目标文件时的权限,取决于进程发起者属主
先对比进程发起者是否属于文件属主
再对比进程发起者是否属于文件属组
后应用文件“其它”权限
SUID权限:提权执行
拥有SUID权限程序,被发起者启动为进程后,进程属主为本身程序文件属主
权限设定
chmod u+s file:file属主x执行变为s权限,S为没执行权限
chmod u-s file
SGID权限
默认情况下,用户创建文件时,其属组为用户基本组
目录设定SGID权限后,目录下所创建的文件属组都为此目录的属组
权限设定
chmod g+s DIR:DIR属组x执行变为s权限,S为没执行权限
chmod g-s DIR
Sticky权限
对于多人可写目录,设置Sticky权限后,用户只对自己的文件可写
权限设定
chmod o+t DIR:DIR其它x执行变为t权限,T为没执行权限
chmod o-t DIR
权限设置
7777:4SUID,2SGID,1Sticky;777
bash脚本编辑:if
选择执行
if 条件判断;then
COMMAND...
fi
if 条件判断;then
COMMAND...
lese
COMMAND...
fi
例:脚本加user来创建用户并添加密码
#!/bin/bash
#
if [ $# -lt 1 ];then
echo "jia can shu";
exit 1;
fi
if id $1 &> /dev/null;then
echo "$1 exists"
else
useradd $1
[ $? -eq 0 ] && echo $1 | passwd --stdin $1 &> /dev/null && echo "yes" || exit 100
fi
SUID,SGID,Sticky
安全上下文
进程有属主和属组;文件有属主和属组
任何一个可执行文件,可否启动为进程,取决发起者是否有执行权限
启动为进程后,其属主为发起者,属组为发起者所属组
进程访问目标文件时的权限,取决于进程发起者属主
先对比进程发起者是否属于文件属主
再对比进程发起者是否属于文件属组
后应用文件“其它”权限
SUID权限:提权执行
拥有SUID权限程序,被发起者启动为进程后,进程属主为本身程序文件属主
权限设定
chmod u+s file:file属主x执行变为s权限,S为没执行权限
chmod u-s file
SGID权限
默认情况下,用户创建文件时,其属组为用户基本组
目录设定SGID权限后,目录下所创建的文件属组都为此目录的属组
权限设定
chmod g+s DIR:DIR属组x执行变为s权限,S为没执行权限
chmod g-s DIR
Sticky权限
对于多人可写目录,设置Sticky权限后,用户只对自己的文件可写
权限设定
chmod o+t DIR:DIR其它x执行变为t权限,T为没执行权限
chmod o-t DIR
权限设置
7777:4SUID,2SGID,1Sticky;777
bash脚本编辑:if
选择执行
if 条件判断;then
COMMAND...
fi
if 条件判断;then
COMMAND...
lese
COMMAND...
fi
例:脚本加user来创建用户并添加密码
#!/bin/bash
#
if [ $# -lt 1 ];then
echo "jia can shu";
exit 1;
fi
if id $1 &> /dev/null;then
echo "$1 exists"
else
useradd $1
[ $? -eq 0 ] && echo $1 | passwd --stdin $1 &> /dev/null && echo "yes" || exit 100
fi
阅读全文
0 0
- 13、特殊权限、if语句
- shell中if语句特殊参数
- 特殊权限
- 特殊权限
- IF语句
- if语句
- if 语句
- if语句
- IF 语句
- #if语句
- if语句
- if语句
- if语句
- if语句
- if语句
- if语句
- if语句
- if语句
- 服务器模型——从单线程阻塞到多线程非阻塞(上)
- 事件分发前的拦截过程
- IntelliJ IDEA创建java项目
- 每天一个linux命令(34):du 命令
- java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.String
- 13、特殊权限、if语句
- java poi 导出excel ExcelUtils
- 深夜一家面馆里所发生的一幕
- ROS想说爱你不容易 英特尔开源ROS移动机器人平台丨机器人大家说
- npm run dev error [npm ERR! code ELIFECYCLE]
- Java中数字处理去掉末尾的0
- 用Vue.js开发一个电影App的前端界面
- 自己学习html5培训到底好就业吗?
- npm 私服(上)