使用grunt-ssh的root用户和sudo命令的pty

时间:2018-01-29 17:51:10

标签: javascript node.js gruntjs grunt-ssh

来自issue 143中的grunt-ssh

我正在尝试执行以下操作:

  1. 以普通用户身份通过​​ssh连接
  2. 切换到root用户并执行具有权限的命令,例如:ls / root
  3. 退出根
  4. 以普通用户身份关闭连接(这可以是可选的)
  5. 我有这个配置

    from os.path import isfile, join
    from os import listdir
    
    folder = 'path//to//folder'
    onlyfiles = [f for f in listdir(folder) if isfile(join(folder, f))]
    
      

    来自文档:

         pty:boolean / object

    设置为true以分配带有默认值的伪tty,或者包含特定伪tty设置的对象(请参阅“Pseudo-TTY settings”)。在处理期望来自实际终端的输入的远程进程时(例如sudo的密码提示),设置伪tty会很有用。

    显然,没有办法(或至少是一些例子)来执行我正在搜索的内容,但我认为像这样的用例并不奇怪。是否可以使用this库实现上述步骤?有人可以提供有关可能的pty对象配置的更多信息,以及有关它的优点/限制吗?

    重要

    由于主机上的安全措施,我不能:

    1. 直接通过ssh连接
    2. 将密码传递给sudo命令,例如:“echo | sudo -S ls / root”

0 个答案:

没有答案