suid 的替代品,适用于脚本和解释语言

suid 的替代品,适用于脚本和解释语言

在 Unix(包括 Gnu/Linux)上,suid/sgid(或文件功能)是唯一的、本机的(所有其他方式都使用这种方式)提升权限的方式。

作为系统管理员,我喜欢编写脚本,因为它们很简单并且非常适合任务。 但是,脚本和其他解释语言不支持 suid 和 sgid。

因此我想找到一些替代方案。 (我不介意一般解决方案或特殊情况)。

答案1

方法有很多种,这里有一些:

  • sudo以临时方式使用。管理员(拥有完全sudo权限)可以使用它。
  • 配置/etc/sudoers, 以允许特定脚本运行sudo(无需密码,或由任何用户运行)。
  • 如果您只想绑定到低编号端口,则使用authbind.
  • 用不同的语言编写,编译为静态链接的可执行文件。go,很好,很容易使用。
  • 编写一个启动器来执行特权操作,并在exec新进程运行脚本之前放弃特权。

相关内容