LINUX.ORG.RU

Как создать цикл выполнения перебора машин по hostname через команду ssh admin@hostname 'uname -a' >> textfile с водом пароля?

 , ,


0

1

Доброе время суток! Имеется файл созданый через скрипт: nmap -sL 10.0.{h}.{g} | grep «cab123.domain» >> hosts Отредактировал и оставил только hostname.

Теперь нужно чтобы скрипт брал из файла hosts строку и подставлял в команду хосты из файла по списку до конца файла

ssh user@hostname 'uname -a' >> host_os
и так до конца файла hosts, собственно вопрос как?

Bash + expect скурил на сколько смог

...
set infile [open file]
gets $infile ip
spawn ssh admin@ip
expect "$password:"
send "$pw\r"
expect "> "
...
... идея провалилась так как я не смог записать в файл выхлоп
uname -a
а так же команда не выполнялась:
expect "> " { send "uname\ \-a\r"}
создал bash, наткнулся на туже проблему как брать из файла строки? Пошел путем, впихнуть все в переменную HOSTS=«хосты» перебором
for server in $HOSTS запилил выхлоп ~/ssh.exp $server
уткнулся на туже проблему я не смог записать в файл выхлоп
uname -a
а так же команда не выполнялась
expect "> " { send "uname\ \-a\r"}
Спасибо!

Похоже, ты действуешь методом прапорщика. Не надо так.

Anoxemian ★★★★★
()
Ответ на: комментарий от cdshines

То есть, там нечего осваивать, просто сделай все через ансибл и все.

cdshines ★★★★★
()

Тебе нужен ansible, он делает именно то что нужно. Ну и ходить стоит по ключам, как минимум чтобы избавиться от этого васянства с паролями(я полагаю они еще и в открытом виде где-нибудь лежат)

Dred ★★★★★
()
Ответ на: комментарий от Dred

я полагаю они еще и в открытом виде где-нибудь лежат

.bash_history

steemandlinux ★★★★★
()
Ответ на: комментарий от Dred

Тут смысл в том что вася тут я, а машины развернуты не мной и тут и ключи и фичи и 40к машин, меня админы заставляют смотреть обновлена система или нет, методом тупо ходить от машины к машине. Я решил не быть васей и попробовать написать на что ума хватило :) но походу придеться просто быть васей и подрубаться к каждому в ручную

wellrush
() автор топика
Ответ на: комментарий от wellrush

Если тебе сложно найти туториал по ansible или погуглить что-то вроде «ssh run command multiple servers» то надо уволить того админа, который тебя об этом попросил.

а машины развернуты не мной

и при чем тут это?

админы заставляют смотреть обновлена система

и админы не вкурсе про ключи? Это что же за админы такие.

Dred ★★★★★
()
Последнее исправление: Dred (всего исправлений: 1)
Ответ на: комментарий от Dred

Это что же за админы такие.

Новая должность - главный днодмин. Самый главнючий одмин но по должностным обязанностям обязан быть не в курсе всего вообще.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.