Как скопировать файл на линукс сервер

Содержание
  1. Копирование файлов через SSH
  2. Копирование файлов по SSH на Linux
  3. Как скопировать файл по SSH с локальной машины на удалённый сервер
  4. Как скопировать файлы с удалённого сервера на локальный компьютер
  5. Как скопировать файл по SSH с одного удалённого сервера на другой
  6. Как скачать папку со всеми файлами и подпапками
  7. Как подключиться к серверу по нестандартному порту
  8. Как передать и скачать файлы по SSH на Windows
  9. Копирование файлов по ssh. Команда scp
  10. Синтаксис команды scp
  11. Копирование локального файла
  12. Локальный→Удаленный
  13. Указываем порт
  14. Копирование файла с удаленного компьютера на локальный
  15. Удаленный→Локальный
  16. Копирование директории
  17. Копирование со сжатием данных (ускорение)
  18. Сохранение атрибутов файла
  19. Если в пути есть пробелы
  20. Как скопировать файл через SSH
  21. Копирование файлов по SSH на Linux
  22. Как скопировать файл по SSH с локальной машины на удалённый сервер
  23. Как скопировать файлы с удалённого сервера на локальный компьютер
  24. Как скачать папку со всеми файлами и подпапками
  25. Как подключиться к серверу по нестандартному порту
  26. Как передать и скачать файлы по SSH на Windows
  27. Копирование файлов по SSH
  28. Как работает SSH
  29. Копирование файлов
  30. Настройка автодополнений
  31. Secure copy (SCP)
  32. Secure FTP (SFTP)
  33. Копирование файлов по SSH в Windows
  34. Заключение

Копирование файлов через SSH

В статье мы расскажем, как копировать файлы в Windows и Linux-системах, и покажем основные команды, с помощью которых происходит передача файлов по SSH.

Для копирования файлов по SSH в Linux-системах и Windows используют разные инструменты:

  • scp (Secure CoPy) — утилита для безопасного копирования данных между Linux-системами по протоколу SSH. Она входит в состав OpenSSH, поэтому для работы с утилитой не нужно устанавливать дополнительное ПО;
  • pscp.exe — утилита для загрузки файлов по SSH в ОС Windows. Она обладает теми же возможностями, что и scp. Утилита входит в состав программы Putty — SSH-клиента для Windows. Скачать программу можно по ссылке.

Копирование файлов по SSH на Linux

Для Linux копирование файлов по SSH происходит с использованием команды scp. С её помощью можно копировать файлы:

  • с локального компьютера на удалённый сервер,
  • с удалённого сервера на локальный компьютер,
  • с одного удалённого сервера на другой.

Общий вид команды:

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

Как загрузить файл на сервер по SSH? Для этого используйте команду вида:

Файл test.txt будет скопирован на хост 123.123.123.123 в директорию «/directory».

Как скопировать файлы с удалённого сервера на локальный компьютер

При подключённом SSH скачать файл на локальный компьютер с удалённого сервера можно с помощью команды:

Файл test.txt будет загружен с сервера 123.123.123.123 на локальный компьютер в папку «/directory».

Как скопировать файл по SSH с одного удалённого сервера на другой

Подключитесь по SSH к серверу, на котором расположен файл. Затем выполните команду:

Файл test.txt будет скопирован на хост 123.123.123.123 в директорию «/directory».

Как скачать папку со всеми файлами и подпапками

Если вы хотите скачать папку со всеми файлами и подпапками, используйте ключ -r:

Как подключиться к серверу по нестандартному порту

Бывает, что для подключения по SSH нужно указать нестандартный порт. Без указания порта команда подключается к серверу по стандартному 22 порту. Чтобы указать нестандартный порт, введите команду с ключом -P:

Эта команда подключается по порту 12345 к серверу 123.123.123.123 и копирует на него файл «test.txt» с локального компьютера в директорию «/directory».

Как передать и скачать файлы по SSH на Windows

Скопировать файл по SSH на сервер можно командой:

Скачать файл по SSH с сервера командой:

Увидеть список папок и файлов на сервере можно через pscp.exe. Для этого введите:

Если в пути или в названии файла есть пробелы, используйте кавычки:

Источник

Копирование файлов по ssh. Команда scp

Для копирования файлов по ssh между компьютерами под управлением Linux применяется команда scp . Рассмотрим, как можно копировать файлы с одного компьютера на другой по ssh, используя команду scp .

Синтаксис команды scp

Синтаксис команды scp следующий:

Команда scp принимает на вход различные опции (см. примеры ниже), а также файл или директорию, которую необходимо скопировать (аргумент что_копируем ). Последним аргументом указывается путь назначения, в который будет произведено копирование (аргумент куда_копируем ).

Аргументы что_копируем и куда_копируем могут быть, как локальными путями, так и удаленными. То есть можно копировать файлы с удаленного компьютера на локальный и наоборот. Можно копировать файлы с удаленного компьютера на другой удаленный компьютер.

что_копируем и куда_копируем имеют следующий синтаксис:

