bash скрипт для проверки связи на нескольких серверах (избегайте ключа ECDSA, вы уверены, что хотите ...) - PullRequest
0 голосов
/ 10 июля 2020

не эксперт linux, но я пытаюсь найти способ использования сценария bash для проверки возможности подключения нескольких серверов и предотвращения вмешательства человека.

У меня есть что-то вроде этого, так что что я могу подключиться к хосту, выполнить имя хоста и поместить эту информацию в журнал

#!/bin/bash
for host in $(cat server.txt)
do
        ssh -q -o ConnectTimeout=3 "$host" "hostname"
done > servers.log

Возможно ли это выполнить и избежать

ECDSA key fingerprint is a3:eb:a8:4d:90:1d:ae:83:bc:7b:a9:47:69:67:67:7f.
Are you sure you want to continue connecting (yes/no)?
 ?

или просто заставить игрушку сказать ДА ?

спасибо

1 Ответ

3 голосов
/ 10 июля 2020

Чтобы подавить это предупреждение в команде ssh, используйте:

ssh -o "StrictHostKeyChecking=no" user@host

Также используйте while read l oop вместо for l oop, например:

while read -r host; do
    ssh -tt -oBatchMode=yes -o "StrictHostKeyChecking=no" "user@$host"
done < server.txt > servers.log
...