s sh агент, запрос пароля закрытого ключа, если пользователь не существует на целевом хосте - PullRequest
0 голосов
/ 13 июля 2020

У меня есть среда с несколькими сотнями хостов. Мне нужно войти в систему через Ansible и s sh на всех хостах.

Я использую аутентификацию «user1» accont и publi c key.

Итак, я добавил закрытый ключ в s sh -агент для моего пользователя user1. Я могу войти в систему на удаленных хостах (где "user1" настроен и существует его ключ publi c) без ввода пароля. Все хорошо! :)

Но если я попытаюсь войти на хосты, где "user1" не установлен, я получаю запрос пароля для закрытого ключа user1. Есть ли способ подавить запрос пароля. В случае, если «user1» не установлен на удаленном хосте, мне нужно получить «Permission denied» или что-то в этом роде без запроса пароля.

Есть идеи?

Ура, Евгений

1 Ответ

0 голосов
/ 13 июля 2020

Параметр batchmode должен делать то, что вы хотите:

BatchMode Если установлено «Да», взаимодействие с пользователем, например запросы пароля и запросы подтверждения ключа хоста, будет отключено. Эта опция полезна в сценариях и других пакетных заданиях, где нет пользователя, который бы взаимодействовал с s sh (1). Аргумент должен быть да или нет (по умолчанию).

Вы бы использовали его так:

ssh -o BatchMode=yes user@host...
...