Протокол FTP
Наконец настало время расшифровать магическое слово "FTP" --
File Transfer Protocol или просто "Протокол Передачи Файлов". FTP --
один из старейших в Internet и входит в стандарты. Обмен данными в FTP
проходит по TCP каналу. Построен обмен по технологии "клиент-сервер".
Модель протокола выглядит следующим образом:
                                +--------------+       +------------+
                                | интерфейс    |-------|пользователь|
                                | пользователя |       +------------+
                                +--------------+
                                       |
          +-------------+       +--------------+
          |интерпретатор| Упр.  | интерпретатор|
          |протокола    |-------| протокола    |
          |сервера      | канал | пользователя |
          +-------------+       +--------------+
          +---------+           +--------------+        +------------+
          |программа|  канал    | программа    |        |            |
     +----|передачи |-----------| передачи     |--------|файловая    |
     |    |данных   |  данных   | данных       |        |система     |
     |    |сервера  |           | пользователя |        |пользователя|
     |    +---------+           +--------------+        +------------+
     |
+---------+
| файловая|
| система |
| сервера |
+---------+
                             Рис.1.
                    Диаграмма протокола FTP.
В FTP соединение инициируется интерпретатором протокола пользователя.
Управление обменом осуществляется по каналу управления в стандарте
протокола TELNET. Команды FTP генерируются интерпретатором протокола
пользователя и передаются на сервер. Ответы сервера отправляются
пользователю также по каналу управления. В общем случае пользователь
имеет возможность установить контакт с интерпретатором протокола
сервера и отличными от интерпретатора пользователя средствами.
Команды FTP определяют параметры канала передачи данных и самого
процесса передачи. Они также определяют и характер работы с удаленной и
локальной файловыми системами.
При организации канала передачи данных последовательность действий
другая, отличная от организации канала управления. В этом случае сервер
инициирует обмен данными в соответствии с согласованными в сессии
управления параметрами.
Канал данных устанавливается для того же host-а, что и канал управления,
через который ведется настройка канала данных. Канал данных может быть
использован, как для приема, так и для передачи данных.
Канал управления должен быть открыт при передаче данных между машинами.
В случае его закрытия передача данных прекращается.
Сервер протокола - программа ftpd
Команда ftpd предназначена для обслуживания запросов на обмен информацией по 
протоколу FTP. Сервер обычно стартует в момент загрузки компьютера. Синтаксис 
запуска сервера следующий:
ftpd [-d] [-1] [-t timeout]
-d -опция отладки.
-1 -опция автоматической идентификации пользователя.
-t -время пассивного ожидания команд пользователя.
Каждый сервер имеет свой help по командам, который можно получить по команде
help. Автоматическая идентификация пользователей осуществляется при помощи
файла /etc/passwd. Пароль пользователя не должен быть пустым.
Существует специальный файл, в котором содержатся запрещенные пользователи,
т.е. те, кому обслуживание по протоколу FTP запрещено. Возможен вход в архив
по идентификатору пользователя anonimous или ftp. В этом случае сервер 
принимает меры по ограничению доступа к ресурсам компьютера со стороны 
данного пользователя. Обычно для таких пользователей создается специальная 
директория ftp, в которой размещают каталоги bin,etc и pub. В каталоге bin
размещаются команды разрешенные для использования пользователем, а в каталоге
pub собственно сами файлы. Каталог etc закрыт для просмотра пользователем, и в 
нем размещены файлы идентификации пользователей.
Программа обмена файлами -- ftp
FTP -- это интерфейс пользователя при обмене файлами по одноименному 
протоколу. Программа устанавливает канал управления с удаленным сервером и 
ожидает команд пользователя. Идентификатор удаленного сервера указывается либо 
аргументом программы, либо в команде интерфейса open.
Команда ftp работает с пользователем и ожидает его команд, то на экране 
отображается приглашение "ftp>".
Синтаксис команды :
ftp [-v][-d][-i][-n][host]
-v -подавляет ответы сервера и статистику передачи данных.
-n -управляет режимом идентификации пользователя. Если указан этот ключ, то
сначала проверяется файл .netrc.
-i -выключает подтверждения передачи файла при массовом копировании файлов.
-d -включает режим отладки.
-g -отключает прозрачность передачи имен.
Вернуться к разделу "Содержание".