Добавил:
twitch.tv Заведующий методическим кабинетом, преподаватель на кафедре компьютерного спорта и прикладных компьютерных технологий. Образование - Магистр Спорта. Суета... Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
3
Добавлен:
04.06.2023
Размер:
191.17 Кб
Скачать

Міністерство освіти і науки України

Київський коледж комп’ютерних технологій та економіки Національного авіаційного університету

ЗАТВЕРДЖУЮ заступник директора з навчально-виробничої роботи

________ А. П.Єрмоленко «___»____20__ р.

КОМП’ЮТЕРНІ МЕРЕЖІ

ІНСТРУКЦІЯ

до проведення лабораторної роботи № 8

Тема: «Дослідження роботи служби FTP»

Напрям підготовки «6.050102 Комп’ютерна інженерія»

Спеціальність шифр «5.05010201»

Освітньо-кваліфікаційний рівень – молодший спеціаліст

РОЗГЛЯНУТО ТАСХВАЛЕНО на засіданні випускової комісії спеціальності «ОКСМ»

___.____.2016 р.

Протокол № 1 голова ВК

___________І.В. Чорновол

РОЗРОБИВ ВИКЛАДАЧ

______ Ю.В. Черняхівський __.___.2016 р.

Київ 2016

Лабораторна робота № 8

Тема: Дослідження роботи служби FTP

Мета: Дослідити роботу протоколу для передачі файлів FTP за допомогою вивчення моделі взаємодії між клієнтом і сервером FTP за допомогою засобів Telnet, а також отримати практичні навички роботи з FTP-клієнтом.

Кількість аудиторних годин: 2 години

Завдання:

-вивчити модель взаємодії між клієнтом і сервером FTP за допомогою засобів Telnet;

-отримати практичні навички роботи з FTP-клієнтом.

Література:

1.В.Г. Олифер, Н.А. Олифер. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 5-е изд. – СПб.: Питер, 2016. – 992 с.: ил.

2.Компьютерные сети. 5-е изд. / Э. Таненбаум, Д. Уэзеролл – СПб.: Питер, 2012. – 960 с.: ил.

3.Компьютерные сети: Нисходящий подход / Джеймс Куроуз, Кит Росс. – 6-е изд. – Москва: Издательство «Э», 2016. – 916 с.

4.Современные компьютерные сети. 2-е изд. / В. Столлингс. – СПб.:Питер, 2003. – 783 с.

5.Жуков І.А., Дрововозов В.І., Масловський Б.Г. Експлуатація комп’ютерних систем та мереж: Навч. посібник.- К.: НАУ-Друк, 2007. - 368с.

5.Черняхівський Ю.В. Конспект лекцій з предмету «Комп’ютерні мережі»

Характеристика робочого місця:

Робоче місце на базi ПК з встановленою ОС WINDOWS XP, інстальованим та налаштованим мережним адаптером Fast Ethernet та його драйвером, інстальованими та налаштованими протоколами ТСР/ІР, підключенням до корпоративної мережі коледжу, навчальний мережний сервер на базі ПК з операційною системою FreeBSD та інстальованим і налаштованим FTP-сервером.

Вимоги до охорони праці при виконанні лабораторної роботи:

1.Виконувати вимоги інструкції з охорони праці при виконанні лабораторно-практичних робіт в лабораторії

2.Не вмикати та вимикати ПЕОМ самостійно без потреби

3.Не залишати ПЕОМ у ввімкненому стані без нагляду

4.Не затуляти вентиляційні отвори монітора та системного блока

5.Не класти на клавіатуру різні речі – зошити, ручки тощо

6.Виконувати роботу у відповідності з інструкцією

Теоретичні відомості

Сервіс FTP (File Transfer Protocol) дозволяє користувачам локального хоста отримувати доступ до файлової системи віддаленого хоста.

Забезпечення взаємодії двох віддалених систем за протоколом FTP реалізується в рамках архітектури «клієнт-сервер». Для передачі файлів по протоколу FTP необхідна наявність сервера, який надає доступ до локальних ресурсів для віддалених клієнтів. Клієнти звертаються до сервера з запитом на отримання ресурсів файлової системи сервера.

