gentos 执行sh文件_CentOS7 - 以其他用户身份运行二进制文件

本文介绍了如何在CentOS7上设置程序的SUID和SGID权限位,使得程序能以不同用户的权限运行。详细步骤包括使用ls查看文件权限,使用chown改变文件所有者,以及使用chmod设置SUID和SGID位,以实现无特权用户执行需要管理员权限的程序。
摘要由CSDN通过智能技术生成

以其他用户身份运行二进制文件

CentOS 上的每个程序都在用户帐户的环境中运行, 而不管该程序是由用户执行还是作为自动系统进程运行。但是, 有时我们希望程序以不同的限制运行, 并访问允许该帐户的这些权限。例如, 用户应该能够使用 passwd command 来重置其密码。该命令需要对/etc/passwd 的写入访问权限, 但我们不希望运行该命令的用户具有这样的访问权限。此配方教您如何设置程序的 SUID 和 SGID 权限位, 使其能够在不同用户的环境中执行。

准备

需要一个 CentOS 系统。还需要管理权限, 方法是使用根帐户登录或使用 sudo。

如何来做

请按照以下步骤操作, 以允许程序以其他用户的身份执行:

  • 使用 ls 命令标识文件的所有者和组详细信息。其输出中的第三个字段列出所有者, 第四个字段列出组:
ls -l myscript.sh
d4c63f60c71dda1aa80ba9c39c1425a6.png
  • "-L" 选项以长格式显示文件列表, 其中包括所有权信息
  • 如有必要, 请使用 chown 更改文件的所有权, 以便所有者是您希望脚本在其中执行其环境的所有者:
chown newuser:newgroup myscript.sh
  • 将 SUID 位设置为允许程序运行, 就像它的所有者调用它一样:
chmod u+s myscript.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值