LinuxКак сделать

Как использовать команду FTP в Linux

Стилизованное приглашение терминала Linux
Фатмавати Ахмад Заенури / Shutterstock.com

Протокол передачи файлов старше, чем большинство наших читателей, но он все еще работает. FTP не имеет безопасности современного протокола, но вам все равно может понадобиться его использовать. Вот как это сделать.

Предупреждение: не используйте FTP через Интернет

Давайте проясним это с самого начала: протокол передачи файлов (FTP) восходит к началу 1970-х годов и был написан без какого-либо отношения к безопасности. Он не использует шифрование ни для чего. Учетные данные, такие как имя пользователя и пароль, а также загружаемые или загружаемые данные передаются в виде открытого текста. Любой желающий может просмотреть ваши секреты. Тем не менее, FTP все еще имеет свое применение.

Если вы передаете файлы в своей сети, вы должны быть в безопасности — пока никто в сети не перехватывает пакеты и не перехватывает какие-либо конфиденциальные документы во время их передачи. Если ваши файлы никоим образом не являются конфиденциальными или конфиденциальными, их перемещение по внутренней сети по протоколу FTP должно быть нормальным. В Linux есть стандартная программа командной строки ftp которая отвечает именно этому сценарию.

Но определенно не используйте команду ftp для доступа к внешним ресурсам через Интернет. Для этого используйте программу командной строки sftp , которая использует защищенный протокол передачи файлов SSH. Мы представим обе эти программы в этом уроке.

Чтобы выяснить, почему вы никогда не хотите использовать FTP через Интернет, взгляните на скриншот ниже. Он показывает пароль FTP в виде открытого текста. Любой человек в вашей сети или между вами и FTP-сервером в Интернете может легко увидеть пароль «MySecretPassword».

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

Трассировка сетевых пакетов с открытым текстом пароля

Команда ftp

Если у вас есть действующая учетная запись на FTP-сайте, вы можете подключиться к ней с помощью следующей команды. В этой статье замените IP-адрес в командах IP-адресом FTP-сервера, к которому вы подключаетесь.

  ftp 192.168.4.25 

Предупреждение . ftp следует использовать только для подключения к серверам в доверенной локальной сети. Используйте команду sftp , описанную ниже, для передачи файлов через Интернет.

Команда соединения ftp в окне терминала

FTP-сервер отвечает приветственным сообщением. Формулировка приветствия будет варьироваться от сервера к серверу. Затем он запрашивает имя пользователя учетной записи, в которую вы входите.

Обратите внимание, что отображается IP-адрес сайта, к которому вы подключаетесь, а затем ваше имя пользователя Linux. Если имя вашей учетной записи на FTP-сервере совпадает с именем пользователя Linux, просто нажмите клавишу Enter. Это будет использовать ваше имя пользователя Linux в качестве имени учетной записи на FTP-сервере. Если ваше имя пользователя Linux и имя учетной записи FTP различаются, введите имя пользователя учетной записи FTP и нажмите клавишу ВВОД.

Вход на FTP-сервер

Вам будет предложено ввести пароль для FTP-сайта. Введите свой пароль и нажмите Enter. Ваш пароль не отображается на экране. Если комбинация имени учетной записи пользователя FTP и пароля подтверждена FTP-сервером, вы войдете в систему на FTP-сервере.

Вы увидите приглашение ftp> .

залогинился в учетной записи ftp в окне терминала

Осматривая и получая файлы

Во-первых, вы, вероятно, захотите получить список файлов на FTP-сервере. Команда ls делает именно это. Наш пользователь видит, что файл gc.c находится на FTP-сервере, и хочет загрузить его на свой компьютер. Его компьютер является «локальным компьютером» на языке FTP.

Команда для получения (или «получения») файла — это get . Поэтому наш пользователь выдает команду get gc.c Они набирают get , пробел, а затем имя файла, который они хотят получить.

FTP-сервер отвечает, передав файл на локальный компьютер и подтверждая, что передача произошла. Размер файла и время, необходимое для передачи, также показаны.

  Ls 
  получить gc.c 

передача файлов ftp в окне терминала

Чтобы получить несколько файлов одновременно, используйте команду mget (множественное получение). Команда mget попросит вас подтвердить, хотите ли вы загружать каждый файл по очереди. Ответьте, нажав «y» для «да» и «n» для «нет».

Это было бы утомительно для большого количества файлов. По этой причине коллекции связанных файлов обычно хранятся на FTP-сайтах в виде отдельных файлов tar.gz или tar.bz2 .

СВЯЗАННЫЕ: Как извлечь файлы из файла .tar.gz или .tar.bz2 в Linux

  mget * .c 

Команда mget в окне терминала

Загрузка файлов на FTP-сервер

В зависимости от разрешений, предоставленных вашей учетной записи FTP, вы можете загружать (или «помещать») файлы на сервер. Чтобы загрузить файл, используйте команду put . В нашем примере пользователь загружает файл с именем Songs.tar.gz на FTP-сервер.

  положить Songs.tar.gz 

положить команду в окне терминала

Как вы, вероятно, и ожидаете, есть команда для одновременной загрузки нескольких файлов на FTP-сервер. Это называется mput (множественный mput ). Как и команда mget , mput запросит подтверждение «y» или «n» для загрузки каждого файла, один за другим.