Процес встановлення з'єднання з FTP-сервером ініціює клієнт. Після аутентифікації клієнта на сервері, встановлюється сеанс зв'язку, і, залежно від команд клієнта, які поступають до сервера, відбувається передача даних. Завершення сеансу зв'язку ініціюється клієнтом або при наявності великої кількості помилок, що виникають при передачі даних. За час одного сеансу зв'язку можливо неодноразове звернення клієнта до ресурсів файлової системи сервера.

В якості транспортного протоколу для FTP використовується протокол TCP стеку протоколів TCP / IP.

Для організації роботи протоколу FTP використовується два канали зв'язку. Коли клієнт FTP з'єднується з FTP-сервером, створюється так званий керуючий канал (CMD), за яким відбувається передача команд. Зазвичай для організації керуючого каналу на сервері використовується порт TCP з номером 21. Всі керуючі команди протоколу FTP передаються в кодах ASCII. Тому, для інтеграції протоколу FTP з ресурсами операційних систем, в їх складі повинен бути реалізований протокол PI (Protocol Interpretator), що дозволяє перетворювати команди FTP у формат команд інтерпретатора ОС для роботи з локальною файловою системою (FS) сервера або клієнта. Для взаємодії клієнта FTP безпосередньо з користувачем, на клієнті повинен бути реалізований інтерфейс взаємодії з користувачем (UI), що представляє собою набір команд локальної операційної системи (ЛОС) для забезпечення взаємодії з PI у рамках єдиної системи команд ЛОС.

Для передачі файлів, під управлінням керуючого каналу, відкривається окремий канал для передачі даних (DATA). Файли для передачі по протоколу FTP можуть бути різних типів, але при передачі всі дані перетворюються в коди ASCII, а на приймальній стороні відновлюються і зберігаються у файл вихідного формату. Для здійснення перетворень над даними файлів, які передаються, як на клієнті, так і на сервері FTP реалізується протокол перетворення даних DTP.

Після завершення передачі даних, канал зв'язку для передачі даних негайно закривається.

Модель взаємодії клієнта і сервера FTP наведена на рисунку 1.

Рисунок 1 - Модель взаємодії клієнта і сервера FTP

Порядок виконання роботи

1. Вивчення моделі FTP

1.1.Зайти в директорію / incoming.

1.2.Створити локальну директорію / incoming / server.

1.3.Створити локальну директорію / incoming / client.

1.4.За допомогою сеансу Telnet установити сеанс зв'язку з сервером FTP.

1.5.Задати поточною директорію / incoming / server.

1.6.Відкрити друге командне вікно і організувати канал передачі даних FTP.

1.7.Емулювати передачу файлу ftpsend.txt з довільними даними за допомогою створених каналів зв'язку FTP.

1.8.За допомогою відкритого FTP-з'єднання і засобів telnet перевірити наяність файлу ftpsend.txt в директорії / incoming / server.

1.9.Провести операцію читання файлу / temp_ftp / server / ftpsend.txt командами протоколу TELNET за допомогою сеансів зв'язку Telnet.

1.10.Переконатися в успішній реалізації операції читання.

1.11.Завершити сеанси зв'язку Telnet.

Вивчення моделі FTP, наведеної на рисунку 1, при роботі з мережевими ОС (наприклад, ОС FreeBSD), можливо за допомогою засобів підтримки протоколу

Telnet. Дана можливість реалізується з

огляду

на те, що

протокол

Telent

здійснює

передачу даних в ASCII кодах за допомогою з'єднання

TCP на

вказаний

порт.

Ставлячи в якості параметра порт для сервера FTP, можливо

відображення

трафіку обміну між клієнтом

і сервером FTP на моніторі

користувача.

 

 

 

 

 

 

Робота з FTP засобами Telnet передбачає

знання механізмів взаємодії

клієнта і сервера FTP, а також синтаксис команд FTP.

 

 

Першим етапом передачі файлів за

допомогою FTP, є

створення каналу

передачі команд (CMD). Для цього

клієнтові необхідно встановити з’єднання

