2

Вот что случилось:

  1. Я настроил ключ ssh так, чтобы user мог ssh из A в B без пароля.
  2. Я получил пароль user неправильно в каком - то другом контексте слишком много раз, и user 's счет был заблокирован. (Здесь используется Active Directory)
  3. ЭТО разблокировал аккаунт. Одновременно с разблокировкой запускался скрипт, который каждые 5 секунд вызывал что-то вроде ssh user@B some-health-check-command что, казалось, работало нормально до того, как я заставил user заблокироваться на шаге 2.
  4. ИТ сообщает, что user надежно блокируется через короткое время после каждой попытки разблокировки.

Я думал, что ключ ssh позволит ssh user@B some-command если учетная запись не заблокирована.

Но он ведет себя так, как будто, когда user разблокирован, B внезапно запрашивает пароль, и, поскольку моя команда многократно запускается без ввода пароля, учетная запись блокируется после 5 попыток.

Account cannot be accessed at this time.
Please contact your system administrator.

Мои вопросы ...

  1. Это то, что происходит? Или: что происходит?
  2. Что еще более важно: Как я могу перенастроить вещи так, чтобы мой сценарий не вызывал проблем? Могу ли я выполнить то, что хочу, не устанавливая Expect? (Я не знаю, есть ли у меня разрешение на это)

Другие примечания: в настоящее время не использует ssh-agent. Команда ssh выполняется на нашем мастере Jenkins, в Linux. A и B - Mac OS X. user управляется в Active Directory и обычно может войти на все три машины. Насколько я знаю, кроме этих вещей и ключа ssh, который я настроил, все остальное имеет конфигурацию по умолчанию.

0