在 Unix(包括 Gnu/Linux)上,suid/sgid(或文件功能)是唯一的、本机的(所有其他方式都使用这种方式)提升权限的方式。
作为一名系统管理员,我喜欢编写脚本,因为它们很简单,并且非常适合任务。 但是 suid 和 sgid 对于脚本和其他解释型语言不适用。
因此,我想找到一些替代方案。(我不介意一般解决方案或特殊情况)。
在 Unix(包括 Gnu/Linux)上,suid/sgid(或文件功能)是唯一的、本机的(所有其他方式都使用这种方式)提升权限的方式。
作为一名系统管理员,我喜欢编写脚本,因为它们很简单,并且非常适合任务。 但是 suid 和 sgid 对于脚本和其他解释型语言不适用。
因此,我想找到一些替代方案。(我不介意一般解决方案或特殊情况)。
方法有很多种,这里有几个:
sudo
以特别的方式使用。这可以由管理员(具有完全sudo
权限)使用。/etc/sudoers
,以允许特定脚本运行sudo
(无需密码,或由任何用户)。authbind
.go
,安静好,易于使用。exec
在运行脚本的新进程之前,编写一个启动器来执行特权操作并删除特权。