Unix 在root模式下自动运行脚本

Unix 在root模式下自动运行脚本,unix,minix,Unix,Minix,我是root用户。我想在以root模式登录后为所有用户自动运行脚本。我确实找到了为所有用户自动运行脚本的方法。但对于普通用户,权限被拒绝。有什么解决方法吗?您应该使用-您的命令在root模式下可用,不需要用户或组密码 Cmnd_Alias YCMD = /usr/local/somecommand username ALL=YCMD, NOPASSWD: YCMD 您应该使用-您的命令在root模式下可用,无需用户或组密码 Cmnd_Alias YCMD = /usr/local/somec

我是root用户。我想在以root模式登录后为所有用户自动运行脚本。我确实找到了为所有用户自动运行脚本的方法。但对于普通用户,权限被拒绝。有什么解决方法吗?

您应该使用-您的命令在root模式下可用,不需要用户或组密码

Cmnd_Alias YCMD = /usr/local/somecommand
username  ALL=YCMD, NOPASSWD: YCMD
您应该使用-您的命令在root模式下可用,无需用户或组密码

Cmnd_Alias YCMD = /usr/local/somecommand
username  ALL=YCMD, NOPASSWD: YCMD

确保该脚本归root所有,然后尝试设置:

setuid权限使可执行文件以所有者(本例中为root)的权限执行


但要小心您可能正在打开一个可以被滥用以获得根的孔。(但您尝试在root模式下由用户运行脚本的任何其他解决方案都会带来相同的风险。此解决方案不会像其他解决方案那样容易受到攻击)

请确保该脚本归root所有,然后尝试设置:

setuid权限使可执行文件以所有者(本例中为root)的权限执行


但要小心您可能正在打开一个可以被滥用以获得根的孔。(但您尝试在root模式下由用户运行脚本的任何其他解决方案都会带来相同的风险。此解决方案不会像其他解决方案那样容易受到攻击)

脚本由我的系统自动运行。在这种情况下,它会有帮助吗?您可以创建一个虚拟用户,在crontab或其他东西中运行“sudo/usr/local/somecommand”。这将潜在的滥用从“系统中的每个人”减少到“一个用户使用星号密码”。sudo还允许您清理环境变量和其他东西,以使运行特权代码更安全。sudo是你想要的。脚本由我的系统自动运行。在这种情况下,它会有帮助吗?您可以创建一个虚拟用户,在crontab或其他东西中运行“sudo/usr/local/somecommand”。这将潜在的滥用从“系统中的每个人”减少到“一个用户使用星号密码”。sudo还允许您清理环境变量和其他东西,以使运行特权代码更安全。sudo是您想要的。chown root.root script.sh表示root。root:未知用户名。我试过chown root script.sh。最后它什么也没做…@拉宾:是的。尝试替换冒号的点。chroot root:root script.sh…并替换
script.sh
为您的实际scriptFWIW-bash,可以说是unix世界中分布最广的shell将不再允许您像这样运行suid脚本。它有一大堆假支票,会妨碍你。不确定tcsh。但是,由于存在大量安全漏洞(读取环境变量并修改程序,利用在没有显式路径的情况下运行的程序(即导出路径=。:$PATH;ln-s/bin/bash ls;/run脚本,使用ls而不指定bin ls'))…强烈且一贯地建议所有脚本作者不要使用SUID脚本,除非你真的知道自己在做什么。嗯,我明白了。比如说,@Rabin,你的脚本做什么?为什么需要根模式?@Chris the root:root工作了,但权限仍然被拒绝。我正在使用Minix3。这会是一个问题吗?chown root.root script.sh says root.root:未知用户名。我尝试了chown root script.sh。最后它什么也没做…@Rabin Yes。尝试替换冒号的点。chroot root:root script.sh…并替换
script.sh
,替换实际的scriptFWIW-bash,可以说是unix世界中传播最广泛的shell,它不允许您运行这样的suid脚本更多。它有一系列的虚拟检查会阻碍您。不确定tcsh。但是,考虑到大量的安全漏洞(读取环境变量并修改程序,利用在没有显式路径的情况下运行的程序(即导出路径=。:$PATH;ln-s/bin/bash ls;/run脚本使用ls,但不指定bin ls'))…强烈且一贯地建议所有脚本作者不要使用SUID脚本,除非你真的知道自己在做什么。嗯,我明白了。比如说,@Rabin,你的脚本做什么?为什么需要根模式?@Chris the root:根模式工作了,但权限仍然被拒绝。我正在使用Minix3。这会是一个问题吗?