TCP

з

сервером FTP. Для цих цілей

необхідно

запустити

клієнта

Telnet,

вказавши в якості параметра IP адресу сервера FTP (віддаленого компьютера)

і TCP

порт підключення C1 (за замовчуванням сервер FTP використовує для

створення керуючого каналу TCP порт 21). Формат команди для запуску Telnet з командного рядка наступний:

telnet [адреса_IP] [порт_TCP]

# telnet 10.40.0.150 21

TCP порт клієнта FTP (C2 на рисунку 1) призначається локальній ОС при встановленні з'єднання автоматично з числа вільних портів TCP.

Після успішного створення каналу зв'язку TCP з сервером FTP, з'явиться відповідне повідомлення. Далі можливе введення команд протоколу FTP для управління роботою сервера FTP.

У таблиці 1 наведено список основних команд протоколу FTP.

Таблиця 1 – Перелік основних команд протоколу FTP

Команди

Параметри

Опис

FTP

 

 

USER

Ім’я користувача

Ініціалізація користувача

PASS

Пароль

Передача паролю

CWD

Директорія

Вибір директорії на сервері

STOR

Ім’я файлу

Передача локального файлу на сервер

Команди

Параметри

Опис

FTP

 

 

RETR

Ім’я файлу

Читання файлу з сервера

DELE

Ім’я файлу

Видалення файлу на сервері

PASV

 

Запит на ініціалізацію каналу передачі даних

LIST

 

Виводить детальний список файлів в

 

 

поточній директорії

NLST

 

Виводить скорочений список файлів в

 

 

поточній директорії

Для доступу до ресурсів сервера FTP, необхідно за допомогою команд USER і PASS вказати ім'я користувача і пароль для аутентифікації на сервері. Формат команд:

USER anonymous

 

PASS [пароль]

 

Ім'я користувача і пароль необхідно

вводити з урахуванням регістра

символів. Наприклад:

 

 

telnet> user anonymous

 

Перед введенням команд FTP, ініціюючих передачу даних між клієнтом

і

сервером (наприклад, команд запису

або читання файлів STOR і RETR,

отримання списку директорій і файлів у поточній директорії тощо), необ-хідно організувати канал передачі даних.

Запит на організацію каналу передачі даних здійснюється за допомогою команди PASV. У відповідь сервер повідомляє свою IP-адресу і номер порту TCP, відкритого ним для організації каналу передачі даних.

telnet> PASV 192,168,0,1,4,41

Останні два числа в посилці-відповіді показують номер порту TCP, який надається. Порт TCP представляє собою 16-бітне значення. У відповіді сервера

це значення розбивається на два

8-бітних числа,

перше з яких відповідає

старшим 8 бітам

16-бітного значення порту TCP, а

друге –

молодшим

8 бітам. Тому, щоб

знайти

 

номер порту TCP сервера

для

передачі даних, потрібно перше число

помножити на 256 і до отриманого

результату додати друге число. Тобто з наведеного вище:

 

номер порта TCP = 4*256+41 = 1065

Для створення другого з'єднання TCP, необхідно відкрити ще одне вікно для введення команд, і в ньому здійснити

підключення через Telnet по вказанному у

відповіді на команду PASV адресу IP і порту TCP зі знайденим номером. Для прикладу, який розглядався:

# telnet 192.168.0.1 1065

Після введення цієї команди, встановиться друге з'єднання TCP за яким будуть передаватися дані протоколу FTP (канал DATA рисунок 1). Далі можна здійснювати різні операції з файлами віддаленого комп'ютера для передачі даних (таблиця 1).

Наприклад, передачу в поточний каталог сервера FTP текстового файлу myfile.txt.

Для цього в першому вікні вводиться команда CWD для переходу в інший каталог. Наприклад,

telnet> CWD incoming

Потім вводиться команда STOR з параметром, який вказує ім’я файлу, що створюється. Наприклад,

telnet> STOR myfile.txt

Після цього у вікні передачі даних вводиться довільний текст, який буде міститися у файлі. Після закінчення введення тексту вводиться команда Ctrl-],

яка вказує

на

