Как ввести учетные данные вручную в Parallel-SSH или Paramiko
Я пытаюсь создать скрипт, который будет выполнять команды на моих 1000 устройствах Cisco. Модель устройства: ПО Cisco Sx220, версия 1.1.4.1.
Проблема в том, что для некоторых из этих устройств Cisco наблюдается какое-то странное поведение.
Когда я пытаюсь войти в систему с обычным SSH (PUTTY) с правильными учетными данными, мы сначала получаем "Ошибка аутентификации", и через 1 секунду я снова получаю запрос на ввод пароля пользователя, повторный ввод тех же учетных данных дает мне успешный вход в систему.
Проблема в том, что когда я пытаюсь подключиться, используя мой сценарий (использует ParallelSSHClient), соединение обрывается после получения сообщения об ошибке аутентификации и не может снова ввести учетные данные, поскольку оно получает исключение и завершает работу программы.
Я ищу способ ввести эти учетные данные вручную, подключившись к компьютеру, получив сообщение о сбое аутентификации и проигнорировав его, обнаружив, что в текущем запросе на экране отображается "Пользователь" или "Пароль", а затем отправив его вручную. Я ищу такую процедуру где угодно, но без удачи. Есть ли у ParallelSSHClient эта функция? Если у Парамико это есть, я готов переехать в Парамико. Спасибо:)
try:
client = ParallelSSHClient(hosts=ip_list, user=user, password=password)
except Exception as err:
print("There was an issue with connecting to the machine")
command_output = client.run_command(command)
Вот ошибка начисления, которую я получаю:
pssh.exceptions.AuthenticationException: ('Authentication error while connecting to %s:%s - %s', '172.31.255.10', 22, AuthenticationException('Password authentication failed',))