Компания IBM
Опубликован: 01.02.2008 | Доступ: свободный | Студентов: 616 / 22 | Оценка: 4.60 / 4.40 | Длительность: 43:55:00
Специальности: Разработчик аппаратуры
Лекция 9:

Безопасность кластера

Безопасность WebSmit

WebSMIT является очень хорошим инструментом конфигурирования и мониторинга кластера. Однако WebSMIT осуществляет доступ к файлам HACMP и выполняет команды кластера под учетной записью пользователя root. Это является потенциально уязвимым местом в безопасности, однако при тщательном планировании и реализации безопасности риск можно полностью устранить. Этот раздел описывает требования безопасности и механизмы, используемые в средах WebSMIT.

Для обеспечения максимальной безопасности WebSMIT можно выполнить конфигурирование следующих элементов:

  • шифрование коммуникаций между клиентом и сервером с использованием SSL;
  • SSL-сертификат для аутентификации;
  • аутентификация веб-сервера и AIX;
  • обеспечение доступа к WebSMIT только для определенных пользователей AIX;
  • обеспечение доступа через WebSMIT только к определенным панелям SMIT.

Для аутентификации WebSMIT требует SSL и SSL-сертификат. При установке Apache генерируется самоподписанный (self-signed) сертификат, который можно использовать в WebSMIT.

Параметры безопасности WebSMIT

Параметры безопасности WebSMIT хранятся в файле /usr/es/sbin/cluster/wsm/ wsm_smit.conf. По умолчанию файл содержит максимальные установки параметров безопасности. В этом разделе описываются опции безопасности.

Внимание! При изменении любого из параметров WebSMIT необходимо перезапустить HTTP-сервер.

Авторизованный порт

Параметр AUTHORIZED_PORT представляет порт TCP, используемый для коммуникаций WebSMIT. По умолчанию применяется порт 42267. Рекомендуем изменить значение этого параметра на другой номер, чтобы не допустить доступа неавторизованного пользователя к WebSMIT через стандартный порт. Если определить номер порта здесь, то WebSMIT будет использовать тот протокол (http или https), который связан с этим портом в файле конфигурации HTTP-сервера. Например, если определить порт 42267 в качестве порта SSL в файле httpd.conf, то браузер будет использовать шифрование и в URL нужно будет применять "https://".

Принудительное использование защищенного http

Параметр REDIRECT_TO_HTTPS=1 позволяет использовать только защищенные https-коммуникации, чтобы все данные передавались по сети в зашифрованном виде. Если был определен параметр AUTHORIZED_PORT, то эта переменная не применяется. В противном случае будет выполнено перенаправление браузера на порт SSL вне зависимости от введенного URL. Отношение между параметрами AUTHORIZED_ PORT и REDIRECT_TO_HTTPS см. в табл. 9.1.

Таблица 9.1. Отношение между параметрами AUTHORIZED_PORT и REDIRECT_HTTPS
AUTHORIZED_PORT установлен AUTHORIZED_PORT не установлен
REDIRECT_TO_HTTPS=0 Используются параметры безопасности из файла httpd.conf Используется незащищенный протокол HTTP, без шифрования, без SSL
REDIRECT_TO_HTTPS=1 Используются параметры безопасности порта из файла httpd.conf Используется протокол HTTPS, с SSL и с шифрованием
Замечание. Мы рекомендуем задать порт SSL TCP в файле httpd.conf и использовать этот порт в качестве авторизованного порта для WebSMIT.

Аутентификация AIX

WebSMIT может применять аутентификацию AIX вдобавок к аутентификации веб-сервера путем установки параметра REQUIRE_AUTHENTICATION=1. В этом случае WebSMIT запрашивает имя и пароль пользователя AIX. Так как при этом используются механизмы аутентификации AIX, отказы при входе в систему могут вызвать блокирование учетной записи.

Замечание. Для повышения уровня безопасности WebSMIT следует установить и аутентификацию веб-сервера и аутентификацию AIX.

Допустимые пользователи

Переменная ACCEPTED_USERS содержит список идентификаторов пользователей AIX, которым разрешен доступ к WebSMIT. Все пользователи, указанные в этой переменной, будут иметь в WebSMIT уровень привилегий пользователя root. По умолчанию задано значение ACCEPTED_USERS="root".

Замечание. Настоятельно рекомендуем создать отдельного пользователя AIX для доступа к WebSMIT.

Тайм-аут сеанса

Переменная SESSION_TIMEOUT определяет значение тайм-аута сеанса, по истечении которого пользователь WebSMIT должен выполнить повторный вход в систему вне зависимости от того, активен он или нет. По умолчанию задан тайм-аут в 20 мин.

