Ftp служит. Протокол FTP (SFTP, FTPS) — что это такое, соединение между клиентом и сервером по ФТП

Сетевая файловая служба на основе протокола FTP (File Transfer Protocol) представляет собой одну из наиболее ранних служб, используемых для доступа к удаленным файлам. До появления службы WWW это была самая популярная служба доступа к удаленным данным в Интернете и корпоративных IP-сетях. Первые спецификации FTP относятся к 1971 году. Серверы и клиенты FTP имеются практически в каждой ОС семейства UNIX, а также во многих других сетевых ОС. Клиенты FTP встроены сегодня в программы просмотра (браузеры) Интернета, так как архивы файлов на основе протокола FTP по-прежнему популярны и для доступа к таким архивам браузером используется протокол FTP.

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

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

Протокол FTP выполнен по схеме клиент-сервер. Клиент FTP состоит из нескольких функциональных модулей:

User Interface -- пользовательский интерфейс, принимающий от пользователя символьные команды и отображающий состояние сеанса FTP на символьном экране.

User-Pi -- интерпретатор команд пользователя. Этот модуль взаимодействует с соответствующим модулем сервера FTP.

User-DTP -- модуль, осуществляющий передачу данных файла по командам, получаемым от модуля User-Pi по протоколу клиент-сервер. Этот модуль взаимодействует с локальной файловой системой клиента.

FTP-сервер включает следующие модули:

Server-Pi -- модуль, который принимает и интерпретирует команды, передаваемые по сети модулем User-PL

Server-DTP -- модуль, управляющий передачей данных файла по командам от модуля Server-PL Взаимодействует с локальной файловой системой сервера.

Клиент и сервер FTP поддерживают параллельно два сеанса -- управляющий сеанс и сеанс передачи данных. Управляющий сеанс открывается при установлении первоначального FTP-соединения клиента с сервером, причем в течение одного управляющего сеанса может последовательно выполняться несколько сеансов передачи данных, в рамках которых передаются или принимаются несколько файлов.

Общая схема взаимодействия клиента и сервера выглядит следующим образом:

1. Сервер FTP всегда открывает управляющий порт TCP 21 для прослушивания, ожидая приход запроса на установление управляющего сеанса FTP от удаленного клиента.

2. После установления управляющего соединения клиент отправляет на сервер команды, которые уточняют параметры соединения:

имя и пароль клиента;

роль участников соединения (активная или пассивная);

порт передачи данных;

тип передачи;

тип передаваемых данных (двоичные данные или ASCII-код);

3. После согласования параметров пассивный участник соединения переходит в режим ожидания открытия соединения на порт передачи данных. Активный участник инициирует это соединение и начинает передачу данных.

4. После окончания передачи данных соединение по портам данных закрывается, а управляющее соединение остается открытым. Пользователь может по управляющему соединению активизировать новый сеанс передачи данных.

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

Протокол FTP использует при взаимодействии клиента с сервером несколько команд (не следует их путать с командами пользовательского интерфейса клиента, которые использует человек).

Эти команды делятся на три группы:

команды управления доступом к системе;

команды управления потоком данных;

команды службы FTP.

В набор команд управления доступом входят следующие команды:

USER -- доставляет серверу имя клиента. Эта команда открывает управляющий сеанс и может также передаваться при открытом управляющем сеансе для смены имени пользователя.

PASS -- передает в открытом виде пароль пользователя.

CWD -- изменяет текущий каталог на сервере.

REIN -- повторно инициализирует управляющий сеанс.

QUIT -- завершает управляющий сеанс.

Команды управления потоком устанавливают параметры передачи данных:

PORT -- определяет адрес и порт хоста, который будет активным участником соединения при передаче данных. Например, команда PORT 194,85,135,126,7,205 назначает активным участником хост 194.85.135.126 и порт 1997 (вычисление номера порта не тривиально, но вполне однозначно).

PASV -- назначает хост пассивным участником соединения по передаче данных. В ответ на эту команду должна быть передана команда PORT с указанием адреса и порта, находящегося в режиме ожидания.

TYPE -- задает тип передаваемых данных (ASCII-код или двоичные данные).

STRU -- определяет структуру передаваемых данных (файл, запись, страница).

MODE -- задает режим передачи (потоком, блоками и т. п.).

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

Команды службы FTP инициируют действия по передаче файлов или просмотру удаленного каталога:

