Предположим, что вы - системный администратор, которому необходимо выполнить одну команду на нескольких компьютерах. Вы бы хотели просмотреть все активные процессы каждого пользователя на четырех разных компьютерах - grape, lemon, kiwi, и melon - в локальной сети используя команду UNIX /usr/ucb/w. В основном используется rsh, при условии, что rsh демон (rshd) на удаленных компьютерах настроен верно:
sml_!/bin/sh
for machine in grape lemon kiwi melon
do
rsh $machine /usr/ucb/w
done
Не смотря на то, что данный метод работает, он - небезопасен. Результат выполнения /usr/ucb/w передается в открытом виде по сети; если данная информация важна, то риск может быть неприемлем. Хуже того, механизм аутентификации rsh весьма небезопасен и легко обходятся. Используя взамен команду ssh мы получим следующее:
sml_!/bin/sh
for machine in grape lemon kiwi melon
do
ssh $machine /usr/ucb/w sml_Заметьте, что здесь используется "ssh" вместо "rsh".
done
Синтаксис практически идентичен, как и выводимая информация, однако внутри команда и ее результаты надежно зашифрованы, и может быть использована мощная аутентификация для соединения с удаленной машиной.
|