Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_mszki.doc
Скачиваний:
36
Добавлен:
17.04.2019
Размер:
2.23 Mб
Скачать

17. Протокол ssl

Протокол SSL (Secure Socket Layer) предназначен для защиты данных, передаваемых между приложениями (клиентом и сервером). SSL работает поверх транспортного протокола, предполагающего установление соединения (TCP). SSL "прозрачен" для служб прикладного уровня, таких, как HTTP и FTP.

Протокол SSL базируется на следующих принципах:

Защищённый канал передачи данных. Для шифрования данных применяются симметричные алгоритмы (DES,RC4).

Обязательная аутентификация сервера с использованием асимметричной криптографии (Diffie-Hellman, RSA и FORTEZZA).

Надежность канала передачи данных. Для контроля целостности передаваемых данных используется специальный алгоритм - Message Authentication Code (MAC). Довольно распространенным является алгоритм MD5. Обычно, и сам MAC-code так же шифруется.

Протокол SSL состоит из двух протоколов (рис. 3.6):

SSL Record Protocol, используемый для инкапсуляции передаваемых и получаемых данных.

SSL Handshake Protocol, используемый для установления параметров соединения.

Архитектура SSL

.

Рис. 3.6

Протокол SSL Record Layer используется для всех SSL коммуникаций.

Параметры соединения по протоколу SSL определяются протоколом SSL Handshake, который работает поверх протокола SSL Record Layer. Когда клиент и сервер устанавливают соединение, они согласовывают такие параметры, как версия протокола и алгоритм шифрования, аутентифицируют друг друга и генерируют ключ сеанса.

Так как обычно SSL используется для организации безопасного доступа по протоколу HTTP, то его поддержка реализована в различных WEB-серверах,

18. Протокол ssh

SSH – как собственно программа, так и задействованный в ней протокол.

SSH поддерживает возможность работы с telnet; безопасную работу с протоколом XII благодаря возможности перенаправления соответствующих данных по надежным ssh-каналам; безопасную замену многим r-командам Unix (rsh, rlogin и т.д.), с которыми традиционно связаны проблемы обеспечения безопасности.

Протокол SSH имеет следующую архитектуру:

Архитектура SSH

Рис. 3.7

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

  • Протокол транспортного уровня обеспечивает аутентификацию сервера, конфиденциальность и целостность.

  • Протокол аутентификации обеспечивает аутентификацию клиента для сервера.

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

Протокол транспортного уровня предусматривает возможность сжатия данных и работает поверх соединения ТСР/IР. Протокол аутентификации работает поверх протокола транспортного уровня, а протокол соединения, поверх протокола аутентификации.

С целью повышения безопасности осуществляется не только аутентификация клиента для сервера но и аутентификация сервера клиентом.

Каждый работающий с ssh узел, на котором может выполняться как клиент, так и сервер, должен иметь не менее одного ключа, причем для шифрования допускаются различные криптографические алгоритмы. Несколько узлов могут иметь общий ключ, однако каждый узел должен иметь хотя бы один ключ, с которым работает каждый из требуемых алгоритмов работы с открытыми ключами. В проекте стандарта в настоящее время требуемый алгоритм только один - DSS (Digital Signature Standard).

Ключ узла-сервера используется при обмене открытыми ключами с целью проверки того, что клиент действительно общается с настоящим (а не подмененным) сервером.

Для этого клиент должен знать открытый ключ узла-сервера.

Протоколом предусмотрена возможность отказа от проверки ключа узла-сервера при самом первом обращении клиента к этому серверу. При этом соединение клиент-сервер будет защищено от пассивного прослушивания сети, но возникает опасность атаки типа «временной подмены сервера». Если эта возможность используется, ключ узла-сервера будет автоматически передан клиенту и сохранен в его локальном файле.

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

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