RETR -- запрашивает передачу файла от сервера на клиентский хост. Параметрами команды является имя файла. Может быть задано также смещение от начала файла -- это позволяет начать передачу файла с определенного места при непредвиденном разрыве соединения (этот параметр Используется в команде reget пользовательского интерфейса).

STOR -- инициирует передачу файла от клиента на сервер. Параметры аналогичны команде RETR.

RNFR и RNTO -- команды переименования удаленного файла. Первая в качестве аргумента получает старое имя файла, а вторая -- новое.

DELE, MKD, RMD, LIST -- эти команды соответственно удаляют файл, создают каталог, удаляют каталог и передают список файлов текущего каталога.

Каждая команда протокола FTP передается в текстовом виде по одной команде в строке. Строка заканчивается символами CR и LF ASCII-кода.

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

Символьные клиенты обычно поддерживают следующий основной набор команд:

open имя_хоста -- открытие сеанса с удаленным сервером.

bye -- завершение сеанса с удаленным хостом и завершение работы утилиты ftp.

close -- завершение сеанса с удаленным хостом, утилита ftp продолжает работать.

ls (dir) -- печать содержимого текущего удаленного каталога.

get имя_файла -- копирование удаленного файла на локальный хост.

put имя_файла -- копирование удаленного файла на удаленный сервер.

Служба FTP предназначена для обмена файлами и построена по технологии “клиент-сервер”. Взаимодействие клиента и сервера осуществляется по протоколу FTP (File Transfer Protocol – протокол передачи файлов, RFC 959 ).

Клиент посылает запросы серверу, принимает и передает файлы.

Сервер обрабатывает запросы клиента, передает и принимает файлы.

Рис. 1.3. Взаимодействие клиента и сервера по протоколу FTP.

FTP-клиент – это программный интерфейс пользователя, реализующий протокол передачи файлов FTP. Эта программа позволяет пользователю передавать файлы между двумя компьютерами, связанными между собой локальной (LAN) или глобальной (WAN) сетью. При этом компьютерные платформы могут быть различных типов.

1. Управляющее соединение – соединение для посылки команд серверу и получения ответов от него. Для организации такого соединения используется протокол Telnet. Telnet-соединение устанавливается в один шаг – посылка запроса и ожидание ответа, получение которого свидетельствует о возможности передачи команд FTP. Канал управления существует на протяжении всей FTP-сессии и закрывается после завершения информационного обмена.

2. Соединение данных – соединение для передачи файлов. Передача файлов после установленного Telnet-соединения осуществляется через логическое соединение, организуемое протоколом TCP, который проверяет доступность портов, закрепленных за FTP. Канал данных формируется и ликвидируется по мере необходимости.

Протокол FTP предусматривает два возможных режима установления связи для обмена файлами:

Активный режим;

Пассивный режим.

Активный режим

Действия клиента и сервера:

1. Клиент устанавливает связь и посылает с нестандартного порта N (N>1024) запрос на 21 порт сервера;

2. Сервер посылает ответ на порт N клиента;

3. Сервер устанавливает связь для передачи данных по порту 20 на порт клиента N+1.

Рис. 1.4. Пример установления связи для обмена файлами в активном режиме.


Рис. 1.5. Схема соединения по протоколу FTP в активном режиме.

Пассивный режим

Действия клиента и сервера:

1. Клиент устанавливает связь и посылает запрос (сообщает, что надо работать в пассивном режиме) на 21 порт сервера с нестандартного порта N (N>1024);

2. Сервер назначает нестандартный порт P для канала данных (P>1024) и посылает на порт N клиента ответ, в котором сообщает номер порта P;

3. Клиент устанавливает связь для передачи данных по порту N+1 на порт сервера P.

Рис. 1.6. Пример установления связи для обмена файлами в пассивном режиме.

Работа FTP на пользовательском уровне при передаче файлов содержит несколько этапов:



1.Идентификация (ввод имени-идентификатора и пароля);

2.Выбор каталога;

3.Определение режима обмена:

Передача файлов в текстовом виде;

Передача файлов в бинарном виде;

4. Выполнение команд обмена;

5. Завершение работы.

Протокол FTP определяет запрос-ответный способ взаимодействия между программой-клиентом и программой-сервером.

Служба WWW.

World Wide Web или просто Web – это сеть информационных ресурсов.

Служба WWW – представляет собой множество независимых, но взаимосвязанных серверов и предназначена для обмена текстовой, графической, аудио и видео информацией. Работая с Web, пользователь последовательно соединяется с Web-серверами и получает информацию.

WWW построена по схеме "клиент-сервер".

