【问题标题】:How to use Sudo with a Jenkins bash script over SSH?如何通过 SSH 将 Sudo 与 Jenkins bash 脚本一起使用?
【发布时间】:2018-10-02 22:42:45
【问题描述】:

我有一台物理机 (Win7) 和一台虚拟机 (Red Hat) 共享一个网络。我正在使用 Jenkins 的 SSH 插件将 bash 脚本作为 Jenkins 作业执行,以将应用程序从物理机部署到虚拟机。

由于我希望在其上执行脚本的机器上的安全策略,我无法使用 Root 用户,而是仅限于使用具有 sudo 访问权限的标准用户。

但是,我希望脚本能够不间断地运行(我认为 Jenkins 甚至不允许您在运行 bash 脚本时输入用户密码?而且,这似乎不是最佳实践)。

是否有任何绕过 sudo 请求或脚本配置的方法可以让该进程按我希望的方式运行?

【问题讨论】:

    标签: linux bash jenkins ssh redhat


    【解决方案1】:

    您可以在/etc/sudoers 中使用NOPASSWD 指令;见sudoers manual page

    如果不可能,您可以随时使用expect 将密码(存储在帐户中的某处)提供给 sudo 进程。这也可能违反您的安全策略。您需要与制定政策的人交流,就如何自动化这些工作(“数字化转型”等)提供建议。

    【讨论】:

    • 您好,这是我自己在谷歌搜索后选择的。事实证明,您可以将 NOPASSWD 指令添加到机器上的 Jenkins 用户,并在节点上指定您要使用的用户。到目前为止非常有希望,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2018-10-30
    • 2011-01-23
    • 2010-12-08
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    • 2012-07-07
    • 1970-01-01
    相关资源
    最近更新 更多