Передача файлов на удаленных серверах с помощью SFTP-команд в Linux

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

Существует неправильное представление об аббревиатуре SFTP, и некоторые думают, что оно означает протокол Secure File Transfer Protocol.

Оно означает протокол SSH File Transfer Protocol. Где в «FTPS» отличается, клиент FTPS сначала проверяет, доверен ли сервер ftps-сервера, и использует протокол Secure Sockets Layer (TLS).

Хорошо бы почитать, как настроить VSFTPD SFTP с SSL/TLS на Ubuntu 18.04

Можно простить мнение о том, что SFTP и FTP схожи по функциональности, но оба используют различные протоколы.

Поэтому вы не можете использовать стандартный FTP-клиент для подключения к SFTP-серверу.

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

Читайте также: Массовое удаление файлов на FTP-сервере

Стандартное приложение SFTP — это запуск на командном интерфейсе в рамках собственной среды.

Поэтому в большинстве случаев вы заметите, что интерфейс программы меняется на приглашение sftp>.

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

Не все компьютеры могут обрабатывать команды SFTP.

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

Интерфейс GUI требует установки утилиты SFTP.

В этой статье мы рассмотрим некоторые примеры команд SFTP, которые вы можете использовать с помощью командной строки unix/linux.

Как подключиться к SFTP

Протокол SSH, используемый для установления связи, такой же, как и для SFTP-канала.

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

Чтобы запустить сеанс SFTP, вам потребуется имя пользователя и имя удаленного хоста.

В качестве альтернативы вы можете использовать IP-адрес имени хоста в строке, как показано ниже:

~ # sftp sftpuser@216.200.116.229 sftpuser@216.200.116.229's password:  Connected to sftpuser@216.200.116.229.

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

1) Как получить подсказку в строке запроса

Если у вас нет подсказки о типе или формате, который может использоваться в командной строке SFTP, используйте «?» Или «help» в ответ на приглашение следующим образом

sftp ?



2) Подтвердить рабочий каталог

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

Параметр pwd используется для проверки удаленного рабочего каталога.

sftp> lpwd
Вывод
Local working directory: /root
sftp> pwd
Вывод
Remote working directory: /upload

3) Отобразить файлы

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

Удаленный список

sftp> ls

Локальный список

sftp> lls

4) Загрузка файлов

Загрузка может происходить путем размещения одного или нескольких файлов на удаленном хосте.

Один файл на удаленном хосте,

sftp> put Hello-World.txt

Вывод

Uploading Hello-World.txt to /upload/Hello-World.txt Hello-World.txt

Несколько файлов на удаленном хосте

sftp> mput *.txt

Вывод

Uploading Hello-World.txt to /upload/Hello-World.txt Hello-World.txt 100% 0 0.0KB/s 00:00  Uploading file1.txt to /upload/file1.txt file1.txt 100% 0 0.0KB/s 00:00  Uploading file2.txt to /upload/file2.txt file2.txt 100% 0 0.0KB/s 00:00  Uploading file3.txt to /upload/file3.txt file3.txt 100% 0 0.0KB/s 00:00  Uploading file4.txt to /upload/file4.txt file4.txt 100% 0 0.0KB/s 00:00

5) Скачивание файлов

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

sftp> get file1.pdf

Вывод

Fetching /upload/file1.pdf to file1.pdf

Загрузите несколько файлов по локальному пути или системе

sftp> mget * .pdf

Вывод

Fetching /upload/file1.pdf to file1.pdf Fetching /upload/file2.pdf to file2.pdf Fetching /upload/file3.pdf to file3.pdf Fetching /upload/file4.pdf to file4.pdf Fetching /upload/file5.pdf to file5.pdf

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

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

6) Смена каталогов

На удаленном сервере вы используете команду:

sftp> cd test

На локальной машине вы используете команду:

sftp> lcd Documents

7) Создание каталогов

Возможно создание каталогов на удаленных и локальных путях

Новый каталог по локальном пути

sftp> mkdir test

Новый каталог на удаленном хосте

sftp> lmkdir Documents

8) Удаление каталогов

Удаление каталога или файла на удаленных хостах

Удаление файла на удаленных хостах

sftp> rm Report.xls

Удаление каталога на удаленных хостах

sftp> rmdir Department

Примечание. Эта команда будет работать только в том случае, если целевой каталог пуст

9) Выход из командной оболочки

Восклицательный знак! (известная как команда в этом случае) используется для выхода из командной строки SFTP, как показано в следующем примере.

sftp>! [root@sftp ~]# exit Shell exited with status 1 sftp>

Отправка комментария

0 Комментарии