Мы все знакомы с протоколом FTP, и если вы читаете эту статью, вы, вероятно, использовали его для передачи файлов на виртуальном сервере и на локальном компьютере. FTP является очень простsv протоколjv, но это также очень небезопасно. Все передачи, в том числе имя пользователя и пароль, передаются в незашифрованном виде и не используется никакой тип безопасности или шифрования при передаче данных. Это означает, что все данные могут быть прочитаны кем-либо, могут перехватить передачу. К счастью, есть отличная замена для протокола FTP – SFTP.
SFTP расшифровывается как Secure File Transfer Protocol и полагается на SSH. SFTP позволяет пользователям передавать данные через соединение, которое обеспечено с использованием хорошо известного защищенного протокола (SSH) Shell. Протокол SFTP также быстрее и использует меньше данных, чем протокол FTP. Поэтому мы настоятельно рекомендуем использовать SFTP вместо FTP, когда это возможно. Вы можете передавать файлы между машинами, используя некоторые из популярных SFTP клиентов, таких как FileZilla, Cyberduck или WinSCP. Вы также можете сделать это прямо из командной строки Linux.
В этой статье мы перечислим и объяснить некоторые из наиболее популярных и полезных команд SFTP. Они прекрасно подходят для начинающих – легко понять, и полезны для решения повседневных задач сервера.
1. Подключение к серверу SFTP
Вы можете подключиться к удаленному серверу через SFTP с помощью следующей команды
sftp furious@IP_Address user@IP_Address' password: Connected to IP_Address.
Вы можете также использовать имя хоста вместо IP-адреса.
Мы уже упоминали, что SFTP использует тот же протокол, что и SSH, так что если SSH не прослушивает порт по умолчанию 22, вы можете указать порт в команде
sftp -oPort=3456 furious@IP_Address
Где ‘3456’ это номер порта, который вы используете.
2. Список всех файлов в текущем каталоге
Используя команду Ls, вы можете получить список всех файлов и каталогов в текущем рабочем каталоге
sftp> ls directory directory1 file file.txt file.zip
Вы также можете просмотреть список файлов в локальной системе
sftp> lls
3. Перейдите по каталогам
Чтобы найти текущий рабочий каталог при использовании локального сервера
sftp> pwd Remote working directory: /home/furious
для локального сервера с помощью следующей команды
sftp> lpwd Local working directory: /
Вы можете легко изменить рабочий каталог в SFTP. Для использования удаленного сервера
sftp? cd directory
а также для использования локального сервера
sftp> lcd directory
4. Загрузите файлы и каталоги с помощью команды put
Вы можете загрузить один или несколько файлов или каталогов с локального на удаленный компьютер.
sftp> put filename
Загрузить несколько файлов с помощью следующей команды
sftp> mput file1 file2 file3
Загрузить каталог на удаленном сервере, вы должны создать каталог назначения на удаленном сервере, а затем начать загрузку
sftp> mkdir directory sftp> put -r directory/
5. Загрузка файлов и каталогов с помощью команды GET
Загрузить один файл с удаленного компьютера на локальный компьютер
sftp> get file
или загрузить несколько файлов с помощью команды ‘mget’
sftp> mget file1 file2 file3
Скачать каталог и все его содержимое с помощью следующей команды
sftp> get -r directory
6. Создание и удаление каталогов
Создайте новый каталог на удаленном сервере
sftp> mkdir newdirectory
Создайте новый каталог на локальном сервере
sftp> lmkdir newdirectory
7. Получение справки
Вы можете найти все команды SFTP с кратким описанием, выполнив ‘help’ или ‘?’.
sftp> ? Available commands: bye Выход sftp cd path Изменить удаленный каталог 'path' chgrp grp path Изменить группу файлов 'path' в 'grp' chmod mode path Изменение разрешения файла 'path' на 'mode' chown own path Сменить владельца файла 'path' to 'own' df [-hi] [path] Отображение статистики для текущей директории или файловой системы, содержащая 'path' exit Выход sftp get [-Ppr] remote [local] Загрузка файлов reget remote [local] Возобновить загрузку файла help Показать справку lcd path Изменить локальный каталог на 'path' lls [ls-options [path]] Показать список локального каталога lmkdir path Создать локальный каталог ln [-s] oldpath newpath симлинк на удаленный каталог (-s for symlink) lpwd Напечатать локальный рабочий каталог ls [-1afhlnrSt] [path] Показать список удаленного каталога lumask umask Установка локально umask to 'umask' mkdir path Создать удаленный каталог progress Показывать индикатор прогресса put [-Ppr] local [remote] Загрузить файл pwd Показать удаленный рабочий каталог quit Выйти с sftp rename oldpath newpath Переименовать удаленный файл rm path Удалить удаленный файл rmdir path Удалить удаленный каталог symlink oldpath newpath Symlink удаленного файла version Показать версию SFTP !command Выполнить 'command' в локальной оболочке ! Выйти в локальную оболочку ? Синоним помощи