Протоколы прикладного уровня На прикладном уровне функционируют различные приложения пользователя, которые могут взаимодействовать в сети. 1) Протоколы удалённого доступа. Протокол telnet позволяет присоединиться к удалённому компьютеру и управлять им как своим собственным путём подачи команд в командной строке. В Windows 7 по умолчанию telnet отключён. Для его подключения нужно войти в "Компоненты Windows" и включить telnet-клиент и telnet-сервер. Подключение к удалённому узлу осуществляется командой telnet host[port]. telnet является опасным протоколом. Опасность telnet заключается в двух положениях: 1) он предоставляет доступ ко всему компьютеру; 2) передача информации производится в незашифрованном виде. На смену telnet пришёл протокол удалённого доступа с повышенной безопасностью -- SSH. В протоколе SSH передача данных ведётся в зашифрованном виде. Клиент посылает серверу запрос на установление SSH-связи. Запрос принимается сервером, клиент и сервер обмениваются информацией о том, какие версии протоколов они поддерживают; если они будут найдены, то соединение устанавливается. Сервер посылает клиенту клиентский и серверный ключи, клиент использует эти ключи для зашифровки сессионного ключа. На основе протоколов SSH строится приложение типа TeamViewer. Протокол передачи файлов FTP Протокол FTP определяет правила обмена файлами между пользователями в сети. Кроме того, существуют специальные FTP-серверы, на которых просто хранятся файлы. Схема соединений по протоколу FTP имеет следующий вид: +-------------------+ +---------------+ |Интерфейс +-+Пользователь | |пользователя | +---------------+ +------+------------+ | +------------------+ +------+------------+ |Интерпретатор | |Интерпретатор | |протокола | |протокола | |сервера | |пользователя | +---------+--------+ +--------+----------+ +----------+ +---------+--------+ +--------+----------+ +---------------+ [ФС сервера+-+Программа передачи+-+Программа передачи +-+ФС пользователя| +----------+ |данных сервера | |данных пользователя| +---------------+ +------------------+ +-------------------+ При использовании протокола формируется два канала: 1) канал управления (от пользователя до ФС сервера); 2) канал передачи данных (от ФС сервера до ФС пользователя). Пользователь подаёт команды, которые передаются по протоколу удалённого доступа (типа telnet). Команды поступают на порт 20. Данные от сервера поступают в ФС пользователя на порт 21. Два канала необходимы для того, чтобы в процессе передачи данных можно было управлять сервером. Недостатки, проблемы в безопасности: 1) низкая надёжность соединения на плохих линиях; 2) низкая скорость работы, т. к. соединение закрывается после передачи файла; 3) требуется установка т. н. FTP-клиента на компьютере пользователя; 4) FTP-серверы уязвимы для DDOS-атак. Команды FTP: основные команды совпадают с соответствующими командами MS-DOS. open host -- открыть соединение на удалённом хосте, close -- завершение соединения, md -- создать директорию, cd -- сменить директорию, delete -- удаление файлов, rd -- удаление директорий. Советы: 1) никогда не исследуйте FTP-пространство, соединяясь со случайными серверами -- это бессмысленная трата времени; 2) существуют специальные каталоги FTP-серверов, с которым каждый месяц обмениваются информацией FTP-сервер; 3) если вы попали на незнакомый сервер, то работайте с ним осторожно; 4) для пересылки больших файлов используйте программы докачки. Протоколы электронной почты В электронной почте использует два типа протоколов: 1) протокол отправки почты (SMTP -- SendMail Transfer Protocol); 2) протоколы доставки почты (POP3, IMAP4). С помощью SMTP пользователь отправляет почту на выбранный сервер. С помощью протоколов POP3/IMAP4 пользователь доставляет письма со своего почтового сервера на свой компьютер. Упрощённая схема организации электронной почты имеет вид: SMTP ................... v . +------------+ +---+ +---+ |Узел +->|MUA+->|MTA| |пользователя| +---+ +-+-+ +------------+ v +----+ +---+ +---+ +---------+ |host|<-+MUA|<-+MDA|<---\Internet \ +----+ +---+ +---+ | +-----+ ^ . \_/ ................ Почтовый агент пользователя (MUA) может располагаться в компьютере пользователя (программа Outlook Express, Outlook,The Bat!) или на почтовом сервере. Большинство почтовых серверов обладает такими агентами. Протокол SMTP По протоколу SMTP программа посылает серверу команды. Сервер отвечает на них. Все команды стандартизованы, каждая команда занимает четыре буквы. Первая команда -- HELO -- идентифицирует передатчик для приёмника. MAIL -- начало почтовой транзакции. RCPT -- идентифицирует получателя почтового сообщения. DATA -- данные; строки, идущие после этой команды, составляют данные. На каждую полученную команду сервер формирует ответ, состоящий из трёх цифр; первая цифра означает успешность выполнения команды: 2 -- успех, 3 -- не завершено, 5 -- не успех; вторая и третья цифры -- разъяснение первой: 220 -- успех, система готова к работе, 250 -- успешное завершение почтовой транзакции, 221 -- служба закрывает канал связи, 354 -- можно начинать передачу, 500 -- синтаксическая ошибка в тексте команды, 550 -- команда не выполнена, т. к. почтовый ящик недоступен. Отпр. HELO имя Получ. 250 имя Отпр. MAIL FROM имя Получ. 250 OK Отпр. RCPT TO имя Получ. 550 NO SUCH USER Структура письма Письмо состоит из заголовка и тела сообщения. Каждый заголовок начинается с новой строки и содержит ключевое слово, за которым следует двоеточие и данные. Заголовок отделяется от тела пустой строкой. Сообщение включает: 1) заголовки SMTP-протокола, полученные сервером; 2) заголовки письма (конверт) -- служебная информация: серверы, через которые прошло письмо, пометки о приоритете этого письма; 3) тело письма. В заголовке письма часто используются следующие поля: Return-Path -- обратный адрес; Received -- журналирование прохождения письма; To -- кому адресовано; CC -- адреса, куда направляется копия письма; bcc -- имена получателей копии письма, которые не должны показывать остальным получателям; Subject; Date; Content-Type -- тип содержимого письма (html, rtf, plain text).