имя_пользователя — это имя пользователя для подключения по ssh.
IP_адрес — IP адрес компьютера (хоста) на который или с которого будет копирование.

Копирование локального файла

Локальный→Удаленный

Рассмотрим простой пример. Скопируем по ssh локальный файл myfile.dat на компьютер с IP адресом 192.168.1.74 в директорию /home/pingvin .

Указываем порт

Выполним тоже самое, но укажем еще и порт для подключения по ssh (используем опцию -P ). Обратите внимание, что опция для указания порта это прописная буква P !

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

Удаленный→Локальный

Теперь наоборот. Скопируем файл с удаленного компьютера в нашу текущую директорию.

Копирование директории

Скопируем с нашего локального компьютера директорию

/mydir на удаленный компьютер в директорию /home/pingvin . Используется опция -r .

Копирование со сжатием данных (ускорение)

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

Пример копирования файла myfile.dat с включенным сжатием.

Сохранение атрибутов файла

Чтобы результирующий файл получил те же атрибуты что и исходный файл, используется опция -p (не путать с опцией -P для указания порта). При использовании опции -p сохраняются права доступа к файлу, владелец файла, временные метки и так далее.

Если в пути есть пробелы

Если путь до удаленного файла/директории содержит пробелы, то при использовании команды scp необходимо этот путь заключить и в одинарные и двойные кавычки:

Это связано с тем, что одни кавычки используются при разборе пути на локальной стороне, а вторые на удаленной.

Для получения полной справки по команде scp выполните в терминале:

Источник

Как скопировать файл через SSH

В статье мы расскажем, как копировать файлы в Windows и Linux-системах, и покажем основные команды, с помощью которых происходит передача файлов по SSH.

В Linux и Windows-системах используют разные инструменты для копирования файлов по SSH.

В Linux для копирования данных по протоколу SSH используется утилита scp (Secure CoPy). Она входит в состав OpenSSH, поэтому для работы с утилитой устанавливать дополнительное ПО не нужно.

В Windows для загрузки файлов по SSH используется утилита pscp.exe. Её функционал схож с scp. Утилита входит в состав программы Putty (SSH-клиент для Windows). Putty не входит в стандартный набор Windows-программ, поэтому её нужно будет скачать с официального сайта.

Обратите внимание! Если файл, который вы хотите скопировать, уже существует на целевом хосте, при копировании он будет перезаписан.

Копирование файлов по SSH на Linux

Как скачать файл с сервера через SSH? На Linux копирование файлов по SSH делается с помощью команды scp. Команда может копировать файлы как с локального компьютера на удалённый сервер, так и с удалённого сервера на локальный компьютер.

Обратите внимание! Для подключения к удалённому серверу вам понадобится логин и пароль.

В общем виде команда выглядит так:

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

Как загрузить файл на сервер по SSH? Для этой операции используется команда вида:

Например, команда может выглядеть так:

То есть файл test.txt будет скопирован на хост 123.123.123.123 в директорию «/directory».

Как скопировать файлы с удалённого сервера на локальный компьютер

При подключённом SSH скачать файл на локальный компьютер с удалённого сервера можно с помощью команды:

То есть файл test.txt будет загружен с сервера 123.123.123.123 на локальный компьютер в папку “/directory”.

Как скачать папку со всеми файлами и подпапками

При необходимости можно скачать папку со всеми файлами и подпапками, для этого используйте ключ -r:

Как подключиться к серверу по нестандартному порту

Если не указывать порт, команда подключается к серверу по стандартному 22 порту. Но бывает, что для подключения по SSH нужно указать нестандартный порт. Чтобы это сделать, введите команду с ключём -P:

Например, получится такая команда:

Указанная команда подключается по порту 12345 к серверу 123.123.123.123 и копирует на него файл « text.txt » в директорию « /directory ».

Как передать и скачать файлы по SSH на Windows

Скопировать файл по SSH на сервер можно командой:

Чтобы скачать файл по SSH с сервера, используйте команду:

Увидеть список папок и файлов на сервере можно через pscp.exe. Для этого введите:

Если в пути или в названии файла есть пробелы, используйте кавычки:

Источник

Копирование файлов по SSH

Протокол SSH (Secure Shell) — это сетевой протокол для удаленного управления операционной системой через командную строку, который можно назвать стандартом для удаленного доступа к *nix-машинам. Позволяет производить защищенный вход на сервер, удаленно выполнять команды, управлять файлами (создавать, удалять, копировать и т.д.) и многое другое. Большинство облачных и хостинг-провайдеров требуют наличие SSH для доступа к своим сервисам. В этой статье рассмотрим копирование файлов по SSH в Windows и Linux-системах.

Как работает SSH

SSH способен передавать любые данные (звук, видео, данные прикладных протоколов) через безопасный канал связи. В отличие от устаревших и небезопасных протоколов telnet и rlogin, в SSH обеспечивается конфиденциальность передаваемых данных и подлинность взаимодействующих сторон — необходимые условия для сетевого взаимодействия в Интернете.