В качестве клиента выступает браузер, который является также и интерпретатором HTML. Как интерпретатор, браузер в зависимости от команд (тегов) выполняет различные функции: размещение текста на экране, обмен информацией с сервером по мере анализа полученного HTML-текста и др.

Сервер HTTP обрабатывает запросы клиента на получение файлов, выполнение программ и др.

Рис. 1.7. Взаимодействие клиента и сервера по протоколу HTTP.

Для работы с ресурсами Web используется следующие механизмы:

HTML (HyperText Markup Language) – язык гипертекстовой разметки документов (RFC-html4-971218 "Hypertext Markup Language – HTML 4.0");

URL (Universal Resource Locator) – унифицированный указатель ресурсов – способ адресации ресурсов в сети. Каждый ресурс имеет уникальный для Web адрес, называемый унифицированным (универсальным) идентификатором ресурса (URI – Universal Resource Identifier);

HTTP (HyperText Transfer Protocol) – протокол обмена гипертекстовой информацией (RFC 2616 (Hypertext Transfer Protocol - HTTP/1.1 R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, T. Berners-Lee June 1999)";

CGI (Common Gateway Interface) – универсальный интерфейс шлюзов. Создан для взаимодействия HTTP-сервера с другими программами, установленными на сервере (например, СУБД).

Tранспортным протоколом для HTTP является протокол TCP, причем сервер HTTP (сервер Web) находится в состоянии ожидания соединения со стороны клиента стандартно по порту 80 TCP, а клиент HTTP (браузер Web) является инициатором соединения.

Классификация модемов.

По области применения:

Для коммутируемых телефонных каналов;

Для выделенных (арендуемых) телефонных каналов;

Для физических соединительных/абонентских линий (xDSL-модемы

Для цифровых систем передачи;

Для сотовых систем связи;

Для пакетных радиосетей;

Для спутниковых каналов связи;

Для локальных радиосетей;

Для телевизионных, кабельных сетей.

FTP (англ. File Transfer Protocol - протокол передачи файлов) - стандартный протокол, предназначенный для передачи файлов по TCP-сетям (например, Интернет). FTP часто используется для загрузки сетевых страниц и других документов с частного устройства разработки на открытые сервера хостинга.

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

Достаточно яркая особенность протокола FTP в том, что он использует множественное (как минимум - двойное) подключение. При этом один канал является управляющим, через который поступают команды серверу и возвращаются его ответы (обычно через TCP-порт 21), а через остальные происходит собственно передача данных, по одному каналу на каждую передачу. Поэтому в рамках одной сессии по протоколу FTP можно передавать одновременно несколько файлов, причём в обоих направлениях. Для каждого канала данных открывается свой TCP порт, номер которого выбирается либо сервером, либо клиентом, в зависимости от режима передачи.

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

Начиная работу через протокол FTP, клиент входит в сессию, и все операции проводятся в рамках этой сессии (проще говоря, сервер помнит текущее состояние). Протокол HTTP ничего не "помнит" - его задача - отдать данные и забыть, поэтому запоминание состояния при использовании HTTP осуществляется внешними по отношению к протоколу методами.

FTP работает на прикладном уровне модели OSI и используется для передачи файлов с помощью TCP/IP. Для этого должен быть запущен FTP-сервер, ожидающий входящих запросов. Компьютер-клиент может связаться с сервером по порту 21. Это соединение (поток управления) остаётся открытым на время сессии. Второе соединение (поток данных), может быть открыт как сервером из порта 20 к порту соответствующего клиента (активный режим), или же клиентом из любого порта к порту соответствующего сервера (пассивный режим), что необходимо для передачи файла данных. Поток управления используется для работы с сессией - например, обмен между клиентом и сервером командами и паролями с помощью telnet-подобного протокола. Например, "RETR имя файла" передаст указанный файл от сервера клиенту. Вследствие этой двухпортовой структуры, FTP считается внешнеполосным протоколом, в отличие от внутриполосного HTTP.

Соединение и передача данных

Протокол определен в RFC 959. Сервер отвечает по потоку управления трехзначными ASCII-кодами состояния с необязательным текстовым сообщением. Например, "200" (или "200 ОК") означает, что последняя команда была успешно выполнена. Цифры представляют код ответа, а текст - разъяснение или запрос. Текущая передача по потоку данных может быть прервана с помощью прерывающего сообщения, посылаемого по потоку управления.

FTP может работать в активном или пассивном режиме, от выбора которого зависит способ установки соединения. В активном режиме клиент создаёт управляющее TCP-соединение с сервером и отправляет серверу свой IP-адрес и произвольный номер клиентского порта, после чего ждёт, пока сервер не запустит TCP-соединение с этим адресом и номером порта. В случае, если клиент находится за брандмауэром и не может принять входящее TCP-соединение, может быть использован пассивный режим. В этом режиме клиент использует поток управления, чтобы послать серверу команду PASV, и затем получает от сервера его IP-адрес и номер порта, которые затем используются клиентом для открытия потока данных с произвольного клиентского порта к полученному адресу и порту. Оба режима были обновлены в сентябре 1998 г. для поддержки IPv6. В это время были проведены дальнейшие изменения пассивного режима, обновившие его до расширенного пассивного режима.

При передаче данных по сети могут быть использованы четыре представления данных:

    ASCII - используется для текста. Данные, если необходимо, до передачи конвертируются из символьного представления на хосте-отправителе в "восьмибитный ASCII", и (опять же, если необходимо) в символьное представление принимающего хоста. Как следствие, этот режим не подходит для файлов, содержащих не только обычный текст.

    Режим изображения (обычно именуемый бинарным) - устройство-отправитель посылает каждый файл байт за байтом, а получатель сохраняет поток байтов при получении. Поддержка данного режима была рекомендована для всех реализаций FTP.

    EBCDIC - используется для передачи обычного текста между хостами в кодировке EBCDIC. В остальном, этот режим аналогичен ASCII-режиму.

    Локальный режим - позволяет двум компьютерам с идентичными установками посылать данные в собственном формате без конвертации в ASCII.

Для текстовых файлов предоставлены различные форматы управления и настройки структуры записи. Эти особенности были разработаны для работы с файлами, содержащими Telnet или ASA-форматирование.

Передача данных может осуществляться в любом из трёх режимов:

    Поточный режим - данные посылаются в виде непрерывного потока, освобождая FTP от выполнения какой бы то ни было обработки. Вместо этого, вся обработка выполняется TCP. Индикатор конца файла не нужен, за исключением разделения данных на записи.

    Блочный режим - FTP разбивает данные на несколько блоков (блок заголовка, количество байт, поле данных) и затем передаёт их TCP.

    Режим сжатия - данные сжимаются единым алгоритмом (обыкновенно, кодированием длин серий).

Аутентификация

FTP-аутентификация использует обычную схему имя пользователя/пароль для предоставления доступа. Имя пользователя посылается серверу командой USER, а пароль - командой PASS. Если предоставленная клиентом информация принята сервером, то сервер отправит клиенту приглашение и начинается сессия. Пользователи могут, если сервер поддерживает эту особенность, войти в систему без предоставления учётных данных, но сервер может предоставить только ограниченный доступ для таких сессий.

Анонимный FTP

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

NAT - PT

Специально для работы FTP-протокола через межсетевые экраны было сделано расширение NAT, называемое NAT-PT (rfc2766), позволяющее транслировать входящие соединения от сервера к клиенту через NAT. В процессе такого соединения NAT подменяет передаваемые данные от клиента, указывая серверу истинный адрес и порт, с которым сможет соединиться сервер, а потом транслирует соединение от сервера от этого адреса клиенту на его адрес. Несмотря на все меры и нововведения, принятые для поддержки FTP-протокола, на практике функция NAT-PT обычно отключается во всех роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от вирусных угроз.

NAT и обход брандмауэров

FTP обычно передает данные при наличии соединения сервера с клиентом, после того как клиент отправил команду PORT. Это создает проблему как для NAT, так и для брандмауэров, которые не разрешают соединения из интернета к внутренним хостам. Для NAT дополнительной проблемой является то, что представление IP-адресов и номера порта в команде PORT относится к IP-адресу и порту внутреннего хоста, вместо публичного IP-адреса и NAT-порта. Существует два подхода к этой проблеме. Первый заключается в том, что FTP-клиент и FTP-сервер используют команду PASV, которая вызывает соединение для передачи данных, установленное от клиента к серверу. Второй подход - изменение для NAT значений команды PORT с помощью шлюза на прикладном уровне.

Поддержка веб-браузерами

Большая часть обычных веб-браузеров может извлекать файлы, расположенные на FTP-серверах, хотя они могут не поддерживать расширения протоколов вроде FTPS. Когда указан FTP-адрес, а не HTTP-адрес, доступный контент на удалённом сервере представляется аналогично остальному веб-контенту. Полностью функциональный FTP-клиент может быть запущен в Firefox как расширение FireFTP.

Безопасность

FTP не разрабатывался как защищённый (особенно по нынешним меркам) протокол и имеет многочисленные уязвимости в защите. В мае 1999 авторы RFC 2577 свели уязвимости в следующий список проблем:

    Скрытые атаки (bounce attacks)

    Спуф-атаки (spoof attacks)

    Атаки методом грубой силы (brute force attacks)

    Перехват пакетов, сниффинг (packet capture, sniffing)

    Защита имени пользователя

    Захват портов (port stealing)

FTP не может зашифровать свой трафик, все передачи - открытый текст, поэтому имена пользователей, пароли, команды и данные могут быть прочитаны кем угодно, способным перехватить пакет по сети. Эта проблема характерна для многих спецификаций Интернет-протокола (в их числе SMTP, Telnet, POP, IMAP), разработанных до создания таких механизмов шифрования, как TLS и SSL. Обычное решение этой проблемы - использовать "безопасные", TLS-защищенные версии уязвимых протоколов (FTPS для FTP, TelnetS для Telnet и т.д.) или же другой, более защищённый протокол, вроде SFTP/SCP, предоставляемого с большинством реализаций протокола Secure Shell.

Безопасный FTP

Существует несколько методов безопасной передачи файлов, в одно или другое время называемых "Безопасным FTP": FTPS, SFPS, FTP через SSH.

Явный FTPS - расширение стандарта FTP, позволяющее клиентам требовать того, чтобы FTP-сессия была зашифрована. Это реализуется отправкой команды "AUTH TLS". Сервер обладает возможностью позволить или отклонить соединения, которые не запрашивают TLS. Это расширение протокола определено в спецификации RFC 4217. Неявный FTPS - устаревший стандарт для FTP, требующий использования SSL- или TLS-соединения. Этот стандарт должен был использовать отличные от обычного FTP порты.

SFTP, или «SSH File Transfer Protocol», не связан с FTP, за исключением того, что он тоже передаёт файлы и имеет аналогичный набор команд для пользователей. SFTP, или безопасный FTP, - это программа, использующая SSH (Secure Shell) для передачи файлов. В отличие от стандартного FTP он шифрует и команды, и данные, предохраняя пароли и конфиденциальную информацию от открытой передачи через сеть. По функциональности SFTP похож на FTP, но так как он использует другой протокол, клиенты стандартного FTP не могут связаться с SFTP-сервером и наоборот.

FTP через SSH (не SFTP )

FTP через SSH (не SFTP) относится к практике туннелирования обычной FTP-сессии через SSH-соединение. Поскольку FTP использует несколько TCP-соединений, туннелирование через SSH особенно затруднительно. Когда много SSH-клиентов пытаются установить туннель для канала управления (изначальное "клиент-сервер" соединение по порту 21), защищён будет только этот канал; при передаче данных программное обеспечение FTP на любом конце установит новые TCP-соединения (каналы данных), которые обойдут SSH-соединение и, таким образом, лишатся целостной защиты.

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

FTP через SSH иногда относят к безопасным FTP; но не стоит путать его с другими методами, такими как SSL/TLS (FTPS). Другие методы передачи файлов с помощью SSH и не связанные с FTP - SFTP и SCP; в каждом из них и учётные и файловые данные всегда защищены протоколом SSH.

FXP (англ. File eXchange Protocol - протокол обмена файлами) - способ передачи файлов между двумя FTP-серверами напрямую, не закачивая их на свой компьютер. При FXP-сессии клиент открывает два FTP-соединения к двум разным серверам, запрашивая файл на первом сервере, указывая в команде PORT IP-адрес второго сервера.

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

FXP стал использоваться злоумышленниками для атак на другие серверы: в команде PORT указывается IP-адрес и порт атакуемого сервиса на компьютере жертвы, и командами RETR/STOR производится обращение на этот порт от лица FTP-сервера, а не атакующей машины, что позволяло устраивать масштабные DDoS-атаки с использованием сразу многих FTP-серверов, либо обходить систему безопасности компьютера жертвы, если он полагается только на проверку IP клиента и используемый для атаки FTP-сервер находится в доверенной сети или на шлюзе. В результате сейчас практически все серверы проверяют соответствие IP-адреса, указанного в команде PORT, IP-адресу FTP-клиента и по умолчанию запрещают использование там IP-адресов третьих сторон. Таким образом, использование FXP невозможно при работе с публичными FTP-серверами.

Основные команды

    ABOR - Прервать передачу файла

    CDUP - Сменить директорию на вышестоящую.

    CWD - Сменить директорию.

    DELE - Удалить файл (DELE filename).

    EPSV - Войти в расширенный пассивный режим. Применяется вместо PASV.

    HELP - Выводит список команд, принимаемых сервером.

    LIST - Возвращает список файлов директории. Список передаётся через соединение данных.

    MDTM - Возвращает время модификации файла.

    MKD - Создать директорию.

    NLST - Возвращает список файлов директории в более кратком формате, чем LIST. Список передаётся через соединение данных.

    NOOP - Пустая операция

    PASV - Войти в пассивный режим. Сервер вернёт адрес и порт, к которому нужно подключиться, чтобы забрать данные. Передача начнётся при введении следующих команд: RETR, LIST и т.д.

    PORT - Войти в активный режим. Например PORT 12,34,45,56,78,89. В отличие от пассивного режима для передачи данных сервер сам подключается к клиенту.

    PWD - Возвращает текущую директорию.

    QUIT - Отключиться

    REIN - Реинициализировать подключение

    RETR - Скачать файл. Перед RETR должна быть команда PASV или PORT.

    RMD - Удалить директорию

    RNFR и RNTO - Переименовать файл. RNFR - что переименовывать, RNTO - во что.

    SIZE - Возвращает размер файла

    STOR - Закачать файл. Перед STOR должна быть команда PASV или PORT.

    SYST - Возвращает тип системы (UNIX, WIN, …)

    TYPE - Установить тип передачи файла (бинарный, текстовый)

    USER - Имя пользователя для входа на сервер

Не получается решить тест онлайн?

Поможем успешно пройти тест. Знакомы с особенностями сдачи тестов онлайн в Системах дистанционного обучения (СДО) более 50 ВУЗов.

Закажите консультацию за 470 рублей и тест онлайн будет сдан успешно.

1. Группа web-страниц, принадлежащим одной и той же Фирме, организации или частному лицу и связанных между собой по содержанию
сайт
сервер
хост
папка
домен

2. WEВ — страницы имеют расширение …
.НТМ
.ТНТ
.WEB
.ЕХЕ
.WWW

3. Способ подключения к Интернет, обеспечивающий наибольшие возможности для доступа к информационным ресурсам
постоянное соединение по оптоволоконному каналу
удаленный доступ по телефонным каналам
постоянное соединение по выделенному каналу
терминальное соединение по коммутируемому телефонному каналу
временный доступ по телефонным каналам

4. Для хранения Файлов, предназначенных для общего доступа пользователей сети, используется …
хост-компьютер;
файл-сервер
рабочая станция
клиент-сервер
коммутатор

5. Транспортный протокол (TCP) обеспечивает …
разбиение файлов на IP- пакеты в процессе передачи и сборку Файлов в процессе получения
прием, передачу и выдачу одного сеанса связи
предоставление в распоряжение пользователя уже переработанную информацию
доставку информации от компьютера-отправителя к компьютеру-получателю
разбиение Файлов на IP- пакеты в процессе передачи и сборку Файлов в процессе получения

6. Конфигурация (топология) локальной компьютерной сети, в которой все рабочие станции соединены с Файл-сервером, называется …
кольцевой
радиальной (звездообразной)
шинной
древовидной
радиально-кольцевой

7. Скорость передачи данных по каналу связи измеряется количеством передаваемых …
байтов в минуту
битов информации в секунду
слов в минуту
символов в секунду

8. Служба FTP в Интернете предназначена для …
создания, приема и передачи WEВ-страниц
обеспечения функционирования электронной почты
обеспечения работы телеконференций
приема и передачи файлов любого формата
удаленного управления техническими системами

9. В модели OSI все сетевые функции разделены на … уровней.
8
7
6
5

10. Домен верхнего уровня, соответствующий российскому сегменту Internet
га
su
us
ru

11. Компьютер, подключенный к Интернет, обязательно имеет …
IP — адрес
WEВ — страницу
домашнюю WEВ — страницу
доменное имя
URL - адрес

12. Информационно-вычислительные системы (сети) по их размерам подразделяются на …
локальные, региональные, глобальные
терминальные, административные, смешанные
проводные, беспроводные
цифровые, коммерческие, корпоративные

13. Уровень модели OSI, который обеспечивает услуги, непосредственно поддерживающие приложения пользователя называют … уровнем.
прикладным
представительским
сеансовым
транспортным
сетевым

14. Признак «Топология сети» характеризует …
схему проводных соединений в сети (сервера и рабочих станций)
как работает сеть
сеть в зависимости от ее размера
состав технических средств

15. Провайдер – это …
устройство для подключения к Internet
поставщик услуг Internet
потребитель услуг Internet
договор на подключение к Internet

16. Сетевой протокол – это …
набор соглашений о взаимодействиях в компьютерной сети
последовательная запись событий, происходящих в компьютерной сети
правила интерпретации данных, передаваемых по сети
правила установления связи между двумя компьютерами в сети
согласование различных процессов во времени

17. Электронная почта (e-mail) позволяет передавать …
сообщения и приложенные Файлы
исключительно текстовые сообщения
исполняемые программы
www-страницы
исключительно базы данных

18. Локальная вычислительная сеть (LAN) — это …
вычислительная сеть, функционирующая в пределах подразделения или подразделений предприятия
объединение вычислительных сетей на государственном уровне
сеть, функционирующая в пределах одного субъекта федерации
общепланетное объединение сетей

19. Эталонная модель обмена информацией открытой системы получила название модели …
ISO
OSI
OIS
ОИОС

20. Глобальная компьютерная сеть – это …
информационная система с гиперсвязями
множество компьютеров, связанных каналами передачи информации и находящихся в пределах одного помещения, здания
совокупность хост-компьютеров и Файл-серверов
система обмена информацией на определенную тему
совокупность локальных сетей и компьютеров, расположенных на больших расстояниях и соединенных с помощью каналов связи в единую систему

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

Для передачи файла с помощью протокола FTP нужны две программы: FTP-клиент и FTP-сервер.

FTP-клиентом может служить интернет-браузер (MS Internet Explorer, Netscape Navigator), программа управления файлами FAR, специализированная программа CuteFTP и другие. FTP-клиент встроен также в некоторые HTML-редакторы, такие как HomeSite, Dreamweaver или FrontPage.

FTP-сервер - компьютер, который содержит общедоступные файлы и настроен на поддержку протокола FTP (FTP-сервер должен иметь программное обеспечение, поддерживающее протокол FTP).

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

Алгоритм работы протокола FTP

Работа FTP на пользовательском уровне содержит несколько этапов:

1.Идентификация (ввод имени-идентификатора и пароля).

2.Выбор каталога.

3.Определение режима обмена (поблочный, поточный, ASCII или двоичный).

4.Выполнение команд обмена (get, mget, dir, mdel, mput или put).

5.Завершение процедуры (quit или close).

FTP довольно необычная процедура, так как поддерживает две логические связи между ЭВМ (Рис. 1). Одна связь служит для удаленного доступа и использует протокол Telnet. Другая связь предназначена для обмена данными. Сервер производит операцию passive open для порта 21 и ждет соединения с клиентом. Клиент осуществляет операцию active open для порта 21. Канал остается активным до завершения процедуры FTP. TOS (тип IP-сервиса) соответствует минимуму задержки, так как этот канал используется для ручного ввода команд. Канал для передачи данных (TCP) формируется каждый раз для пересылки файлов. Канал открывается перед началом пересылки и закрывается по коду end_of_file (конец файла). IP-тип сервиса (TOS) в этом случае ориентирован на максимальную пропускную способность.

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

Сначала по запросу клиента формируется канал управления, который в дальнейшем используется для передачи команд от клиента и откликов от сервера. Информационный канал формируется сервером по команде клиента, он не должен существовать постоянно на протяжении всей FTP-сессии и может формироваться и ликвидироваться по мере необходимости. Канал управления может быть закрыт только после завершения информационного обмена. Для канала управления используется протокол Telnet. После того как управляющий канал сформирован, клиент может посылать по нему команды. Сервер воспринимает, интерпретирует эти команды и передает отклики.

Рис. 1. Схема работы протокола FTP.

Организация информационного обмена между двумя удаленными машинами

Возможна и другая схема взаимодействия, когда по инициативе клиента осуществляется файловый обмен между двумя ЭВМ, ни одна из которых не является машиной клиента (рис. 2).

Рис. 2. Организация информационного обмена между двумя удаленными машинами

На фазе задания режима обмена предоставляются следующие возможности:

1. Команда Block сохраняет структуру логических записей файла. 2. Команда Stream устанавливает режим, при котором не производится пересылки контрольной информации для блоков. Это наиболее быстрый режим обмена, он работает по умолчанию. 3. Команда TYPE может задать режимы обмена IMAGE, ASCII или EBCDIC. Из них ASCII - используется по умолчанию. Режим EBCDIC применяется для обменов между ЭВМ, работающими с набором символов EBCDIC. Режим IMAGE предполагает обмен 8-битными байтами, используется для передачи двоичной (а не текстовой) информации. Более подробный список команд помещен ниже. Структурно информация может передаваться в виде файлов (структура по умолчанию), в виде последовательности записей (применимо для текстовых файлов ASCII или EBCDIC) или постранично (последняя структура не относится к числу рекомендуемых). 4. Для копирования файла из удаленного сервера используется команда GET, для копирования группы файлов - MGET, в последнем случае применяются символы заменители, например, MGET *.txt (или RFC-18*.txt, при этом скопируются файлы с RFC-1800.txt до RFC-1899.txt, если таковые существуют в текущем каталоге). Аналогом команды GET в какой-то степени является команда DIR (ls), только она переносит содержимое каталога, что для некоторых операционных систем эквивалентно. При использовании модификации mget проявляйте осторожность - вы можете заблокировать телекоммуникационный канал длительным копированием. Для записи файла в удаленный сервер применяется команда PUT. При операциях обмена обычно используется текущий каталог локальной ЭВМ. В вашем распоряжении всегда имеется возможность поменять местный каталог с помощью команды LCD или ее аналога.

Любая команда обмена выполняется в несколько этапов:

  • Формирование канала под управлением клиента, так как именно клиент выдал команду get, dir, put и т.д.
  • Клиент выбирает произвольный номер порта на своей ЭВМ и осуществляет процедуру passive open для этого порта.
  • Клиент посылает номер порта серверу по каналу управления (порт 21), используя команду PORT. Можно обойтись и без команды PORT (используется тот же порт, что и в командном канале), но это увеличивает задержки и по этой причине не рекомендуется.
  • Сервер получает номер порта по каналу управления и выдает команду active open в указанный порт ЭВМ-клиента. Сервер для канала данных всегда использует порт с номером 20.

Список команд FTP:

  • open имя_сервера - открыть соединение. Открывает соединение с сервером. Это имя можно указать сразу при вводе команды, загружающей клиента: ftp ftp.karelia.ru.
  • cd имя_директории - сменить каталог. Осуществляет переход в другой рабочий каталог на FTP-сервере.
  • dir [имя_файла] - выдать список файлов. Выдает список файлов в текущей директории. Если Вам интересен формат списка каталога, нажмите здесь. Не забывайте, что можно использовать шаблоны групповых операций.
  • get имя_файла [имя_локального_файла] - переписать файл. Переписывает файл с удаленного компьютера на локальный. Если указано имя локального файла, то записывает его под этим именем, иначе - в каталог по умолчанию.
  • mget [имя_файла] - переписать группу файлов. То же самое, что и get, но разрешается использовать шаблоны. Перед копированием каждого файла будет запрашиваться подтверждение. Для отмены подтверждений введите prompt.
  • prompt - отменяет подтверждение в командах mget и mput.
  • put имя_файла [имя_удаленного_файла] - записать файл на сервер. Переписывает файл с локального компьютера на удаленный под именем имя_удаленного_файла. Если оно не указано, то файл записывается в текущий каталог с именем локального файла. Команда запрещена для анонимных пользователей
  • mput [имя_файла] - записать группу файлов. То же самое, что и put, но разрешается использовать шаблоны. Перед записью каждого файла будет запрашиваться подтверждение. Для отмены подтверждений введите prompt.
  • ascii - устанавливает ascii-способ передачи файлов. Используется для пересылки файлов-текстов на английском языке. Однако для надежности лучше использовать binary.
  • binary - устанавливает двоичный способ пересылки файлов. При этом файл при передаче не перекодируется и записывается в неизмененном виде. Это наиболее надежный способ передачи файлов.
  • close - закрывает соединение с данным сервером и производит возврат в командный режим. Эта команда автоматически выполняется при выходе из FTP-клиента.
  • quit - выход из FTP-клиента.
  • user - регистрирует на текущем сервере с новым именем. Используйте эту команду, если Вы первый раз по ошибке неправильно ввели имя анонимного пользователя и не хотите снова перенабирать команду open.
  • lcd [имя_директории] - осуществляет переход на локальном компьютере в указанный каталог.
  • pwd - выводит на экран текущий каталог на удаленном компьютере.
  • system - выводит на экран тип операционной системы на удаленном компьютере.
  • help - помощь. Выдает краткую информацию о командах FTP-клиента или о конкретной указанной команде.
Поделиться