Прикладные протоколы стека FTP и TFTP

Содержание

Слайд 2

Прикладные протоколы стека FTP и TFTP

Прикладные протоколы стека FTP и TFTP

Слайд 3

Служба FTP

Служба FTP (от протокола - File Transfer Protocol) – предназначена

Служба FTP Служба FTP (от протокола - File Transfer Protocol) – предназначена
для обмена файлами.
FTP служба построена по хорошо известной схеме:
«клиент-сервер».
Клиент (браузер,Windows Commander, NetVampir ...) посылает запросы серверу и принимает файлы.
Сервер FTP (vsftpd, IIS ...) обрабатывает запросы клиента на получение файла.

Слайд 4

Служба FTP

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

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

Слайд 5

Служба FTP

Служба FTP базируется на двух стандартах:
• URL (Universal Resource

Служба FTP Служба FTP базируется на двух стандартах: • URL (Universal Resource
Locator) – универсальный способ адресации ресурсов в сети ;
• FTP (File Transfer Protocol) – протокол передачи файлов.

Слайд 6

Протокол FTP

File Transfer Protocol (букв. "протокол передачи файлов"), или просто FTP –

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

Слайд 7

FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP.
Датой

FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP. Датой
его рождения можно считать 1971 год.
До начала 90-х годов на долю FTP приходилось около половины трафика в сети Интернет.
И по сей день данный протокол не утратил своей популярности и широко используется для закачки файлов.

Протокол FTP

Слайд 8

Протокол не шифруется, и поэтому при аутентификации логин и пароль передаются по

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

Протокол FTP

Слайд 9

FTP отличается от других приложений тем, что он использует два TCP соединения

FTP отличается от других приложений тем, что он использует два TCP соединения
для передачи файла.
1. Управляющее соединение – соединение для посылки команд серверу и получение ответов от него.
Для канала управления используется протокол Telnet.
2. Соединение данных – соединение для передачи файлов.

Протокол FTP

Слайд 11

В старых версиях для передачи данных использовался только 20-й порт (активный режим).
В

В старых версиях для передачи данных использовался только 20-й порт (активный режим).
современных версиях FTP-серверов порт для канала данных может назначаться сервером из нестандартных (N > 1024) портов (пассивный режим).
Протокол FTP определяет запрос-ответный способ взаимодействия между программой-клиентом и программой-сервером.

Протокол FTP

Слайд 12

Прикладные протоколы стека FTP

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

Прикладные протоколы стека FTP Работа FTP на пользовательском уровне содержит несколько этапов:
Идентификация (ввод имени и пароля).
2. Выбор каталога.
3. Определение режима обмена (поблочный, поточный, ascii или двоичный).
4. Выполнение команд обмена (get, mget, dir, mdel, mput или put).
5. Завершение процедуры (quit или close).

Слайд 13

Различие работы пассивного режима и активного.
1. Активный режим
Действия сервера и клиента:
1. Клиент

Различие работы пассивного режима и активного. 1. Активный режим Действия сервера и
устанавливает связь и посылает запрос на 21-й порт сервера с порта N (N>1024);
2. Сервер посылает ответ на порт N (N>1024) клиента;
3. Сервер устанавливает связь для передачи данных по порту 20 на порт клиента N+1.

Протокол FTP

Слайд 15

2. Пассивный режим:
Действия сервера и клиента:
1. Клиент устанавливает связь и посылает запрос

2. Пассивный режим: Действия сервера и клиента: 1. Клиент устанавливает связь и
(сообщает, что надо работать в пассивном режиме) на 21-й порт сервера с порта N (N>1024);
2. Сервер посылает ответ и сообщает номер порта для канала данных P (P>1024) на порт N (N>1024) клиента;
3. Клиент устанавливает связь для передачи данных по порту N+1 на порт сервера P (P>1024).

Протокол FTP

Слайд 17

Активный FTP выгоден для FTP-сервера, но вреден для стороны клиента.
FTP сервер

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

Протокол FTP

Слайд 18

Пример запроса клиента и ответа сервера.

Пример запроса клиента и ответа сервера.

Слайд 19

Установка соединения Connecting to ftp.ru ... Connected to ftp.ru [194.87.5.52]
сервер: 220 megillah.demos.su FTP server

Установка соединения Connecting to ftp.ru ... Connected to ftp.ru [194.87.5.52] сервер: 220
(Version wu-2.4) ready. - // код ошибки, имя хоста, протокол, версия сервера, только для чтения клиент: USER anonymous - // имя пользователя сервер: 331 Guest login ok, send your complete e-mail address as password.- //код ошибки, имя пользователя корректно, нужен пароль клиент: PASS ****** - // пароль клиента сервер: 230 Guest login ok, access restrictions apply. - //код ошибки, пользователь идентифицирован, продолжайте

Протокол FTP

Слайд 20

клиент: CWD / - // переход к корневой директории сервер: 250 CWD command

клиент: CWD / - // переход к корневой директории сервер: 250 CWD
successful. - // команда выполнена успешно клиент: TYPE A - // передавать информацию в текстовом виде сервер: 200 Type set to A. - // текстовый тип установлен клиент: PASV - // сервер должен определить нестандартный порт данных, начать его слушать сервер: 227 Entering Passive Mode (194,87,5,52,9,75) - // сервер возвращает ip-адрес (194.87.5.52) и номер порта (2383) клиент: LIST - // передать по соединению данных список имен файлов в директории сервер: Data connection established - // установлено соединение данных

Протокол FTP

Слайд 21

клиент: 150 Opening ASCII mode data connection for /bin/ls. - // татус

клиент: 150 Opening ASCII mode data connection for /bin/ls. - // татус
файла правилен, подготавливается открытие канала
Передача информации по каналу данных сообщение: Data transfer started - // начало передачи информации сообщение: DATA connection closed by remote server - // закрытие канала передачи данных
Информирование клиентом пользователя сообщение: Received 1 428 bytes in 0:00:00 (35 700 bytes/s) - // сколько байт получено (1 428), за какое время (ч.мм.сс) и с какой средней скоростью (35 700 bytes/s) сообщение: JOB COMPLETED SUCCESSFULLY - // работа завершена

Протокол FTP

Слайд 22

Протокол FTP
Основные команды

ABOR — Прервать передачу файла
CDUP — Сменить каталог на вышестоящий.
CWD

Протокол FTP Основные команды ABOR — Прервать передачу файла CDUP — Сменить
— Сменить каталог.
DELE — Удалить файл (DELE filename).
EPSV — Войти в расширенный пассивный режим. Применяется вместо PASV.
HELP — Выводит список команд, принимаемых сервером.
LIST — Возвращает список файлов каталога. Список передаётся через соединение данных.

Слайд 23

Протокол FTP
Основные команды

MDTM — Возвращает время модификации файла.
MKD — Создать каталог.
NLST —

Протокол FTP Основные команды MDTM — Возвращает время модификации файла. MKD —
Возвращает список файлов каталога в более кратком формате, чем LIST. Список передаётся через соединение данных.
NOOP — Пустая операция.
PASS — Пароль.
PASV — Войти в пассивный режим. Сервер вернёт адрес и порт, к которому нужно подключиться, чтобы забрать данные. Передача начнётся при введении следующих команд: RETR, LIST и т. д.

Слайд 24

Протокол FTP
Основные команды

PORT — Войти в активный режим. Например PORT 12, 34,

Протокол FTP Основные команды PORT — Войти в активный режим. Например PORT
45, 56, 78, 89. В отличие от пассивного режима для передачи данных сервер сам подключается к клиенту.
PWD — Возвращает текущий каталог.
QUIT — Отключиться.
REIN — Реинициализировать подключение.
RETR — Скачать файл. Перед RETR должна быть команда PASV или PORT.
RNFR и RNTO — Переименовать файл.
RNFR — что переименовывать, RNTO — во что.

Слайд 25

Протокол FTP
Основные команды

RMD — Удалить каталог.
SIZE — Возвращает размер файла.
STOR — Закачать

Протокол FTP Основные команды RMD — Удалить каталог. SIZE — Возвращает размер
файл.
Перед STOR должна быть команда PASV или PORT.
SYST — Возвращает тип системы (UNIX, WIN, …).
TYPE — Установить тип передачи файла (бинарный, текстовый).
USER — Имя пользователя для входа на сервер.

Слайд 26

Протокол FTP
Коды возврата

При выполнении FTP система возвращает трехразрядные десятичные коды-ошибки, которые позволяют

Протокол FTP Коды возврата При выполнении FTP система возвращает трехразрядные десятичные коды-ошибки,
судить о корректности обмена.
Выдача кода сопровождается текстом-комментарием.
Первая цифра может принимать значения от 1 до 5.

Слайд 27

Протокол FTP
Коды возврата

Первая цифра:
1yz – предварительный положительный ответ: команда принята, но

Протокол FTP Коды возврата Первая цифра: 1yz – предварительный положительный ответ: команда
не завершена;
2yz – действие успешно завершено;
3yz – команда принята, сервер ждет дополнительную информацию;
4yz – временная неудача, повторить через некоторое время;
5yz – фатальная ошибка.

Слайд 28

Протокол FTP
Коды возврата

Вторая цифра:
x0z – синтаксис;
x1z – ответ на запрос информации;
x2z

Протокол FTP Коды возврата Вторая цифра: x0z – синтаксис; x1z – ответ
– ответ относится к состоянию управляющего соединения или соединения данных;
x3z – аутентификация и учет;
x4z – смысл не определен;
x5z – состояние файловой системы сервера.

Слайд 29

Протокол FTP
Некоторые коды возврата

110 Комментарий
120 Функция будет реализована через nnn минут
125 Канал

Протокол FTP Некоторые коды возврата 110 Комментарий 120 Функция будет реализована через
открыт, обмен данными начат
150 Статус файла правилен, подготавливается открытие канала
200 Команда корректна
211 Системный статус или отклик на справочный запрос
212 Состояние каталога
213 Состояние файла
214 Справочное поясняющее сообщение

Слайд 30

Протокол FTP
Некоторые коды возврата

220 Слишком много подключений к FTP-серверу (можете попробовать позднее).

Протокол FTP Некоторые коды возврата 220 Слишком много подключений к FTP-серверу (можете
В некоторых версиях указывает на успешное завершение промежуточной процедуры
221 Благополучное завершение по команде quit
225 Канал сформирован, но информационный обмен отсутствует
226 Закрытие канала, обмен завершен успешно
230 Пользователь идентифицирован, продолжайте
250 Запрос прошел успешно
331 Имя пользователя корректно, нужен пароль

Слайд 31

Протокол FTP
Некоторые коды возврата

332 Для входа в систему необходима аутентификация
421 Процедура не

Протокол FTP Некоторые коды возврата 332 Для входа в систему необходима аутентификация
возможна, канал закрывается
425 Открытие информационного канала не возможно
426 Канал закрыт, обмен прерван
450 Запрошенная функция не реализована, файл не доступен, например, занят
451 Локальная ошибка, операция прервана
452 Ошибка при записи файла (не достаточно места)
500 Синтаксическая ошибка, команда не может быть интерпретирована (возможно, она слишком длинна)

Слайд 32

Протокол FTP
Некоторые коды возврата

501 Синтаксическая ошибка (неверный параметр или аргумент)
502 Команда не

Протокол FTP Некоторые коды возврата 501 Синтаксическая ошибка (неверный параметр или аргумент)
используется (нелегальный тип MODE)
503 Неудачная последовательность команд
504 Команда не применима для такого параметра
530 Система не загружена (not logged in)
532 Необходима аутентификация для запоминания файла
550 Запрошенная функция не реализована, файл не доступен, например, не найден
552 Запрошенная операция прервана, недостаточно выделено памяти

Слайд 33

Протокол FTP

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

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

Слайд 34

Протокол FTP

Предположим, что нам нужно загрузить большой объём файлов на FTP-сервер, например,

Протокол FTP Предположим, что нам нужно загрузить большой объём файлов на FTP-сервер,
для будущего сайта.
Эту работу можно выполнить по FTP-протоколу.
Можно воспользоваться бесплатным приложением FileZilla.
Для того чтобы начать загрузку файлов на FTP-сервер через FTP-протокол, нам обязательно нужно авторизоваться, то есть ввести логин и пароль.
Обычно это требуется администраторам, которые непосредственно занимаются созданием сайта.

Слайд 36

Протокол FTP

В левой части экрана расположены данные Вашего компьютера.
Правая часть пока паста.
Там

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

Слайд 38

Протокол FTP

После этого нажимаем: «Быстрое соединение».
Соединение может занять несколько секунд.
После чего в

Протокол FTP После этого нажимаем: «Быстрое соединение». Соединение может занять несколько секунд.
правой половине экрана появится информация с данными FTP-сервера.
Теперь можно переносить данные из левого окна в правое и наоборот.
Для этого выбираем файл или папку в левом окне приложения, нажимаем правую кнопку мыши и выбираем:
«Закачать на сервер».
Через некоторое время информация отобразится в правом окне приложения.

Слайд 39

Протокол TFTP

Протокол TFTP

Слайд 40

Протокол TFTP

TFTP (англ. Trivial File Transfer Protocol — простой протокол передачи файлов).

Протокол TFTP TFTP (англ. Trivial File Transfer Protocol — простой протокол передачи

TFTP, в отличие от FTP, не содержит возможностей аутентификации (хотя возможна фильтрация по IP-адресу) и основан на транспортном протоколе UDP.
TFTP – протокол без гарантированной доставки.
Может использоваться в локальной сети, где скорость передачи важнее.
На практике используется редко.

Слайд 41

Протокол TFTP

Основное назначение TFTP — обеспечение простоты реализации клиента.
В связи с этим

Протокол TFTP Основное назначение TFTP — обеспечение простоты реализации клиента. В связи
он используется:
• для загрузки бездисковых рабочих станций,
• для загрузки обновлений и конфигураций в «умные» сетевые устройства,
• для записи статистики с мини-АТС (CDR) и аппаратных маршрутизаторов/файрволов.

Слайд 42

Список литературы:

Компьютерные сети. Н.В. Максимов, И.И. Попов, 4-е издание, переработанное и дополненное,

Список литературы: Компьютерные сети. Н.В. Максимов, И.И. Попов, 4-е издание, переработанное и
«Форум», Москва, 2015.
Компьютерные сети. Принципы, технологии, протоколы, В. Олифер, Н. Олифер (5-е издание), «Питер», Москва, Санк-Петербург, 2016.
Компьютерные сети. Э. Таненбаум, 4-е издание, «Питер», Москва, Санк-Петербург, 2003.
Построение сетей на базе коммутаторов и маршрутизаторов / Н.Н. Васин, Национальный Открытый Университет «ИНТУИТ», 2016.
Компьютерные сети : учебное пособие / А.В. Кузин, 3-е издание, издательство «Форум», Москва, 2017.
https://moodle.kstu.ru/mod/page/view.php?id=80

Слайд 43

Список ссылок:

https://i.stack.imgur.com/T8Esk.png
https://www.nwiglobal.com/wp-content/uploads/2015/02/150210-FileZilla-FTP-Client.png
https://www.youtube.com/watch?v=rTyX-bAdVYw

Список ссылок: https://i.stack.imgur.com/T8Esk.png https://www.nwiglobal.com/wp-content/uploads/2015/02/150210-FileZilla-FTP-Client.png https://www.youtube.com/watch?v=rTyX-bAdVYw