Идентификатор пользователя веб-сервера

Переменная REQUIRED_WEBSERVER_UID содержит идентификатор пользователя, используемый в скриптах cgi-bin в WebSMIT. Здесь должен указываться тот же идентификатор, который применяется и в веб-сервере. Кроме того, следует убедиться в том, что этот идентификатор пользователя не имеет привилегий входа в AIX, чтобы никто не мог переключиться в эту учетную запись. По умолчанию употребляется учетная запись "nobody".

Разрешение или запрет на доступ к определенным панелям SMIT в WebSMIT

Можно сконфигурировать, к каким панелям SMIT можно получить доступ через WebSMIT. В качестве имени панели SMIT применяется быстрый путь SMIT к заданной панели; вывод этого имени выполняется нажатием F8 в SMIT (рис. 9.5). Например, панель SMIT Extended Topology Configuration (Расширенное конфигурирование топологии) имеет имя "cm_extended_topology_config_menu_dmn".Файл /usr/es/sbin/cluster/ wsm/wsm_smit.allow содержит список панелей SMIT, к которым разрешен доступ из WebSMIT. Ко всем остальным панелям доступ запрещен.

Быстрый путь к панели SMIT Extended Topology Configuration (Расширенное конфигурирование топологии)

Рис. 9.5. Быстрый путь к панели SMIT Extended Topology Configuration (Расширенное конфигурирование топологии)

В файле /usr/es/sbin/cluster/wsm/wsm_smit.deny можно перечислить панели SMIT, недоступные из WebSMIT. Если панель задана и в .allow- и в .deny-файле, приоритет имеет указание в .deny-файле.

Если панель SMIT указана в файле /usr/es/sbin/cluster/wsm/wsm_smit.redirect, WebSMIT выполняет перенаправление страницы на заданный URL. Этот файл уже содержит некоторые панели, которые не следует изменять.

Замечание. По окончании конфигурирования кластера следует запретить доступ ко всем панелям SMIT, кроме страницы состояния кластера HACMP. ( пример 9.1 ).
#################################
# webSMIT  .allow file		#
#################################
cm_hacmp_main_menu_dmn
Пример 9.1. Пример файла /usr/es/sbin/cluster/wsm/wsm_smit.allow

Журналы WebSMIT

WebSMIT регистрирует все свои операции в журналах, подобно SMIT. Файл wsm_ smit.log расположен в каталоге ../log относительно скриптов cgi-bin. Например, при использовании скриптов cgi-bin из заданного по умолчанию каталога /usr/es/sbin/ cluster/wsm/cgi-bin файл журнала находится в каталоге /usr/es/sbin/cluster/wsm/log. Кроме того, в файл wsm_smit.script записывается последняя команда WebSMIT. HACMP не осуществляет управление этими файлами журналов, они могут неограниченно расти, подобно файлу smit.log. Команда snap -e может осуществлять сбор файлов журналов WebSMIT, только если они находятся каталоге по умолчанию /usr/ es/sbin/cluster/wsm/log.

HACMP и брандмауэры

При размещении кластера HACMP за брандмауэром следует учитывать следующие аспекты:

  • HACMP не требует наличия какого-либо открытого порта на брандмауэре; отсутствует внешний трафик от Clcomd, RSCT или от диспетчера кластера (Cluster Manager). Открытые порты требуются только для управления приложением и системой (например, SSH).
  • Необходимо убедиться в том, что все сервисные IP-адреса могут осуществлять обмен данными с внешней сетью вне зависимости от их привязки. Следует учитывать, что при отказе сети сервисный интерфейс перемещается с одного базового адаптера на другой. В случае перемещения при сбое сервисный адрес отказавшего узла перемещается на другой узел.
  • Не следует помещать брандмауэр между узлами. В кластере HACMP/XD узлы могут подключаться через открытую сеть. В этом случае следует использовать виртуальные частные сети (Virtual Private Networks) или другое решение, прозрачное для демона коммуникаций кластера (Cluster Communication Daemon).
  • При использовании файла netmon.cf для улучшенного обнаружения отказов сети убедитесь в том, что IP-адреса, указанные в этом файле, доступны через брандмауэр (с помощью команды ping).
  • Если имеются клиенты Clinfo, работающие через брандмауэр, следует открыть порт clinfo_client: 6174/tcp. Решение на основе брандмауэра должно быть реализовано по принципу избыточности; в противном случае брандмауэр становится единой точкой отказа.