Стратегии высокой надежности
Большинство крупных и средних предприятий сегодня в значительной степени полагаются на свои компьютерные сети. Кроме того, многие предприятия имеют критически важные приложения. В результате многим предприятиям требуется постоянный доступ ко многим частям их сети. В случае отказа части оборудования критически важные приложения могут не работать. Бизнес-пользователям все равно, им все равно нужно свое приложение. Точно так же оборудование должно работать, как положено. Таким образом, сеть должна защищать от злонамеренной активности, чтобы обеспечить высокую надежность.
Я разделил эту статью на две части, чтобы обсудить два разных аспекта разработки сети с высоким уровнем надежности. Первый раздел будет посвящен безопасности. Во втором разделе будут обсуждаться кластеры высокой доступности, популярный метод преодоления аппаратных сбоев, который также действует как резервная копия любых функций безопасности, которые могли выйти из строя.
Архитектура МИЛС
Архитектура с несколькими независимыми уровнями безопасности (MILS) — это мощный метод защиты системы, в которой запущено несколько приложений с множественным доступом. Основная идея архитектуры MILS заключается в том, что система разделена на разделы, поэтому сбой или повреждение одного раздела не может повлиять на другой. Такое разбиение также позволяет отдельно оценивать безопасность и сертифицировать каждый раздел.
Ключевым компонентом архитектуры MILS является ядро MILS. Традиционные ядра предназначены для предоставления приложениям как можно большего количества сервисов, в то время как ядра MILS выполняют только четыре функции:
- Изоляция данных
- Управление информационным потоком
- Обработка периодов
- Ограничение урона
Изоляция данных
Изоляция данных означает, что ядро гарантирует, что приложение может получить доступ только к той памяти, которая была специально и явно выделена для его использования. Внедрение этой политики значительно улучшит безопасность системы по двум основным причинам; компрометация и подделка данных. Компрометация данных — это нежелательное чтение данных, а фальсификация данных — нежелательная запись данных. Очевидно, что если приложение может получить доступ только к ограниченным объемам данных, угрозы компрометации или несанкционированного доступа значительно снижаются.
Управление информационным потоком
Управление информационным потоком означает, что ядро гарантирует, что приложения могут взаимодействовать друг с другом только по утвержденным путям. Надлежащее применение этой политики означает, что приложения не могут обойти путь и получить доступ к данным, доступ к которым им запрещен.
Обработка периодов
Обработка периодов — это своего рода страховой полис, который устранит возможность использования скрытых каналов связи в системе MILS. Это достигается путем разделения обработки на периоды, между которыми выполняется очистка процессора. Конечный результат означает, что если процессор был скомпрометирован и установлен скрытый канал связи, он вскоре будет стерт и станет непригодным для использования.
Ограничение урона
Как и обработка периодов, ограничение ущерба также является страховым полисом. Ограничение ущерба означает, что все сбои локализуются локально и восстанавливаются локально. Или, проще говоря, сбой в одном компоненте не может вызвать сбой в другом. Надлежащее применение этой политики устранит возможность каскадного сбоя.
Другой ключевой аспект ядра MILS заключается в том, что его можно написать в небольшом объеме кода, всего в несколько тысяч строк. Этот небольшой объем кода означает, что для среднего бизнеса вполне реально позволить себе тщательно проверить код и математически доказать, что эти политики всегда будут применяться. Математическое доказательство может занять очень много времени и, следовательно, довольно дорого, но из-за небольшого размера кода это разумно. Это доказательство нужно сделать только один раз, и оно, очевидно, окупится повышением безопасности для многих сетей.
Система связи разделов
Этот метод, как я объяснил выше, предназначен для одиночных процессоров. Но когда приложение должно обмениваться данными по сети, вы все равно хотели бы, чтобы приложение было таким же безопасным, как если бы оно работало только на одном процессоре. Архитектура MILS может поддерживать это. Это достигается за счет сквозного применения политик ядра MILS. Система связи разделов, или PCS, будет обеспечивать соблюдение этой политики.
Распределенный набор узлов MILS, часто называемый анклавом, будет использовать PCS. PCS будет с каждым узлом и будет логически между приложениями и другими разделами. PCS реализует все сетевые протоколы и отвечает за следующее:
- Идентификация узлов: защита от спуфинга
- Разделение данных
- Шифрование
- Согласованное управление политиками
Кластеры высокой доступности
Итак, все это хорошо, но мы все знаем, что что-то может пойти не так, и обычно это происходит. Даже если наша сеть хорошо защищена от злонамеренной активности, аппаратные сбои или ошибки приложений могут легко вывести сетевой узел из строя. Так как же обеспечить доступность приложений и служб бизнес-пользователей, когда что-то пойдет не так? Это можно сделать с помощью кластеров высокой доступности. По сути, это означает, что некоторые узлы в сети будут избыточными. Это повышает доступность, поскольку программное обеспечение может обнаружить отказ одного узла и автоматически начать использовать резервный узел.
Конечно, не все приложения можно использовать в кластере высокой доступности. Для использования в кластере высокой доступности приложения должны соответствовать следующим требованиям к дизайну:
- Для приложения обнаружения сбоев должен быть простой способ запуска, остановки и проверки состояния приложения. Если программное обеспечение не может этого сделать, и требуется человек, то автоматическое переключение при сбое не может работать.
- Приложение должно иметь возможность использовать общее хранилище.
- Приложение должно хранить всю информацию о своем состоянии в этом общем хранилище.
- Приложение не должно повреждать данные при сбое.
Предположим, ваше приложение можно использовать в кластере высокой доступности; как выглядит этот кластер? Ну, есть несколько реализаций этой идеи. Упрощенное представление сети высокой доступности показано на рис. 1. Вы можете увидеть пульсирующее соединение между двумя узлами и общее хранилище данных — обе ключевые особенности любой сети высокой доступности.
Фигура 1:
Схема сети высокой доступности (любезно предоставлено www.dell.com)
Активный/активный
Одной из возможных реализаций является активная/активная конфигурация. В этой конфигурации два или более узла активно работают, а трафик направляется на узлы на основе сценариев балансировки нагрузки. Если один узел выйдет из строя, по крайней мере еще один узел будет работать с большей нагрузкой.
Активный пассивный
В активно-пассивной конфигурации для каждого активного узла имеется полностью резервный узел. Резервные узлы подключаются к сети только в случае сбоя соответствующего активного узла. На рис. 1 может быть представлена конфигурация высокой доступности «активный/пассивный» или «активный/активный».
Н + 1
В конфигурации N+1 один узел отвечает за несколько активных узлов. Этот единственный узел должен быть способен взять на себя любую из ролей, за которые отвечают активные узлы.
Н + М
Конфигурация N+M очень похожа на конфигурацию N+1, но более полезна для больших сетей, где одного резервного узла недостаточно для обеспечения высокой доступности. В конфигурации N+M имеется несколько (M) резервных узлов, каждый из которых может взять на себя роль любого из активных узлов.
от Н до Н
Конфигурация N to N представляет собой комбинацию конфигураций активный/активный и N + M. В этой конфигурации каждый узел активен, но может перенастроить себя, чтобы взять на себя любые обязанности других узлов. Эта конфигурация устраняет необходимость в резервных узлах, но требует дополнительного места на каждом активном узле.
Какая бы конфигурация ни использовалась, хорошо спроектированный кластер высокой доступности вместе с надежной защитой от злонамеренной активности может предоставить вашим бизнес-пользователям сеть с постоянной доступностью. Для получения дополнительной информации о том, как защитить свою сеть от вредоносной активности, не забудьте посетить WindowSecurity.com.