LINUX.ORG.RU
ФорумAdmin

Как из скрипта скопировать файлы на удаленной машине?


0

0

Подозреваю, что вопрос прост, но решение пока найти немогу:(

Есть два сервера. На одном из них запускается скрипт, из этого скрипта надо совершить копирование файлов на другом сервере из папки в папку, без участия пользователя.

Найденные решения либо запрашивают пароль у пользователя, либо требуют настройки безпарольной аутентификации на основе ключей, после чего с машины на машину мона ходить без пароля :(

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

заранее спасибо за ответы.

Скрипт на Руби - пароль вставляется в сам скрипт

ftp = Net::FTP.new('10.0.1.121')

ftp.login('user','parol')

files = ftp.chdir('mydir')

ftp.putbinaryfile('file','file',1024)

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

AlexLorovitch Руби незнаю, если я правильно понял гуглю команда ftp.putbinaryfile('file','file',1024) скопирует файл с локальной машины на удаленную в двоичном режиме, а мне надо скопировать файлы на удаленной машине из одной папки в другую.

corvinav
() автор топика

man ftp
man lftp
man rsync

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

спасибо за ответы, возможно я не совсем точно выразился, но мне ненадо гонять файл по сети, мне надо скопировать файлы впределах файловой системы удаленного сервера, тоесть взять в папке /etc/skel структуру каталогов и скопировать в папку /home/$UID + поменять владельца на $UID:$UID

просто делать это надо по событию на другом сервере - при запуске скрипта на сервере 1 необходимо передать на другой сервер значение $UID и инициировать вышеозначенные действия.

corvinav
() автор топика

man expect

не спасет отца русской демократии? :)

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

>возможно я не совсем точно выразился

"не совсем"??? Да смысл совсем другой. Где был твой мозг, когда ты вопрос писал?

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

session required /lib/security/pam_mkhomedir.so skel=/etc/skel umask=0077

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

в любом случае, спасибо за ответ ....

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

незнаю, я сразу понял, как надо, правда, эти "папки" поддостали... :-)

по теме:

1) ssh с ключами (я не догнал, почему этот вариант не устраивает);

2) cgi-скрипт, по событию на сервере 1 дергается wget'ом url на сервере 2 (накидать нужных рестриктов, и, кстати, дёргать можно по https), который делает, что нужно.

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

sshfs

если не ошибаюсь, файлы все равно будут перегоняться по сети :(

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

sdio

>"не совсем"??? Да смысл совсем другой. Где был твой мозг, когда ты вопрос писал?

зачем же переходить на личности, тем болие на оскорбления

вроде как четко написал в вопросе: >копирование файлов на другом сервере из папки в папку

corvinav
() автор топика

Гооглишь по словам "port knocking" и азбукой морзе передаешь UID

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

> Где был твой мозг, когда ты вопрос писал?

Всё он понятно написал. Да, понимаю, лоровская традиция сначала отвечать, а потом всё равно не думать.

OP: Посмотри ssh(1) на предмет SSH_ASKPASS. Но предупреждаю, (open)ssh писали парано^Wстранные люди, проблемы там точно будут. Мне для подобной задачи оказалось проще немного подправить исходинки клиента.

anonymous
()

Всем спасибо за советы.

Реализован вариант :

>2) cgi-скрипт, по событию на сервере 1 дергается wget'ом url на сервере 2 (накидать нужных рестриктов, и, кстати, дёргать можно по https), который делает, что нужно.

честно говоря с мозгом точно что то было :) насчет cgi была идейка но заступорился на вопросе, чем скрипт запускать :(

>1) ssh с ключами (я не догнал, почему этот вариант не устраивает);

дело в том, что сервера относительно слабо защищены от физического доступа к клавиатуре(совсем не защищены :)) ) и если че нить напортачат на одном сервере - проблема, но не сильно, а если умудрятся получить доступ ко всем сразу :( ..... организация крупная и с деньгами работает :)

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

можно использование ключа ограничивать к одной конкретной команде

man sshd, AUTHORIZED_KEYS FILE FORMAT, и там про опцию command="command" прочитайте

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