当传入的电子邮件通过/ etc / aliases到达Solaris 10计算机时,我有一个程序被调用。 到目前为止,获得sendmail执行这个程序的唯一方法是将setuid位设置为root。 即使在另一个组上设置了读/执行,sendmail仍然无法执行我的程序,setuid位设置为root。
我发现sendmail在Solaris 10上作为守护程序用户运行。
我想避免在我的可执行文件上使用setuid root并使用sendmail来执行我的程序。 有什么我错过了正确设置权限?
是二进制setuid根或setuid“守护进程”?
尝试将二进制的所有者更改为“守护进程”。 根据文件(重点增加),这可能会起作用;
在可执行文件上设置setuid(设置用户标识)权限时,运行此文件的进程将根据文件的所有者 (通常是root) 授予访问权限 ,而不是创build进程的用户。 此权限允许用户访问通常只能由所有者访问的文件和目录。
@Daywalker如上所述,“ sudo ”不是随Solaris 10一起提供的。然而,“ pfexec ”( c0t0d0.org的快速入门指南 )