Android

Как использовать команду scp для безопасной передачи файлов

Время и Стекло Так выпала Карта HD VKlipe Net

Время и Стекло Так выпала Карта HD VKlipe Net

Оглавление:

Anonim

SCP (безопасное копирование) - это утилита командной строки, которая позволяет безопасно копировать файлы и каталоги между двумя папками.

С помощью scp вы можете скопировать файл или каталог:

  • Из вашей локальной системы в удаленную систему. Из удаленной системы в вашу локальную систему. Между двумя удаленными системами из вашей локальной системы.

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

В этом руководстве мы покажем вам, как использовать команду scp на практических примерах и подробных объяснениях наиболее распространенных параметров scp.

Синтаксис команд SCP

Прежде чем перейти к использованию команды scp , давайте начнем с обзора основного синтаксиса.

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

scp SRC_HOST:]file1 DEST_HOST:]file2

  • OPTION - опции scp, такие как шифр, конфигурация ssh, порт ssh, лимит, рекурсивное копирование и т. Д. SRC_HOST:]file1 - Исходный файл. DEST_HOST:]file2 - Файл назначения

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

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

  • -P Задает ssh-порт удаленного хоста. -p Сохраняет изменения файлов и время доступа. -q Используйте эту опцию, если вы хотите отключить индикатор выполнения и сообщения об ошибках. -C . Эта опция заставит scp сжимать данные при их отправке на конечный компьютер. -r Эта опция скажет scp рекурсивно копировать каталоги.

Прежде чем вы начнете

Команда scp использует ssh для передачи данных, поэтому для аутентификации на удаленных системах требуется ключ ssh или пароль.

Двоеточие ( scp - это как scp различает локальные и удаленные местоположения.

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

Будьте осторожны при копировании файлов с одинаковым именем и расположением в обеих системах, scp перезапишет файлы без предупреждения.

При передаче больших файлов рекомендуется запускать команду scp внутри сеанса экрана или tmux.

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

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

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

scp file.txt [email protected]:/remote/directory

Где file.txt - это имя файла, который мы хотим скопировать, remote_username - это пользователь на удаленном сервере, 10.10.0.2 - это IP-адрес сервера. /remote/directory - это путь к каталогу, в который вы хотите скопировать файл. Если вы не укажете удаленный каталог, файл будет скопирован в домашний каталог удаленного пользователя.

Вам будет предложено ввести пароль пользователя, и начнется процесс передачи.

[email protected]'s password: file.txt 100% 0 0.0KB/s 00:00

Пропуск имени файла из места назначения копирует файл с оригинальным именем. Если вы хотите сохранить файл под другим именем, вам нужно указать новое имя файла:

scp file.txt [email protected]:/remote/directory/newfilename.txt

Если SSH на удаленном хосте прослушивает порт, отличный от порта по умолчанию 22, вы можете указать порт с помощью аргумента -P :

scp -P 2322 file.txt [email protected]:/remote/directory

Команда для копирования каталога очень похожа на команду копирования файлов. Единственное отличие состоит в том, что вам нужно использовать флаг -r для рекурсии.

Чтобы скопировать каталог из локальной в удаленную систему, используйте параметр -r :

scp -r /local/directory [email protected]:/remote/directory

Скопируйте удаленный файл в локальную систему с помощью команды scp ommand.

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

Например, чтобы скопировать файл с именем file.txt с удаленного сервера с IP 10.10.0.2 выполните следующую команду:

scp [email protected]:/remote/file.txt /local/directory

Скопируйте файл между двумя удаленными системами с помощью команды scp

В отличие от rsync , при использовании scp вам не нужно входить на один из серверов для передачи файлов с одного на другой удаленный компьютер.

Следующая команда скопирует файл /files/file.txt с удаленного хоста host1.com в каталог /files на удаленном хосте host2.com .

scp [email protected]:/files/file.txt [email protected]:/files

Вам будет предложено ввести пароли для обеих удаленных учетных записей. Данные будут передаваться напрямую с одного удаленного хоста на другой.

Для маршрутизации трафика через компьютер, на котором выполняется команда, используйте параметр -3 :

scp -3 [email protected]:/files/file.txt [email protected]:/files

Вывод

В этом руководстве вы узнали, как использовать команду scp для копирования файлов и каталогов.

Вы также можете настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.

терминал scp