Как подключиться к серверу ssh и запросить программные подсказки?

Я пытаюсь написать сценарий, который будет подключаться к удаленному серверу через ssh, не вызывая подсказки пользователя пользователю (удаленный сервер не находится под моим контролем, и они не позволят мне использовать проверку ключа).

Обычно я просто передаю пароль в команду, и это работает нормально, но каждые 3 месяца они хотят, чтобы я менял пароль, поэтому он выдает подсказку пароля, которая разбивает мой скрипт. Я попытался захватить запрос пароля через STDOUT и STDERR, но он не отправляется ни одному из них. Я не уверен, как захватить подсказку или отправить ответ.

В качестве теста я попытался просто сделать ssh без пароля и получить такое же основное поведение.

ssh user@sdf.org 2> /dev/null 

показывается подсказка пароля, например

также ssh -T и ssh -t

любые советы будут оценены.

ура

One Solution collect form web for “Как подключиться к серверу ssh и запросить программные подсказки?”

Используйте expect или реализацию такого на другом языке (в настоящее время в Википедии есть список из них). expect был разработан именно для такого рода задач автоматизации терминалов. Самый быстрый способ загрузки этой автоматизации может выполняться в соответствии с:

 autoexpect ssh user@sdf.org 

А затем вымените клавиатуру по мере необходимости, выйдите из ssh и проверите полученный файл сценария.

  • Является ли PTTY внутри ядра или пользовательского пространства?
  • Для чего используются TTY> 12?
  • Как избежать сбоя входа в систему с помощью ecryptfs
  • Использовать случай предоставления файлового API для терминала / консоли
  • где показать пользовательскую информацию, когда успешно открыть физическую машину или подключить удаленный компьютер или войти в систему в centos 7
  • 256 цветов в консоли (tty)
  • Проверять и контролировать каждую команду, отправленную через соединение SSH?
  • Как отключить tty для одного пользователя, только используя файл Sudoers.d?
  • Включение цифровой клавиатуры
  • Почему X-сервер работает на TTY1, а не на TTY7 в Arch Linux?
  • Настройка пользовательской скорости передачи на консоли
  • Значение записей в файле / etc / securetty?
  • Interesting Posts

    Как скопировать файл в сценарий bash и переименовать его во время копирования и поместить его в тот же каталог

    Причина задания SIGTERM в случае закрытия оболочки

    Проблема с трубами. Труба прекращается, когда читатель делает

    Каков самый последний файл журнала в утилите logrotate

    Cat не получит доступ к файлу в openSuse Tumbleweed (ошибка «Недействительный аргумент»)

    Использование xkb для переназначения цитаты и правого управления

    Как я могу перечислить файлы, из которых нет символических ссылок?

    Долгосрочное решение для запуска 3D-приложений на виртуальной машине или контейнере

    cat дает разную ошибку при открытии несуществующего файла

    Возвращаемое значение потребления тока в командной строке

    Использование меток в терминале / терминаторе для упрощения навигации

    Возможно ли изменить размер текущего активного раздела и как это сделать?

    isc-dhcp-сервер не запускается из-за сбоя интерфейса

    Как я могу зашифровать свой предыдущий подраздел GPG после создания нового?

    Сервер SSH всегда доступен под большой нагрузкой

    Linux и Unix - лучшая ОС в мире.