завершення передачі даних. Після чого сервер автоматично

завершить

це

з'єднання і збереже передані дані у вказаному файлі (для

розглянутого прикладу - myfile.txt).

Важливо. В тексті файлу, який ви створюєте обов’язково повинно бути

прописано ваше ім’я, прізвище та повний номер групи.

 

Для перевірки, переконатися в наявності і переглянути

вміст переданого

файлу можна за допомогою протоколу Telnet. Для цього

необхідно знову

встановити канал передачі даних за допомогою команди PASV через порт TCP, номер якого буде іншим, і використати відповідні команди з таблиці 1.

Для передачі іншого файлу, необхідно знову вводити команду PASV і організовувати новий канал передачі даних, через порт TCP, номер якого буде іншим.

Ці недоліки відсутні при роботі з FTP-клієнтом, у якому автоматизовано створення необхідних з’єднань і є можливість працювати як з віддаленими, так і з локальними директоріями.

Важливо. В лабораторній роботі необхідно виконати всі команди, описані в таблиці1, за наведеним прикладом роботи з командами CWD та STOR.

2. Робота с FTP-клієнтом

2.1.Запустити клієнта ftp.

2.2.За допомогою команд help і ? переглянути список підтримуваних команд та їх призначення.

2.3.Встановити з'єднання з сервером FTP.

2.4.За допомогою відкритого FTP-з'єднання отримати список файлів з директрії сервера / incoming / server /.

2.5.За допомогою відкритого FTP-з'єднання скопіювати файл / incoming / server / ftpsend.txt в директорію / incoming / client.

2.6.За допомогою відкритого FTP-з'єднання перевірити наявність файлу ftpsend.txt в директорії / incoming / server.

2.7.За допомогою відкритого FTP-з'єднання видалити файли ftpsend.txt з

директорій / incoming / server і / incoming / client.

2.8.За допомогою відкритого FTP-з'єднання видалити директорії / incoming / server і / incoming / client.

2.9.Закрити з'єднання FTP і завершити роботу клієнта FTP.

Використання безпосередньо команд протоколу FTP для передачі файлів є досить трудомістким процесом. Тому, у більшості ОС для полегшення роботи з віддаленою файловою системою через протокол FTP є спеціальні інтерфейси для взаємодії з користувачем (UI - дивись рисунок 1), які зазвичай називають

FTP-клієнтом, і

які надають зручний механізм взаємодії користувача з

інтерпретатором команд протоколу FTP.

 

Для запуску FTP-клієнта в ОС Solaris вводиться відповідна команда

в

командному

рядку, з зазначенням в якості параметра IP-адреси

сервера.

Наприклад,

 

 

 

# ftp 10.40.0.150

 

Далі за відповідними запитами вводяться ім'я користувача (anonymous) і пароль (порожній).

Після цього на екрані з'явиться запрошення

ftp> (керуючий канал створений і сервер FTP готовий до приймання команд)

В таблиці 2 наведений список деяких команд клієнта FTP . Список команд може відрізнятись в різних версіях ПЗ клієнтів та ОС.

Таблиця 2 - Перелік команд клієнта FTP

Команди

Параметри

Опис

open

Адрес IP

Встановити з’єднання FTP по вказаній адресі IP

User

Ім’я

Зміна кристувача

 

користувача

 

cd

Ім’я директорії

Зміна поточної директорії сервера

lcd

Ім’я директорії

Зміна поточної директорії клієнта

ls

 

Показує вміст поточної директорії сервера

pwd

 

Відображає ім’я поточної директорії сервера

bin

 

Задає передачу даних в двійковому коді

ascii

 

Задає передачу даних в ASCII коді

get

Ім’я файлу

 

Читання вказаного файлу із поточної директорії

 

 

 

сервера і збереження в поточній директорії клієнта

recv

Ім’я файлу

 

Аналогічно get

mget

Файл1 Файл

2

Читання списку файлів із поточної директорії

 

 

сервера і збереження їх в поточній директорії

 

 

 

клієнта

put

Ім’я файлу

 

Передача вказаного файлу поточної директорії

 

 

 

