№ | Слайд | Текст |
1 |
 |
File Transfer ProtocolСетевой протокол, предназначенный для передачи файлов в компьютерных сетях, позволяет просматривать содержимое каталогов и загружать файлы с сервера или на сервер, кроме того возможен режим передачи файлов между серверами (FXP). Один из старейших прикладных протоколов - 1971 г. Уязвим к перехвату сетевых пакетов (нет шифрования, пароль передаётся открытым текстом). Используются два соединения (два порта): для передачи команд (control connection) и для передачи данных (data connection) RFC 959 (1985 г.) Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии Rev. 1.01 / 14.11.2007 |
2 |
 |
FTP и OSI RMFTP Layer 7 Layer 6 Layer 5 Layer 4 Layer 3 Layer 2 Layer 1 APPLICATION TCP IP Physical PRESENTATION SESSION TRANSPORT NETWORK DATA LINK PHYSICAL TCP/IP OSI/RM Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
3 |
 |
Схема взаимодействия по FTPФс Фс ИП – интерпретатор протокола ППД – процесс передачи данных ФС – файловая система Ftp-сервер Ftp-клиент TELNET user interface ? FTP-Команды ИП сервера ИП клиента Ftp-отклики? ППД сервера Данные ППД клиента Не обязательно существует во время всего сеанса Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
4 |
 |
Active modeL LIST 200 150 data 226 PORT ... L Ппд Ип Ип Ппд 192.168.1.1 Ftp-сервер connect 192.168.1.13:33002 TCP:20 accept TCP:21 192.168.1.13 Ftp-клиент connect TCP:33001 accept TCP:33002 Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
5 |
 |
Passive modeL L 227 ... LIST PASV 150 data 226 Ппд Ип Ип Ппд 192.168.1.1 Ftp-сервер accept TCP:35001 accept TCP:21 192.168.1.13 Ftp-клиент connect TCP:33001 connect 192.168.1.1:35001 TCP:33002 Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
6 |
 |
Режим FXP (File eXchange ProtL L RETR 226 227 A PASV 150 data 200 STOR 150 226 PORT A L Ппд Ип Ип Ип Ппд Ппд Ип 192.168.1.1 Ftp-сервер A accept TCP: 35001 accept TCP:21 192.168.1.13 Ftp-клиент connect 33001, 33002 192.168.1.2 Ftp-сервер B connect 192.168.1.1:35001 TCP: 20 accept TCP:21 Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
7 |
 |
Команды FTPUSER username Идентификация пользователя PASS password Аутентификация пользователя PORT a1,a2,a3,a4,p1,p2 Адрес ППД клиента для активного режима PASV Запрос адреса ППД сервера для пассивного режима RETR pathname Загрузка файла с сервера STOR pathname Передача файла на сервер LIST [pathname] Получение списка файлов на сервере CWD pathname Смена каталога на сервере PWD Получение имени текущего каталога на сервере TYPE, MODE, STRU Параметры канала передачи данных NOOP Пустая операция SYST Информация о системе HELP Помощь (список команд сервера) QUIT Выход Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
8 |
 |
Отклики FTP1хх – Позитивный предварительный ответ (запрошенное действие начато, следует ожидать ещё одного отклика, прежде чем выдать новую команду). 2хх – Позитивный ответ о завершении (запрошенное действие успешно выполнено, можно выдавать новую команду). 3хх – Позитивный промежуточный ответ (команда принята, но действие не начато, ожидается другая команда с дополнительной информацией). 4хх – Временный негативный ответ (команда не принята, но ошибочная ситуация временна, запрошенное действие можно попытаться выполнить позднее). 5хх – Постоянный негативный ответ (команда не принята, пользовательскому процессу не следует выдавать эту же команду снова). Примеры: 150 – Успешный статус, открывается канал данных 200 – Команда принята 220 – Сервис готов для нового пользователя (при установлении соединения) 226 – Канал данных закрыт, операция закончена 227 – Установка пассивного режима (сообщаются IP и порт) 230 – Пользователь авторизован 331 – Пользователь идентифицирован, требуется аутентификация 426 – Канал данных разорван, операция прервана 500, 501 – Синтаксическая ошибка Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
9 |
 |
Параметры канала данныхТип данных (TYPE): ASCII, IMAGE, (EBCDIC, LOCAL) ASCII – передача 8-битных текстовых данных (TELNET), строки должны заканчиваться <CR><LF> EBCDIC – передача 8-битных текстовых данных в кодировке EBCDIC, строки заканчиваются символом <NL> IMAGE – передача 8-битных бинарных данных LOCAL – передача бинарных данных с указанной длиной байта в битах Структура данных (STRU): FILE, RECORD, PAGE FILE – непрерывная последовательность байт RECORD – последовательная совокупность записей PAGE – нумерованная совокупность независимых страниц Способ передачи данных (MODE): STREAM, BLOCK, COMPRESSED STREAM – поток байт BLOCK – серия блоков данных, предварённых заголовком COMPRESSED – поток данных с комбинациями, управляющими сжатием типа RLE Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
10 |
 |
Пример FTP-сеанса220 (vsFTPd 2.0.3) USER anonymous 331 Please specify the password. PASS ftp@localhost 230 Login successful. SYST 215 UNIX Type: L8 PORT 192,168,1,13,12,12 200 PORT command successful. LIST 150 Here comes the directory listing. 226 Directory send OK. PASV 227 Entering Passive Mode (192,168,1,1,154,87) RETR example_racecond.c 150 Opening BINARY mode data connection for example_racecond.c 226 File send OK. QUIT 221 Goodbye. 3084=12*256+12, 39511=154*256+87 S:(192.168.1.1:20) ? C:(192.168.1.13:3084) -rwxr-xr-x 1 1000 1000 14757 a.out -rwxr-xr-x 1 1000 1000 14098 client -rw-r--r-- 1 1000 1000 782 example_fork.c -rw-r--r-- 1 1000 1000 1399 example_ghbn.c ... C:(192.168.1.1:xxx) ? S:(192.168.1.1:39511) #include <signal.h> #include <unistd.h> #include <stdio.h> ... Петрозаводский госуниверситет, А. В. Соловьев, 2007 Сетевые технологии |
«File Transfer Protocol» |