Тот же аргумент для помещения наборов файлов в архивы tar применяется для размещения файлов, как и для получения файлов. Наш пользователь загружает несколько файлов «.odt» с помощью следующей команды:

  mput * .odt 

команда mput в окне терминала

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

Если ваша учетная запись на FTP-сервере разрешает это, вы можете создавать каталоги. Команда для этого — mkdir . Для ясности, любой каталог, который вы создаете с помощью команды mkdir будет создан на сервере ftp, а не на вашем локальном компьютере.

Чтобы изменить каталоги на сервере ftp, используйте команду cd . Когда вы используете команду cd приглашение ftp> не изменится, чтобы отразить ваш новый текущий каталог. Команда pwd (печать рабочего каталога) покажет вам ваш текущий каталог.

Наш пользователь ftp создает каталог с именем music, переходит в этот новый каталог, подтверждает свое pwd с помощью команды pwd затем загружает файл в этот каталог.

  MKDIR музыка 
  музыка CD 
  PWD 
  положить songs.tar.gz 

Команды cd pwd и mkdir в окне терминала

Для быстрого перемещения в родительский каталог текущего каталога используйте команду cdup .

  CDUP 

команда cdup в окне терминала

Доступ к локальному компьютеру

Чтобы изменить каталог на локальном компьютере, вы можете использовать команду lcd командной строке ftp> . Однако легко потерять отслеживание того, где вы находитесь в локальной файловой системе. Более удобный способ доступа к локальной файловой системе — использовать ! команда.

! Команда открывает окно оболочки для локального компьютера. В этой оболочке вы можете делать все, что можете в стандартном окне терминала. Когда вы вводите команду exit вы возвращаетесь к приглашению ftp> .

Наш пользователь использовал ! Команда и вошел в окно оболочки на локальном компьютере. Они ls команду ls чтобы увидеть, какие файлы присутствуют в этом каталоге, и набрали команду exit чтобы вернуться к приглашению ftp> .

  ! 
  Ls 
  выход 

! команда оболочки в окне терминала

Переименование файлов

Чтобы переименовать файлы на FTP-сервере, используйте команду rename . Здесь наш пользователь FTP переименовывает файл с rename а затем использует команду ls для ls списка файлов в каталоге.

  переименовать songs.tar.gz rock_songs.tar.gz 
  Ls 

переименовать команду в окне терминала

Удаление файлов

Для удаления файлов на FTP-сервере используйте команду delete . Чтобы удалить несколько файлов одновременно, используйте команду mdelete . Вам будет предложено предоставить подтверждение «y» или «n» для удаления каждого файла.

Здесь наш пользователь FTP перечислил файлы, чтобы увидеть их имена, а затем выбрал один для удаления. Затем они решают удалить их всех.

  Ls 
  удалить gc.o 
  mdelete * .o 

ls команды delete и mdelete в окне терминала

Использование команды sftp

Читатели, знакомые с системой IP-адресации, заметят, что адрес FTP-сервера 192.168, используемый в приведенных выше примерах, является внутренним IP-адресом, также называемым частным IP-адресом. Как мы предупреждали в начале этой статьи, команда ftp должна использоваться только во внутренних сетях.

Если вы хотите подключиться к удаленному или общедоступному FTP-серверу, используйте команду sftp . Наш пользователь собирается подключиться к учетной записи SFTP, которая называется demo на общедоступном FTP-сервере, расположенном по адресу test.trebex.net .

Когда они подключаются, им сообщают, что соединение установлено. Им также сообщают, что подлинность хоста не может быть проверена. Это нормально для первого подключения нового хоста. Они нажимают «y», чтобы принять соединение.

Поскольку имя учетной записи пользователя ( demo ) было передано в командной строке, у них не запрашивается имя учетной записи пользователя. Они запрашиваются только для пароля. Это введено, проверено и принято, и они представлены с приглашением sftp> .

  sftp demo@test.rebex.net 

подключение к сайту sftp в окне терминала

Команды FTP, которые мы описали выше, будут работать точно так же в сеансе SFTP со следующими исключениями.

  • Для удаления файла используйте rm (FTP использует delete )
  • Для удаления нескольких файлов используйте rm (FTP использует mdelete )
  • Для перехода в родительский каталог используйте cd .. (FTP использует cdup )

Наш пользователь использовал несколько команд в своем сеансе SFTP. Они используют ls для ls списка файлов и cd для перехода в каталог pub. Они использовали pwd для печати рабочего каталога.

Команды sftp в окне терминала

В мире Linux существуют и другие варианты передачи файлов, в частности, scp ( безопасное копирование ), но мы сосредоточились здесь на FTP и SFTP. Используемые в соответствующих сценариях, эти две команды хорошо послужат вам и вашим потребностям в хранении и поиске файлов.

Похожие посты
Как сделать

Как получить возмещение за покупки в iTunes или App Store

Как сделать

Поверхностное перо не работает? Вот как это исправить

Как сделать

Как настроить и использовать Fire TV Recast

Как сделать

Как изменить рингтон по умолчанию на вашем iPhone