клієнта в поточну директорію сервера

send

Им’я файлу

 

Аналогічно put

Продовження таблиці 2

 

 

Команди

Параметри

 

Опис

mput

Файл1 Файл

2

Передача списку файлів із поточної директорії

 

 

клієнта в поточну директорію сервера

delete

Им’я файлу

 

Видалити файл із поточної директорії сервера

help

 

 

Одержати довідку по командам ftp-клієнта

close

 

 

Завершити відкритий сеанс FTP

quit

 

 

Завершити сеанс FTP і роботу клієнта FTP

Якщо при виклику програми ftp не були вказані параметри, то можна використати команду Open, вказавши як параметр адресу сервера. Наприклад,

ftp> open 10.40.0.150

Команда User дозволяє повторно ввести вхідне ім’я і пароль. Наприклад, ftp> user anonymous

ftp> cd /incoming (перейти в інший каталог)

Команда pwd відображає каталог на відділеній машині, з якою в цей час встановлений звязок в рамках сеансу FTP:

ftp> pwd

Команда ls показує список файлів и підкаталогів, розташованих в поточному каталозі на віддаленому комп’ютері:

ftp> ls (список файлів и підкаталогів, розташованих в поточному каталозі на віддаленому комп’ютері)

За замовчуванням, FTP пересилає файли в форматі ASCII, що зручно для текстових файлів. Але для пересилання файлів, які виконуються і упакованих файлів (наприклад, архивів ZIP), необхідно змінити тип пересилки на двійковий за допомогою команди bin:

ftp> bin

Щоб повернутись в режим ASCII, треба використати команду ascii:

ftp> ascii

При роботі з файлами можна вказувати або його повне ім’я в поточному каталозі (або разом із шляхом від кореня або від поточного каталогу), або використовувати групову операцію UNIX'а (маску). При завданні маски

використовуються правила, прийняті в OS UNIX: символ "*" обозначає будь-яку кількість символів, що знаходяться на його місці; символ "?" обозначає один символ, що знаходяться на його місці.

За допомогою команди Get можна одержати файл з віддаленого комп’ютера. Як обов’язковий параметр необхідно вказати ім’я цього файлу на віддаленій машині. Допускає другий параметр - нове ім’я файлу на локальному комп’ютері.

ftp> get /ім’я_файлу

Переслати файл з локальної машини на віддалену можна за допомогою команди Put. За аналогією з командою get вказується ім'я файлу на локальному комп'ютері в якості параметра. Другим параметром може бути вказано нове ім'я

файлу на

віддаленій машині (за замовчуванням

зберігається ім'я локального

файла. Пересилати файли можна тільки при

авторизованому доступі до

FTP або в

спеціально виділений для цього каталог, як правило, має ім'я

incoming в ОСUnix. Наприклад,

 

 

ftp> put myfile newmyfile

Стерти файл на віддаленій машині можна командою delete:

ftp> delete myfile.txt

Багато команд FTP можна вводити по-різному. Наприклад, help і знак питання (?) виконують одну й ту ж функцію. Після введення команди help система надає користувачеві повний список команд. Щоб отримати короткий опис команди, слід ввести? і слідом - ім'я команди:

ftp> ? open

Команда quit завершує будь-який відкритий сеанс і виходить з оболонки FTP:

ftp> quit

Щоб закрити відкритий сеанс, не завершуючи роботи FTP, слід використовувати команду close:

ftp> close

Контрольні запитання

1.Поясніть призначення сервісу FTP (File Transfer Protocol).

2.Поясніть модель взаємодії клієнта і сервера FTP.

3.Назвіть основні команди протоколу FTP, їх призначення та синтаксис.

4.Як знайти номер порту TCP сервера для передачі даних.

5.Чим відрізняється робота за допомогою FTP-клієнта.

6.Назвіть основні команди FTP-клієнта, їх призначення та синтаксис.

Зміст звіту

1.Тема.

2.Мета.

3.Завдання.

4.Результати виконання роботи. По кожному пункту завдання необхідно навести відповідний скріншот.

5.Відповіді на контрольні запитання (усно).

6.Висновки.