Выполнение скриптов на удаленных серверах

Автор: | 1 марта, 2012

В предыдущей статье, я рассказал о том, как настроить выполнение команд на удаленных серверах. В показанном примере использовался одна пара логин\пароль для всех серверов. А что делать, если у нас много серверов и на каждом из них разные пароли да и к тому же они не находятся в одной сети? Выходов из этой ситуации можно найти много, но я нашел для себя оптимальный способ. Рассмотрим скрипт:

или

при выполнении этих двух скриптов (необходимо ввести в открывшимся окне логин и пароль) мы получим некую строку или на экран (первый скрипт) или в файл (второй скрипт). Данная строка будет не что иной как зашифрованный пароль, который вы ввели. Вот этот самый пароль мы и будем использовать далее. Теперь создадим файл и назовем его  server_all.txt с таким содержанием:

В этом файле я «обрезал» пароль, т.к. приводить его в полном варианте нет смысла. Заметьте, что у сервера с одинаковым паролем я объединил в одну строку. Это сделано умышленно для того, чтобы можно было выполнять команды параллельно на этих серверах. Далее пишем скрипт, который читает файл и выполняет одинаковые команды на этих серверах.

Результат работы скрипта будет следующий:

Вот собственно и все.
Единственное на что хотелось бы обратить внимание, так это на то, что если перенести этот скрипт на другой компьютер (или запустить под другой учетной записью), то это работать не будет, т.к. пароли «привязываются» к учетной записи и компьютеру. И в этом есть плюс!