ftp — передача файлов по протоколу FTP

We use cookies. Read the Privacy and Cookie Policy

Одна из по-настоящему «классических» программ — ftp — получила свое имя от используемого ею протокола, протокола передачи файлов (File Transfer Protocol, FTP). Протокол FTP широко используется в Интернете для передачи файлов. Он поддерживается большинством веб-браузеров, если не всеми, и вам часто будут встречаться идентификаторы URI, начинающиеся с префикса протокола ftp://.

Программа ftp появилась задолго до веб-браузеров. Она использовалась для обмена данными с серверами FTP, компьютерами, хранящими файлы, которые можно выгружать и загружать по сети.

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

В следующем примере показан типичный сеанс работы с программой ftp для загрузки ISO-образа с дистрибутивом Ubuntu из каталога /pub/cd_images/Ubuntu-8.04 анонимного сервера FTP fileserver.

[me@linuxbox ~]$ ftp fileserver

Connected to fileserver.localdomain.

220 (vsFTPd 2.0.1)

Name (fileserver:me): anonymous

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> cd pub/cd_images/Ubuntu-8.04

250 Directory successfully changed.

ftp> ls

200 PORT command successful. Consider using PASV.

150 Here comes the directory listing.

-rw-rw-r-- 1 500 500 733079552 Apr 25 03:53 ubuntu-8.04-desktopi386.iso

226 Directory send OK.

ftp> lcd Desktop

Local directory now /home/me/Desktop

ftp> get ubuntu-8.04-desktop-i386.iso

local: ubuntu-8.04-desktop-i386.iso remote: ubuntu-8.04-desktop-i386.iso

200 PORT command successful. Consider using PASV.

150 Opening BINARY mode data connection for ubuntu-8.04-desktop-i386.iso

(733079552 bytes).

226 File send OK.

733079552 bytes received in 68.56 secs (10441.5 kB/s)

ftp> bye

В табл. 16.1 приводится описание команд, вводившихся в ходе этого сеанса.

Таблица 16.1. Примеры команд интерактивного сеанса ftp

Команда

Значение

ftp fileserver

Вызывает программу ftp и предлагает ей подключиться к серверу fileserver

anonymous

Имя пользователя для входа. После ввода имени пользователя появится приглашение ввести пароль. Некоторые серверы принимают пустой пароль. Другие могут требовать пароль в формате адреса электронной почты. В данном случае попробуйте что-нибудь похожее на user@example.com

cd pub/cd_images/Ubuntu-8.04

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

ls

Выводит содержимое каталога в удаленной системе

lcd Desktop

Выполняет переход в каталог ~/Desktop в локальной системе. В этом примере программа ftp была вызвана в текущем рабочем каталоге ~. Данная команда назначает текущим рабочим каталог ~/Desktop

get ubuntu-8.04-desktop-i386.iso

Посылает удаленной системе запрос на передачу файла ubuntu-8.04-desktop-i386.iso локальной системе. Так как в локальной системе текущим рабочим выбран каталог ~/Desktop, файл будет загружен в него

bye

Выходит из удаленной системы и завершает сеанс программы ftp. Также можно использовать команды quit и exit

Если в приглашении ftp> ввести команду help, программа выведет список поддерживаемых команд. С помощью программы ftp можно выполнять множество обычных операций с файлами на сервере, правда, при наличии достаточных привилегий. Это не очень удобно, но выполнимо.