Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Labnik_VMSS.doc
Скачиваний:
23
Добавлен:
31.03.2015
Размер:
256 Кб
Скачать

3. Лабораторное задание

Часть 1. Работа с протоколом smtp

1. Пользуясь утилитой TELNET, установите соединение с сервером SMTP.

2. Просмотрите список команд протокола SMTP.

3. Отправьте простейшее сообщение на свой адрес при помощи трёхшаговой транзакции отправки почты (MAIL-RCPT-DATA).

4. Завершите работу с почтовым сервером и прочитайте полученное вами сообщение при помощи команд UNIX.

5. Снова установите соединение с сервером SMTP и отправьте сообщения, составленные согласно стандарту MIME.

6. Отправьте письмо сразу нескольким адресатам.

7. Отправьте письмо с искажённым адресом отправителя. Проверьте его по­лучение.

8. Отправьте письмо с искажённым адресом получателя, но верным адресом

отправителя. Просмотрите сообщение об ошибке. Часть 2. Работа с протоколом РОРЗ

1. Пользуясь утилитой ТЕШЕТ, установите соединение с сервером РОРЗ.

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

3. Проверьте, поддерживает ли РОРЗ-сервер усиленную аутентификацию.

4. При помощи команды STAT просмотрите состояние вашего почтового ящика.

5. Просмотрите размер отдельных сообщений.

6. Получите одно из сообщений с сервера.

7. Удалите одно из сообщений.

8. Отмените удаление сообщения.

9. Завершите работу с сервером РОРЗ.

4. Контрольные вопросы

1. Что происходит с почтовым ящиком при аварийном завершении РОРЗ -сессии?

2. В чём главные отличия протоколов SMTP и РОРЗ?

3. Поясните схему соединения по протоколу SMTP.

4. Поясните схему соединения по протоколу РОРЗ.

5. Перечислите основные части РОРЗ-сессии.

6. Объясните структуру команд и ответов SMTP.

7. Объясните структуру команд и ответов РОРЗ.

Лабораторная работа №3 Изучение протокола передачи файловFtp

Цель - изучение команд протокола FTP и приобретение навыков ис­пользования утилиты FTP для передачи файлов.

  1. Краткое пояснение

1.1. Основные сведения о протоколе ftp

Согласно RFC959 (основополагающий документ по протоколу FTP) протокол FTP предназначен для надежной и достоверной передачи данных между удалёнными компьютерами. Модель работы протокола приведена на рис. 4.

Рис. 4. Модель работы протокола FTP

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

Сеанс работы по протоколу FTP состоит из следующих шагов:

  1. Модуль управления передачей FTP-сервера находится в состоянии ожи­дания соединения на порт 21.

  2. Клиент (модуль управления передачей со стороны клиента) устанавливает соединение с сервером (на 21-й порт) и отправляет команды, определяю­щие параметры соединения передачи данных:

• роли участников соединения (активный/пассивный);

• порты соединения (по умолчанию модуль передачи данных клиента использует тот же порт, что и модуль управления передачей клиента, а модуль передача данных со стороны сервера использует уменьшенный на 1 номер порта модуля управления передачей со стороны сервера, т.е. 20);

• параметры передачи;

• управляющие директивы (собственно команды).

  1. Пассивный участник соединения переходит в режим ожидания соедине­ния на заданный порт. Активный участник открывает соединение и начи­нает передачу данных (направление передачи определяется активной сто­роной).

  2. Канал передачи данных закрывается по окончании передачи данных, но соединение FTP считается закрытым только после закрытия управляюще­го канала.

Файлы, передаваемые по FTP, находятся на каком-либо устройстве хранения узла-отправителя и после передачи помещаются на устройство хра­нения узла-получателя. Однако способы представления данных в различных системах могут отличаться. Например, компьютеры DEC TOPS-20s хранят пять 7-разрядных символов ASCII в 36-разрядном машинном слове. IBM Mainframe хранит четыре 9-разрядных символа в 36-разрядном машинном слове. При обмене текстовыми файлами между такими разнородными систе­мами отправитель должен конвертировать символы в стандартное представ­ление, а получатель выполняет преобразование из стандартного представле­ния в своё внутреннее.

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

Средства протокола FTP позволяют указать тип представления дан­ных. Этот тип подразумевает размер логического байта данных (logical byte size), используемый для хранения данных. Далее приведено описание раз­личных типов представления данных.

Тип ASCII. Отправитель конвертирует символы в стандартное пред­ставление "8-bit NVT-ASCIF', получатель выполняет преобразование из "8-bit NVT-ASCH" в свое внутреннее. Размер логического байта данных подра­зумевается равным 8 бит. Кроме того, учитываются и обрабатываются управ­ляющие символы, например, конец строки (<CRLF>).

Тип EBCDIC. Этот тип отличается от ASCII только кодами символов и используется для повышения эффективности передачи между узлами, имеющими внутреннее представление EBCDIC. Размер логического байта данных подразумевается равным 8 бит.

Тип IMAGE. Отправитель посылает данные в виде непрерывного по­тока битов, а получатель сохраняет их также в виде непрерывного потока. Данные никак не интерпретируются, обрабатываются только символы конца файла или конца записи (если файл имеет структуру, ориентированную на записи).

Тип LOCAL. Этот тип явно указывает размер логического байта от­правителя, для того чтобы получатель смог правильно конвертировать дан­ные, например, если размеры логических байтов отправителя и получателя отличаются.

