Назад | Перейти на главную страницу

Увеличьте время ожидания подключения для «ssh: подключение к хосту xxxxx порт 22: время ожидания подключения истекло»

Мне нужно выполнить своего рода сканирование более 20 тыс. Машин в сети (все Linux), и я использую ssh для подключения к каждой машине, запускаю на ней небольшую команду и собираю вывод. Я запускаю параллельные потоки с количеством машин от 3 до 4 тысяч в каждом.

Проблема в том, что на некоторых машинах не работает вход в систему, что в моем случае означает, что машина не была должным образом подготовлена. SSH занимает около минуты до тайм-аута, эта 1 минута задерживает избыточное сканирование.

Есть ли возможность уменьшить время ожидания ssh перед завершением попытки подключения и отображением сообщения:

ssh: connect to host xxxxx port 22: Connection timed out

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

Использовать ConnectTimeout вариант. Вы можете использовать его с помощью флага -o. Аргумент занимает секунды. Например, чтобы установить период ожидания в 3 секунды, используйте следующее:

ssh -o ConnectTimeout=3 username@hostname

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