Как указывать ключи при вызове bash в ruby - PullRequest
0 голосов
/ 10 января 2019

Используя Ruby, я пытаюсь получить содержимое из файла, находящегося на другом компьютере, выполнив:

run_this = `ssh user@thecomputer cat myfile.txt`

Проблема заключается в том, что при первом запуске он ожидает ввода «да» или «нет»:

Невозможно установить подлинность хоста thecomputer (11.12.134.46). Отпечаток ключа ECDSA - SHA256: xxxxxxxxxxxxxxxxxxxxxxxxx. Вы уверены, что хотите продолжить подключение (да / нет)?

Мне нужно автоматически ввести «да» без ручного вмешательства

Как я могу это сделать?

1 Ответ

0 голосов
/ 10 января 2019
run_this = `ssh -oStrictHostKeyChecking=no user@thecomputer cat myfile.txt`

Если опция StrictHostKeyChecking не отключена, ssh обычно по умолчанию не доверяет каким-либо новым хостам и в интерактивном режиме запрашивает пользователя, если он есть, в противном случае произойдет сбой.

Проблема, с которой вы столкнулись, очень распространена. Например, вот кто-то, кто пытался обойти это поведение ssh с помощью rsync:

Обход приглашения Rsync "Вы уверены, что хотите продолжить подключение"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...