По умолчанию при передаче файлов используется ASCII. Для измене­ния типа представления данных применяется команда TYPE.

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

Структура, ориентированная на файлы, предполагает, что у файла нет какой-либо внутренней структуры, т. е. файл считается последовательно­стью байт данных.

Структура, ориентированная на записи, считает файл состоящим из нескольких записей. Здесь возникает понятие «конец записи» и т. д.

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

Если структура явно не указана командой STRU, используется первый из перечисленных вариантов.

И наконец, средства FTP позволяют указать режим передачи данных. В сущности, это способ передачи, учитывающий такие моменты, как сжатие данных, возможность повторной передачи в случае ошибки и т. д. Здесь име­ется три варианта.

Потоковый режим. Данные передаются в виде потока байт. Концом передачи является момент достижения символа «конец файла» (EOF).

Блочный режим. Данные передаются блоками по несколько байт. У каждого блока есть заголовок. Возможно возобновление передачи в случае ошибки. Кроме того, передача не останавливается при достижении конца файла, следовательно в этом режиме можно передать несколько файлов.

Режим со сжатием. Данные передаются с использованием простей­шего способа сжатия. Здесь также возможны возобновление передачи и от­правка сразу нескольких файлов. По умолчанию используется потоковый режим.

Подробно о структуре данных, режимах передачи, типах представле­ния можно узнать из RFC959 [3]. В табл. 5 приведены основные команды протокола FTP.

Таблица 5. Команды протокола FTP

Команда

Описание

Формат

USER

Открытие управляющего соединения

USER <имя>

PASS

Ввод пароля

PASS <пароль>

CWD

Смена каталога на сервере FTP

CWD<путь>

REIN

Сброс параметров соединения

REIN

QUIT

Закрытие управляющего канала

QUIT

PORT

Задание IP-адреса и порта активного участника соединения по каналу пере­дачи данных

PORT

<hl>,<h2>,<h3>,<h4>,<p 1>,<р2>

PASV

Запрос параметров пассивного участ­ника соединения

PASV

TYPE

Задание типа представления данных (аргумент «тип» может иметь значе­ния: А - ASCII, E - EBCDIC, I - IMAGE, L - LOCAL)

TYPE [тип] параметр]

STRU

Задание структуры данных (F - файло­вая, R - записи, Р - страницы)

STRU <тип>

MODE

Задание режима передачи (S - потоко­вый, В - блочный, С - со сжатием)

MODE <режим>

RETR

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

RETR <файл>

STOR

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

8ТСЖ<файл>

RNFR

Переименование файла

RNFR <старое имя>

RNTO

Переименование файла

RNTO <новое имя>

ABOR

Закрытие канала передачи данных

ABOR

DELE

Удаление файла

DELE <файл>

MKD

Создание каталога

MKD <каталог>

RMD

Удаление каталога

RMD <каталог>

LIST

Просмотр каталога (полная информа­ция)

LIST [каталог]

NLST

Просмотр каталога (только имена фай­лов и подкаталогов)

NLST [каталог]

Пояснения к таблице 5:

  1. Пример команды PORT для адреса 193.233.70.197 и номера порта 1997: PORT 193,233,70,197,7,205 (Внимание: пробелов нет!) номер порта раскладывается на 2 байта (7 и 205)

  2. Команды RNFR и RNTO должны следовать друг за другом.

  3. В команде TYPE, кроме типа представления можно задать дополнитель­ный параметр, зависящий от указанного типа. Например, TYPE Local 36 - команда задаёт размер локального байта 36.

Ответы (Replies) на команды предназначены для синхронизации за­просов и действий в процессе передачи данных, а также для гарантии того, что клиенту известно состояние сервера. Каждая команда генерирует по крайней мере один ответ. Ответ состоит из трёхзначного кода и отделённой от него пробелом строки текста. Например: 500 Syntax error

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

1yz - предварительный положительный ответ;

2yz - окончательный положительный ответ;

3yz - промежуточный положительный ответ;

4yz - отрицательный ответ с возможностью повторить действие;

5yz - окончательный отрицательный ответ.

Подробно об ответах FTP-сервера можно узнать из RFC959. Некото­рые из них приведены в табл. 6.

Таблица б. Ответы FTP-сервера

Код возврата

Текст сообщения

Пояснение

200

Command okay

Успешное выполнение команды

500

Syntax error, command unrecognized

Ошибка в написании команды

501

Syntax error in parameters or arguments

Ошибка в аргументах команды

220

Service ready for new user

Готовность сервера к подключению очередного пользователя

221

Service closing control connection

Закрытие управляющего соединения

331

User name okay, need password

Готовность к приёму пароля

230

User logged in, proceed

Успешное подключение

Каждая команда протокола FTP имеет определённый набор ответов. Например, команде USER соответствуют ответы: 230, 530, 500, 501, 421, 331, 332. Подобное соответствие для остальных команд FTP можно найти в RFC959. Там же можно найти и подробные схемы выполнения команд FTP.

Для установления соединения по протоколу FTP используется всё та же утилита TELNET.

$ telnet <имя> 21

Этой командой устанавливается управляющее соединение (используется 21-й порт). Ответ сервера выглядит примерно так: 220 srv-vmss FTP server (UNIX(r) System V Release 4.0) ready.

Далее, как правило, следуют команды USER и PASS, идентифицирующие пользователя:

user vov

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]