Передача файлов через SSH
21 Dec 2012 | Автор: dd |Для администрирования удаленных серверов всем хорош ssh- и быстрый и безопасный и удобный. Но иногда бывает необходимо залить какой нибудь файл с или на администрируемый сервер, и тогда начинаешь ломать голову, как это сделать, то ли втыкать флешочку, то ли поднимать на коленке ftp сервер, который все таки является небезопасным соединением.
Естественно, что под SSH сервером можно поднять так называемый безопасный FTP сервер- SFTP, являющийся частью сервера SSH, но опять же это все требует некоторых перенастроек системы.
Но есть возможность скопировать файлы с сервера, не прибегая ни к чему, кроме ssh, так как в него по умолчанию уже встроен функционал копирования файлов scp. Естественно что копировать он может только на сервера с запущенным SSH сервером, так как обращается на прослушиваемый порт, так что для того чтобы закачать с сервера какой либо файл, на сервер с IP:1.1.1.1, говорим:
# scp /temp/file.txt username@1.1.1.1:/tmp/
где username – аккаунт имеющий ssh доступ на сервере 1.1.1.1 с правами записи в каталог /tmp/
если же мы наоборот хотим скопировать на наш сервер, то даем команду:
# scp username@1.1.1.1:/tmp/file.txt /temp/file.txt
или же вообще говорим для двух удаленных серверов:
# scp username@1.1.1.1:/tmp/file.txt username@2.2.2.2:/tmp/
Этот механизм кстати удобно использовать при создании архивов и резервных копий на нашем сервере, когда мы бэкапим базу данных и содержимое директорий, после чего закачиваем их на удаленный SSH сервер.
Тем не менее для этого необходимо иметь сторонний SSH сервер, тогда если же мы хотим скопировать файло к себе на диск, то мы должны либо поднимать у себя SSH сервер и форвардить его наружу в Интернет, либо воспользоваться протоколом PSCP, имеющего одного ограничение- на стороне сервера версия ssh должна быть 2.
Скачиваем с офф.сайта разработчиков putty, приладу pscp, кладем её в какую либо папку, после чего прописываем пути в системе
set PATH=C:\path\to\putty\directory;%PATH%
либо же кладем в одну директорию обе прилады: putty и pscp и стартуем pscp из этой локации:
C:\>cd c:\temp
C:\>pscp username@1.1.1.1:/temp/file.txt c:\temp\
При выполнении команды с использованием домена у меня было вывалилась ошибка
ssh_init: Host does not exist
но оказалось, что я просто забыл скопировать putty в директорию к pscp, хотя все таки от греха поменял на IP адрес.
Передача файлов через SSH,Теги: ssh, Сетевые протоколы, Сети
Автор:Виктор на 24 Dec 2012
а чем плох winscp?
[Reply]
anchous Reply:
December 24th, 2012 at 12:52 am
а я где то написал, что он плох?
[Reply]
Виктор Reply:
December 24th, 2012 at 2:34 am
Ну просто подумалось, что коль что-то качать и приживлять, не легче ли скачать сам winscp…
а так очень познавательно!
[Reply]
anchous Reply:
December 24th, 2012 at 2:32 pm
ну тут тема такая, что путтю ставить не надо, да и можно не прописывать ничего, главное в одну папку засунуть файлы.
хотя в плане интерфейса да, wincp удобнее, но тогда не было бы темы для статьи
чо там- скачал, поставил, вбил логин и шуршишь.
все тривиально
Автор:NAil на 04 Jan 2013
да. правильно FTP зло.
вот юзаю так называемый SFTP в filezilla.
безопасно ли это ?
ftp не хочу прикручивать…
[Reply]
anchous Reply:
January 12th, 2013 at 1:44 am
смотря для чего- шансов что угонят пароль гораздо меньше, а если юзать до кучи еще и сертификаты под это дело, так и вообще миссия невыполнима будет
[Reply]