реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Удаленное выполнение команд
-=Vitaly=-
сообщение Jan 11 2007, 09:40
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 31-08-06
Из: Киев
Пользователь №: 19 991



Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Jan 11 2007, 09:51
Сообщение #2


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Цитата(-=Vitaly=- @ Jan 11 2007, 08:40) *
Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.

Самый простой вариант - rsh, но не безопасный. Именно для этого и используется. Использовать безопасный ssh неинтерактивно несколько сложнее, немного по этому поводу описано здесь и здесь.
Go to the top of the page
 
+Quote Post
Tanya
сообщение Jan 11 2007, 10:11
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(-=Vitaly=- @ Jan 11 2007, 09:40) *
Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.

Есть такой еще вариант. Машины, которые должны управляться, монтируют по сети с управляющей машины некоторую директорию, в которую Вы кладете (зашифрованные, если нужно) скрипты (можно с разными именами для разных машин). Дальше cron работает. Можно даже по ftp (wget или что больше нравится).
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 11 2007, 12:51
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Tanya @ Jan 11 2007, 10:11) *
Дальше cron работает.


Или просто touch'нуть кого нибудь там, а дальше дело техники.
Go to the top of the page
 
+Quote Post
Tanya
сообщение Jan 12 2007, 11:15
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(-=Vitaly=- @ Jan 11 2007, 09:40) *
Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.

Можно даже письмом, тогда даже через экраны можно управлять, если другие пути закрыты.
Go to the top of the page
 
+Quote Post
?ELF
сообщение Jan 12 2007, 13:56
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 163
Регистрация: 8-09-06
Из: Россия, Челябинская область
Пользователь №: 20 187



Цитата(-=Vitaly=- @ Jan 11 2007, 11:40) *
Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.


IMHO:
самое то для такой задачи ― SCP + Cron + script на { perl или python или php или shell }

немного про: SCP http://ru.wikipedia.org/wiki/SCP


--------------------
do ut des
Go to the top of the page
 
+Quote Post
Tanya
сообщение Jan 12 2007, 14:15
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(?ELF @ Jan 12 2007, 13:56) *
Цитата(-=Vitaly=- @ Jan 11 2007, 11:40) *

Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.


IMHO:
самое то для такой задачи ― SCP + Cron + script на { perl или python или php или shell }

немного про: SCP http://ru.wikipedia.org/wiki/SCP

from man:
Unlike rcp(1), scp will ask for passwords or passphrases if
they are needed for authentication.
Go to the top of the page
 
+Quote Post
nazim
сообщение Jan 12 2007, 15:00
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 9-01-06
Из: Баку, Азербайджан
Пользователь №: 12 978



Цитата(-=Vitaly=- @ Jan 11 2007, 10:40) *
Доброе утро Уважаемые.

Можно ли в линухе из-под одной операционки по сетке посылать команду на выполнение на другой линуховой машине, пароли все есть.
Надо что-то типа ssh или telnet только не интерактивно, чтобы можно было в скрипте использовать для настройки компов.



Большинство администраторов использует для этих целей ssh. Для того чтобы не вводить пароль каждый раз использются крипто-ключи. Схема примерно такая:

1) Вы генерируете на клиентской машине пару (private/public) RSA или DSA ключей с помошью ssh-keygen. $ssh-keygen для RSA ключа или $ssh-keygen -d для DSA. Ключи по умолчанию создаются в папке .ssh в Вашей домашней директории.

$ssh-keygen -d


2) Далее, копируете свой публичный ключ в папку ~/.ssh/ на удаленном сервере и добавляете его в файл ~/.ssh/authorized_keys.

$cat id_dsa.pub >> ~/.ssh/authorized_keys


3) На клиентской машине запускаете ssh-agent, эта утилита будет кэшировать ключи, т.е вы будете вводить пароль лишь один раз. Когда Вам понадобится соединиться с сервером в следующий раз, ssh-agent "введет пароль за Вас". Если неохота запускать ssh-agent вручную при каждом логине, то запускайте его из .bash_profile, например.

$eval `ssh-agent`

4) Для того чтобы ssh-agent прочитал ключи, то сначала нужно их подгрузить с помошью ssh-add, который спросит пароль на ключ и загрузит его.

$ssh-add

5) Теперь Вам достаточно набрать в коммандной строке ssh user@host.domain и Вы соединитесь с сервером без утомительного ввода пароля.

Можно вместо ssh-agent использовать ssh-keychain


Теперь SSH с легкостью позволит запускать скрипты удаленно, а SCP копировать файлоы.
Пример: $ssh user@host.domain "/bin/netstat -A inet -A inet6 -an"
Показывает открытые ip & ipv6 сокеты на удаленной системе.

Преимущества данного метода в том что трафик шифруется, пароль не передается в зашифрованном виде по сети.

Недостаток заключается в том что требуется вводить пароли к ключам после каждой перезагрузки. Сам не пробовал, но думаю что этот недостаток можно преодолеть с помошью expect скрипта, который будет загружать ключи ssh-add'ом и скармливать им пароли из списка. Пароли правда будут незашифрованными храниться. ;)

И последнее, ---никогда--- не пользуйтесь незашифроваными ключами! (Некоторые делают это чтобы избавиться от ввода пароля.)

Сообщение отредактировал nazim - Jan 12 2007, 15:18
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 7th July 2025 - 05:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.0144 секунд с 7
ELECTRONIX ©2004-2016