Рассмотрим алгоритм установки зашифрованного соединения между клиентом и сервером:

  1. Установка TCP-соединения. По умолчанию сервер слушает 22-й порт. В работе протокола используется набор алгоритмов (сжатие, шифрование, обмен ключами), поэтому стороны обмениваются списком поддерживаемых алгоритмов и договариваются, какие из них будут использовать.
  2. Чтобы третья сторона не смогла выдать себя за сервер или клиент, стороны должны удостоверится в подлинности друг друга (аутентификация). Для этого используются асимметричные алгоритмы шифрования и пара открытый-закрытый ключ. Вначале проверяется аутентичность сервера. Если соединение происходит впервые, пользователь увидит предупреждение и информацию о сервере. Список доверенных серверов и их ключей записывается в файл по адресу /home/ /.ssh/known_hosts .
  3. Как только клиент убедился в достоверности сервера, стороны генерируют симметричный ключ, с помощью которого происходит шифрования всех обмениваемых данных. Таким образом при перехвате данных, никто, кроме сторон не сможет узнать содержимое сообщений.
  4. Далее происходит аутентификация пользовательского сеанса. Для этого используется либо пароль, либо присланный клиентом публичный ключ, сохраняемый в файле /home/ /.ssh/authorized_keys на сервере.

Самая популярная реализация на Линукс, OpenSSH, предустанавливается практически на всех дистрибутивах: Ubuntu, Debian, RHEL-based и других. На Windows в качестве клиентов можно использовать программы PuTTY, MobaXterm. Начиная с WIndows 10 и Windows Server 2019 инструменты OpenSSH доступны и на Windows.

Подробнее об SSH и работе с ним мы писали в статье «Как пользоваться SSH».

Копирование файлов

Копирование файлов в Linux по SSH осуществляется с помощью двух основных программ: scp и sftp. Обе утилиты поставляются вместе с пакетом OpenSSH. Суще­ствуют две основные версии протокола SSH: 1 и 2. Оболочка OpenSSH поддержи­вает обе версии, однако первая применяется редко.

Настройка автодополнений

При работе с scp крайне удобно использовать tab для автодополнения путей на удаленной машине. Для этого нужно настроить аутентификацию пользователя по публичному ключу.

Для начала сгенерируем открытый и закрытый ключ:

В конце вывода будет графическое представление ключа (key’s randomart image), которое легче запомнить, чем хэш ключа.

По умолчанию ключи (id_rsa.pub — открытый, id_rsa — закрытый) сохранятся в домашнем каталоге пользователя в директории .ssh. Также во время генерации программа попросит ввести пароль, которым будут защищены ключи. Если не хотите дополнительной защиты, нажмите два раза Enter.

Теперь копируем публичный ключ на удаленную машину:

Здесь [имя пользователя] — учетная запись пользователя, под которой будем логиниться на удаленной машине, [ip-адрес] — адрес удаленной машины (можно использовать доменное имя, если они локально резолвится). Далее вводим пароль пользователя. Если все прошло корректно, то в выводе будет команда для удаленного подключения:

Secure copy (SCP)

Для копирования небольших объемов информации (например, конфиги сервисов) лучше всего подойдет утилита scp.

Синтаксис команды для копирования с локальной машины на удаленный сервер:

Попробуем скопировать файл на сервер:

Можно передать несколько файлов за раз. Для этого указываем пути, разделенные пробелами:

Для копирования с удаленного сервера на локальную машину нужно поменять источник и место назначения местами:

Для передачи директории используйте ключ -r :

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

Secure FTP (SFTP)

Еще одной утилитой для передачи файлов, поставляемых в OpenSSH, является sftp. C релизом OpenSSH 9.0 утилита scp переведена по умолчанию на использование SFTP вместо устаревшего протокола SCP/RCP. Sftp работает практически также, как и классический ftp, за исключением того, что в sftp данные передаются не в виде обычного текста, а по зашифрованному туннелю (туннелирование — это процесс упаковки и передачи одного сетевого подключения с помощью другого). Также для работы sftp не нужен отдельный FTP-сервер.

Пример простого скачивания через sftp:

Сам по себе sftp применяется редко: вместо этого его используют файловые менеджеры, например Midnight Commander и Nautilus:

Использование sftp в файловом менеджере Nautilus. Удаленная машина отображается в виде папки с именем пользователя и IP-адресом.

Копирование файлов по SSH в Windows

Скачать файл с сервера или на сервер в Windows можно с помощью консольной программы pscp, поставляемой вместе с PuTTY. Синтаксис очень похож на обычный scp:

Для SSH-копирования файлов на сервер , используйте следующую команду:

Скачивание файла с сервера на компьютер:

Увидеть список файлов на сервере можно при помощи опции -ls :

Если в пути или в названии файла есть пробелы, используйте кавычки:

Для получения помощи по команде введите pscp без аргументов.

Заключение

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

Кстати, в официальном канале Timeweb Cloud собрали комьюнити из специалистов, которые говорят про IT-тренды, делятся полезными инструкциями и даже приглашают к себе работать.

Источник

Mac OS X Hints