gpt4 book ai didi

java - 从 Tomcat servlet 运行 sudo 命令

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:12 24 4
gpt4 key购买 nike

有没有办法让 tomcat 7 服务器(在 Ubuntu 服务器上运行)在命令行中执行 sudo 命令?在这种特定情况下,我希望能够从另一台服务器关闭系统。我必须使用什么代码?我是否必须以 root 身份运行 tomcat 服务器,或者我能否在运行时获得这些特权并且仅用于此操作?感谢您的帮助:)

最佳答案

无需以 root 身份运行 Tomcat,您只需将 tomcat 用户添加到 /etc/sudoers 以允许他运行 super 用户命令,例如 sudo shutdown now。这种方式允许您指定可由用户执行的所需命令子集。例如。只允许他运行 shutdown:

tomcat ALL=NOPASSWD: /sbin/shutdown

要从 Java 代码运行 shell 命令,您可以调用 Runtime.exec() 之一或使用 ProcessBuilder .

附言还可以尝试使用谷歌搜索 /etc/shutdown.allow 文件,该文件允许其中列出的任何用户运行关机命令。但我从未使用过它。

关于java - 从 Tomcat servlet 运行 sudo 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18854759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com