代码之家  ›  专栏  ›  技术社区  ›  nfm

通过我的web应用运行sudo的shell脚本

  •  1
  • nfm  · 技术社区  · 16 年前

    我的web应用程序中有一些与服务器操作系统接口的功能。我已经写了一个bash脚本,可以在我的应用程序中运行它。

    但是,脚本的某些功能需要超级用户权限。

    安全运行此脚本的最明智的方法是什么?它 从web窗体传递参数,但应该只能由我不信任的经过身份验证的用户调用。

    2 回复  |  直到 16 年前
        1
  •  2
  •   Norman Ramsey    16 年前

    如果您真的关心安全性,请要求web客户端提供密码短语和 使用ssh密钥。 然后在下面运行脚本 ssh-agent ssh root@localhost command... . 您可能只想为此目的创建ssh密钥对,因为我不会在web表单中键入一个普通的ssh密码短语(不管怎样,谁信任您的web表单?)。

    如果您不需要这么多的安全性,如果您真的,真的相信您的web窗体可以正确地对其用户进行身份验证, /etc/sudoers 文件来允许web服务器运行感兴趣的命令,而不提供密码。那么你的脚本应该使用 sudo 运行这些命令。

        2
  •  4
  •   Alex Taylor    16 年前

    这样,您就可以仔细验证消息的内容,并降低被利用的可能性。。