Россия |
Обеспечение безопасности WebSphere MQ
Методика работы WebSphere MQ с SSL
SSL (Secure Sockets Layer - "слой защищенных сокетов") был первоначально создан компанией Netscape, чтобы обеспечить поверх обычного протокола HTTP дополнительный защищенный "слой". Этот дополнительный слой позволяет идентифицировать стороны на основе сертификатов, осуществлять шифрование передаваемых данных и подтверждать то, что информация в процессе передачи не искажалась. В настоящее время SSL стал стандартом защиты данных, передаваемых по сетям общего пользования. SSL протокол применяет две различные схемы шифрования: асимметричную и симметричную.
Принцип работы SSL. При инициализации сеанса связи (процесс "SSL - рукопожатие" - " SSL handshake ") стороны используют асимметричную схему шифрования. В этот период стороны идентифицируют друг друга по сертификату и договариваются об алгоритме и ключе шифрования, которые будут использоваться при симметричной схеме. По завершению процесса "SSL - рукопожатия" на каждой стороне имеется разовый секретный ключ (secret key), которым шифруется весь последующий трафик. Кроме этого, используя механизм электронной подписи, SSL гарантирует неизменность данных в процессе их передачи.
Более подробно описание работы с SSL можно разобрать на примере настройки WebSphere MQ SSL для двух менеджеров: QM1 (порт 1515 ) и QM2 (порт 1516 ) и двух каналов: QM2.QM1 и QM1.QM2, которые используют опцию настройки TRIPLE_DES_SHA_US.
Когда стартует канал-отправитель QM2.QM1, начинается "SSL рукопожатие":
- QM2 запускает соединение и требует сертификат.
- QM1 посылает сертификат, зашифрованный с помощью ключа CA.
- QM2 проверяет цифровую подпись QM1 на сертификате. QM2 теперь знает, что QM1 это тот, кем он себя объявляет.
- ...рукопожатие продолжается с использование секретного ключа обеими сторонами, которые используют для этого зашифрованные сообщения.
Из приведенного диалога следует, что WebSphere MQ сервер QM1 должен иметь сертификат и сервер QM2 должен уметь расшифровывать подписанный сертификат.
Вариантов получения сертификата для сервера QM1 может быть несколько:
- можно создать самоподписанный сертификат (self-signed certificates).
- можно иметь собственный центр сертификации.
- можно потребовать сертификат из центра сертификации.
В тестовых целях можно получить бесплатно демонстрационный персональный сертификат из GlobalSign.com, действительный 30 дней. Есть и другие сайты для этих целей, но GlobalSign не требует регистрации. Сертификат для других, не демонстрационных целей, конечно, не будет бесплатным.
Далее методику настройки WebSphere MQ с SSL можно изложить в виде следующих шагов-рекомендаций для работы в операционной системе Windows.
Шаг 1 - Создание менеджеров очередей QM1 и QM2
Создается менеджер QM1 с портом для listener 1515 и объектами:
DEFINE QLOCAL ('FROM.QM2') DEFINE QLOCAL ('QM1') USAGE(XMITQ) DEFINE QLOCAL ('QM1.DLQ') DEFINE QREMOTE ('TO.QM1') XMITQ('QM1') RNAME('FROM.QM2') RQMNAME('QM1') DEFINE CHANNEL ('QM2.QM1') CHLTYPE(RCVR) DEFINE CHANNEL ('QM2.QM1') CHLTYPE(SDR) XMITQ('QM1') CONNAME('MQSERVER(1515)')
Создается менеджер QM2 с портом для listener 1516 и объектами:
DEFINE QLOCAL ('FROM.QM1') DEFINE QLOCAL ('QM2') USAGE(XMITQ) DEFINE QLOCAL ('QM2.DLQ') DEFINE QREMOTE ('TO.QM1') XMITQ('QM2') RNAME('FROM.QM2') RQMNAME('QM1') DEFINE CHANNEL ('QM1.QM2') CHLTYPE(RCVR) DEFINE CHANNEL ('QM2.QM1') CHLTYPE(SDR) XMITQ('QM2') CONNAME('MQSERVER(1515)')
Шаг 2 - Получение SSL сертификата для QM1
На сайте http://www.GlobalSign.com/ выбрать из выпадающего меню Certificates пункт Personal Certificates и затем выбрать PersonalSign Demo. Это даст экран восьми шаговой процедуре для получения сертификата (рис.13.3). Нажать на пункт "Переход на Шаг 1" и выполнить действия из таблицы ниже: