我可以使脚本始终以root用户身份执行吗?

快乐开发者

不管谁执行脚本,如何使脚本以root用户身份执行?

我读过有关setuid的文章,但不确定如何执行此操作。

我正在使用Linux,Ubuntu 12.04 LTS。

讲者

务必小心:脚本与setuid结合使用很危险!

首先,请查看此问题/答案,尤其是此答案和安全警告

如果仍要使用setuidset执行脚本,则可以编写一个简短的C程序作为包装器,并setuid在已编译的二进制文件上设置该位。

包装器示例:

int main(void) {        
    setuid(0);
    clearenv();
    system("/absolute/path/to/your/script.sh");
}

使用的另一种解决方案sudo(在此处提到):

  1. 以root用户身份,阻止对脚本的写(或其他)访问:

    chown root /absolute/path/to/your/script.sh 
    chmod 700 /absolute/path/to/your/script.sh
    
  2. 验证除root以外的任何人都不能替换脚本,例如,通过修改父文件夹的访问权限:

    chown root / absolute / path / to / your / 
    chmod 755 / absolute / path / to / your /
    
  3. 在修改sudo的访问权限/etc/sudoersvisudo

    ALL ALL =(root)NOPASSWD:/absolute/path/to/your/script.sh
    

    可以在sudoers联机帮助页中找到有关设置的更多详细信息(例如,限制对特定用户或组的访问)。

之后,所有用户都可以以root用户身份运行脚本,而无需输入密码:

sudo /absolute/path/to/your/script.sh

这类似于使用上面的wrapper / setuid解决方案。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我们可以在Docker容器启动期间以root用户身份执行脚本吗?

来自分类Dev

您可以将存储过程设置为始终以特定用户身份执行吗?

来自分类Dev

以root用户身份从php执行shell脚本?

来自分类Dev

我无法使用su命令以root用户身份登录,但可以使用SSH登录

来自分类Dev

非root用户登录时以root身份执行脚本

来自分类Dev

root是否可以以非root用户身份执行命令?

来自分类Dev

我始终必须以root用户身份访问Jupyter Notebook

来自分类Dev

检查脚本是否以root用户身份执行?

来自分类Dev

如何以root用户身份执行脚本,以特定用户身份执行脚本中的某些命令,以root用户身份执行一个命令

来自分类Dev

我应该在包含环境中以root用户身份运行吗?

来自分类Dev

以 root 用户身份以另一个用户身份执行 sudo Bash 脚本

来自分类Dev

我无法以root用户身份执行命令

来自分类Dev

我可以使用Java Scripting API将kotlin作为脚本运行吗

来自分类Dev

我可以使Greasmonkey脚本在文本文件上运行吗?

来自分类Dev

我们可以使用Spring-cloud-netflix和Hystrix重试失败的执行吗

来自分类Dev

我可以使用return停止在生成器函数中执行吗?

来自分类Dev

我可以使用C#dll终止VBA宏执行吗

来自分类Dev

以非root用户身份执行

来自分类Dev

运行某些脚本/命令以用户身份挂起,以root用户身份可以挂起

来自分类Dev

是否可以使用getuid()以root用户身份登录用户ID来运行?

来自分类Dev

以root用户身份在启动应用程序中执行用户脚本

来自分类Dev

以root用户身份执行命令,然后在shell脚本中切换回用户

来自分类Dev

以root用户身份运行的脚本可以以普通用户身份运行另一个脚本吗?

来自分类Dev

Webmin可以以sudoer而不是root身份运行吗?

来自分类Dev

从非root用户执行root所需的脚本

来自分类Dev

从非root用户执行root所需的脚本

来自分类Dev

我们可以使用gcov在C / C ++源文件中找到可执行代码行吗

来自分类Dev

如何设置以root用户身份创建的文件和目录可以以其他用户身份读取和执行?

来自分类Dev

以非root用户身份运行脚本

Related 相关文章

  1. 1

    我们可以在Docker容器启动期间以root用户身份执行脚本吗?

  2. 2

    您可以将存储过程设置为始终以特定用户身份执行吗?

  3. 3

    以root用户身份从php执行shell脚本?

  4. 4

    我无法使用su命令以root用户身份登录,但可以使用SSH登录

  5. 5

    非root用户登录时以root身份执行脚本

  6. 6

    root是否可以以非root用户身份执行命令?

  7. 7

    我始终必须以root用户身份访问Jupyter Notebook

  8. 8

    检查脚本是否以root用户身份执行?

  9. 9

    如何以root用户身份执行脚本,以特定用户身份执行脚本中的某些命令,以root用户身份执行一个命令

  10. 10

    我应该在包含环境中以root用户身份运行吗?

  11. 11

    以 root 用户身份以另一个用户身份执行 sudo Bash 脚本

  12. 12

    我无法以root用户身份执行命令

  13. 13

    我可以使用Java Scripting API将kotlin作为脚本运行吗

  14. 14

    我可以使Greasmonkey脚本在文本文件上运行吗?

  15. 15

    我们可以使用Spring-cloud-netflix和Hystrix重试失败的执行吗

  16. 16

    我可以使用return停止在生成器函数中执行吗?

  17. 17

    我可以使用C#dll终止VBA宏执行吗

  18. 18

    以非root用户身份执行

  19. 19

    运行某些脚本/命令以用户身份挂起,以root用户身份可以挂起

  20. 20

    是否可以使用getuid()以root用户身份登录用户ID来运行?

  21. 21

    以root用户身份在启动应用程序中执行用户脚本

  22. 22

    以root用户身份执行命令,然后在shell脚本中切换回用户

  23. 23

    以root用户身份运行的脚本可以以普通用户身份运行另一个脚本吗?

  24. 24

    Webmin可以以sudoer而不是root身份运行吗?

  25. 25

    从非root用户执行root所需的脚本

  26. 26

    从非root用户执行root所需的脚本

  27. 27

    我们可以使用gcov在C / C ++源文件中找到可执行代码行吗

  28. 28

    如何设置以root用户身份创建的文件和目录可以以其他用户身份读取和执行?

  29. 29

    以非root用户身份运行脚本

热门标签

归档