Сетевая архитектура для безопасной передачи данных
Иллюстрации
Показать всеСетевая архитектура включает в себя сеть периметра, подключенную между внутренней сетью и внешней сетью. Сеть периметра включает в себя один или более внешних граничных узлов, которые соединяются с внешней сетью, и множество прокси-серверов, каждый из которых соединяется с одним или более внешних граничных узлов. Один или более внутренних граничных узлов подключаются между множеством прокси-серверов и внутренней сетью. Прокси-серверы функционируют так, чтобы устанавливать первое защищенное соединение между адресатом через внешнюю сеть и второе защищенное соединение с адресатом во внутренней сети. Каждый из множества прокси-серверов предоставляет, по существу, идентичную идентификацию для аутентификации при установлении первого и второго защищенных соединений. Технический результат - высокий уровень доступности и безопасности передач данных между защищенной внутренней сетью и незащищенной внешней сетью. 2 н. и 18 з.п. ф-лы, 13 ил., 1 табл.
Реферат
Перекрестные ссылки на родственные заявки
PCT-заявка испрашивает приоритет на основании заявки США № 12/182613, поданной 30 июля 2008 года, озаглавленной "Network Architecture For Secure Data Communications", полное содержимое которой содержится в данном документе по ссылке.
Область техники, к которой относится изобретение
Это изобретение относится, в общем, к сетевой архитектуре для безопасной передачи данных, а более конкретно, к сетевой архитектуре с защитой и высоким уровнем доступности для передачи данных между защищенной внутренней сетью и незащищенной внешней сетью.
Описание предшествующего уровня техники
Сетевая периферия особенно уязвима к неавторизованным передачам данных и вторжениям, особенно между внутренней защищенной сетью и общедоступной внешней сетью, такой как Интернет. Неавторизованные передачи данных, такие как вирусы, шпионское программное обеспечение и другие типы вредоносного программного обеспечения, могут быть привнесены из внешней сети во внутреннюю сеть во время передачи данных. Кроме того, неавторизованные злоумышленники из внешней сети могут попытаться получать доступ к конфиденциальной информации внутренней сети.
Наиболее актуальными угрозами безопасности внутренних сетей являются хищение данных, утечка данных и адресный код с целью воровства конфиденциальной информации, которая может быть использована для финансовой прибыли. Например, информация кредитной карты зачастую является целью кражи. В то время как вирус и фишинг могут получать информацию кредитных карт нескольких тысяч держателей карт, неавторизованный доступ в единую большую базу данных внутренней сети предоставляет доступ к миллионам счетов держателей карт.
В ответ на возросшие угрозы были разработаны Стандарты защиты данных индустрии платежных карт (PCI DSS) компаниями American Express, Discover Financial Services, JCB International, MasterCard Worldwide и Visa Inc., чтобы помочь в содействии широкому принятию согласованных мер защиты данных во внутренних сетях, хранящих данные о финансовой деятельности. PCI DSS является набором всесторонних принципов и требований для улучшения защиты данных платежных счетов с помощью конфигурации брандмауэра, антивирусного программного обеспечения, шифрования данных и дополнительных передовых практических методов защиты. Совет по стандартам безопасности PCI, независимая организация, отвечает за разработку и курирование стандартов. Совет по стандартам безопасности PCI является открытым глобальным форумом для непрерывного развития, улучшения, хранения, распространения и реализации стандартов безопасности для защиты данных о счетах. Ядром PCI DSS является группа принципов и сопровождающие требования, вокруг которых организуются конкретные элементы DSS. Первым принципом PCI DSS является "построение и поддержка защищенной сети" с требованием "установки и поддержки конфигурации брандмауэра, чтобы защищать данные держателей карт". Следовательно, существует необходимость в сетевой архитектуре с высоким уровнем доступности и безопасности передач данных между защищенной внутренней сетью и незащищенной внешней сетью, которая защищает внутреннюю сеть от неавторизованных передач данных и вторжений.
Краткое описание нескольких видов чертежей
Фиг. 1 - блок-схема варианта осуществления сетевой архитектуры для передачи данных между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 2 - схема варианта осуществления способа передачи данных между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 3 - блок-схема варианта осуществления прокси-сервера в соответствии с настоящим изобретением;
Фиг. 4 - блок-схема варианта осуществления сервера управления в соответствии с настоящим изобретением;
Фиг. 5 - логическая схема варианта осуществления способа установления защищенных соединений между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 6 - логическая схема варианта осуществления способа передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 7 - блок-схема варианта осуществления внешнего граничного узла, функционирующего для балансировки нагрузки в соответствии с настоящим изобретением;
Фиг. 8 - блок-схема варианта осуществления внутреннего граничного узла, функционирующего для балансировки нагрузки в соответствии с настоящим изобретением;
Фиг. 9 - логическая схема варианта осуществления способа передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 10 - схематичное представление другого варианта осуществления сетевой архитектуры для передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 11 - логическая схема другого варианта осуществления способа передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением;
Фиг. 12 - схематичное представление другого варианта осуществления сетевой архитектуры для передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением; и
Фиг. 13 - логическая схема другого варианта осуществления способа передачи данных с высоким уровнем доступности и балансировкой нагрузки между внутренней сетью и внешней сетью в соответствии с настоящим изобретением.
Осуществление изобретения
Фиг. 1 - блок-схема варианта осуществления сетевой архитектуры для передачи данных между внутренней сетью и внешней сетью в соответствии с настоящим изобретением. Сетевая архитектура 100 включает в себя демилитаризованную зону (DMZ) или сеть 102 периметра, подключенную между внутренней сетью 104 и внешней сетью 106. Сеть 102 периметра может быть отдельно управляемой сетью из внутренней сети 104 или подсетью внутренней сети 104. Внутренняя сеть 104 является защищенной сетью, такой как частная или корпоративная локальная вычислительная сеть (LAN) или глобальная вычислительная сеть (WAN). Внешняя сеть 106 является сетью общего пользования, такой как Интернет, или частной сетью неизвестной третьей стороны.
Сеть 102 периметра включает в себя один или более внешних граничных узлов 108a-108n, которые соединяются с внешней сетью 106. Внешние граничные узлы 108a-n могут быть шлюзами, маршрутизаторами, коммутаторами, мостами, серверами или их комбинацией. Сеть 102 периметра также включает в себя множество прокси-серверов 110a-110n, каждый из которых соединяется с одним или более внешними граничными узлами 108a-n. Одни или более внутренних граничных узлов 112a-112n подключаются между множеством прокси-серверов 110a-n и внутренней сетью 104. Внутренние граничные узлы 112a-n могут быть шлюзами, маршрутизаторами, коммутаторами, мостами, серверами или их комбинацией. Внутренние граничные узлы 112a-n соединяются с одним или более внутренними серверами 116 и 118. Внутренняя сеть 104 дополнительно включает в себя внутренний узел 114, который может быть шлюзом, маршрутизатором, коммутатором, мостом, сервером или их комбинацией. Внутренний узел 114 соединяет множество прокси-серверов 110a-n с сервером 120 управления. Сервер 120 управления включает в себя базу 122 данных конфигураций для хранения конфигурационной информации 128 для прокси-серверов 110a-n и базу 124 данных каталога для хранения аутентификационной информации 130 авторизованных пользователей внутренней сети 104. База 122 данных конфигураций и база 124 данных каталога может быть одной или более базами данных, включенными в сервер 120 управления, или могут быть отдельными устройствами, соединенными с сервером 120 управления.
При работе, прокси-серверы 110a-n управляют передачами данных, передаваемых между внешней сетью 106 и внутренней сетью 104. Передачи данных включают в себя передачи файлов или данных, которые передаются с помощью протокола передачи гипертекста (HTTP), протокола передачи файлов (FTP) или другого протокола, используемого для передачи файлов или данных. Сервер 120 управления конфигурирует каждый из множества прокси-серверов 110a-n с помощью, по существу, идентичной конфигурационной информации 128, сохраненной в базе 122 данных конфигураций. Прокси-серверы 110a-n функционируют так, чтобы предоставлять конфигурационную информацию 128 во время аутентификации, чтобы устанавливать защищенные соединения для передачи данных между клиентским устройством 126a-n и внутренней сетью 104.
Когда клиентское устройство 126 запрашивает передачу данных с внутренней сетью 104, один из множества прокси-серверов 110a-n выбирается на основе списка доступных прокси-серверов 110a-n. Выбранный прокси-сервер 110 устанавливает первое защищенное соединение 140 по внешней сети 106 между прокси-сервером 110 и клиентским устройством 126. Защищенное соединение является каналом связи, через одну или более сетей, установленным с помощью протокола защищенного соединения, такого как протокол защищенных сокетов (SSL) или протокол безопасности на транспортном уровне (TLS), который обеспечивает аутентификацию источника или адресата. В варианте осуществления первое защищенное соединение 140 включает в себя взаимную аутентификацию источника и адресата, например клиентского устройства 126 и прокси-сервера 110 на фиг. 1. Взаимная аутентификация источника и адресата обеспечивает повышенную безопасность относительно идентичности устройств, запрашивающих передачу данных. Взаимная аутентификация выполняется посредством обмена идентификациями, такими как цифровые сертификаты, между источником и адресатом. Прокси-сервер 110 функционирует, чтобы предоставлять идентификационную информацию как часть цифрового сертификата или другой формы идентификации во время взаимной аутентификации. Идентификационная информация или цифровой сертификат, предоставленный прокси-сервером 110, включает в себя, по существу, идентичную конфигурационную информацию 128, что и другие прокси-серверы 110a-n, как объяснено более подробно ниже. В варианте осуществления защищенное соединение также обеспечивает шифрование передачи данных.
После того как защищенное соединение 140 установлено между клиентским устройством 126 и прокси-сервером 110, прокси-сервер 110 затем устанавливает второе защищенное соединение 142 между собой и адресатом передачи данных во внутренней сети 104, таким как один из внутренних серверов 116, 118. Второе защищенное соединение 142 также устанавливается с помощью протокола установления защищенного соединения с взаимной аутентификацией и шифрованием. После того как первое и второе защищенные соединения установлены, передача данных от клиентского устройства 126 принимается по первому защищенному соединению 142 через первый порт 132a-n прокси-сервера 110. Прокси-сервер 110 затем переназначает адрес передачи данных на адрес получателя из внутренней сети 104. Прокси-сервер 110 затем передает данные для передачи из второго порта 134a-n прокси-сервера 110 по второму защищенному соединению 142. Блокируя прямой доступ во внутреннюю сеть 104, прокси-сервер 110 обеспечивает безопасность передачи данных из внешней сети 106 во внутреннюю сеть 104. Кроме того, передаваемые данные не хранятся в прокси-сервере 110, что обеспечивает дополнительный уровень безопасности.
Аналогичным образом, когда внутренний сервер 116, 118 запрашивает передачу данных с адресатом по внешней сети 106, таким как одно из клиентских устройств 126a-n, один из множества прокси-серверов 110a-n устанавливает первое защищенное соединение 144 с внутренним сервером 116, 118 с помощью протокола защищенных сокетов (SSL), протокола безопасности на транспортном уровне (TLS) или другого протокола установления защищенного соединения. Прокси-сервер 110 затем устанавливает второе защищенное соединение 146 между прокси-сервером 110 и клиентским устройством 126a-n. После того как первое и второе защищенные соединения установлены, передачи данных от внутреннего сервера 116, 118 принимаются по первому защищенному соединению 144 одним портом 136 прокси-сервера 110 и затем пересылаются из другого порта 138 прокси-сервера 110 по второму защищенному соединению 146 по внешней сети 106 клиентскому устройству 126a-n.
Поскольку конфигурационная информация 128, в форме цифрового сертификата или другой идентификации, предоставленная прокси-серверами 110a-n, по существу, идентична при установлении защищенных соединений, клиентское устройство 126a-n неспособно различать между прокси-серверами 110a-n, и защищенные соединения могут быть установлены любым из множества прокси-серверов 110a-n для передачи данных. Кроме того, передачи данных могут переключаться между прокси-серверами 110a-n в случае, когда один из прокси-серверов становится недоступным. Таким образом, сеть 102 периметра обеспечивает высокий уровень доступности и защиты для передачи данных между внешней сетью 106 и внутренней сетью 104.
Сервер 120 управления функционирует, чтобы наблюдать за множеством прокси-серверов 110a-n и состоянием защищенных соединений с множеством прокси-серверов 110a-n. Сервер 120 управления непрерывно наблюдает за состоянием защищенных соединений на предмет ошибок передачи файлов, исключений и удачных завершений. Когда защищенное соединение успешно не установилось или прерывается, сервер 120 управления предоставляет уведомления или предупреждения, чтобы повторно инициировать установление защищенного соединения. Сервер 120 управления также предоставляет журналы аудита и отчеты по защищенным соединениям с множеством прокси-серверов 110a-n.
Фиг. 2 - логическая схема варианта осуществления способа 150 безопасной передачи данных с высоким уровнем доступности между внутренней сетью 104 и внешней сетью 106 в соответствии с настоящим изобретением. Передаваемые данные принимаются сетью 102 периметра, как показано на этапе 152. На этапе 154 один из множества прокси-серверов выбирается, чтобы принимать передаваемые данные, на основе списка доступных прокси-серверов. В варианте осуществления список доступных прокси-серверов может поддерживаться посредством одного или более внешних граничных узлов 108a-n, одного или более из множества прокси-серверов 110a-n или одного или более узлов балансировки нагрузки, как обсуждается более подробно ниже. В других вариантах осуществления список доступных прокси-серверов может поддерживаться другим узлом или системой управления сетью. На этапе 156 передачи данных передаются выбранному одному из множества прокси-серверов 110a-n в сети 102 периметра. Поскольку каждый из множества прокси-серверов 110a-n сконфигурирован с помощью, по существу, идентичной конфигурационной информации 128, клиентское устройство 126a-n неспособно различать между прокси-серверами 110a-n, и передаваемые данные могут приниматься любым из множества прокси-серверов 110a-n.
На этапе 158 определяется, становится ли один из прокси-серверов 110a-n недоступным. Определение может быть выполнено внешними граничными узлами или одним из доступных прокси-серверов или другими устройствами, как описано ниже. Когда прокси-серверы 110a-n доступны, процесс возвращается к этапу 152, чтобы продолжать принимать передаваемые данные. Когда один из прокси-серверов 110a-n становится недоступным, недоступный прокси-сервер 110 удаляется из списка доступных прокси-серверов, как показано на этапе 160. Передача данных затем продолжается, как показано на этапе 162. Прокси-сервер 110 выбирается для приема передаваемых данных на основе списка из оставшихся одного или более доступных прокси-серверов. На этапе 164 недоступный прокси-сервер отслеживается, чтобы определять его состояние. Когда он становится доступным снова, прокси-сервер добавляется обратно в список доступных прокси-серверов, как показано на этапе 166. Передаваемые данные могут тогда приниматься прокси-сервером снова на основе списка доступных прокси-серверов, как показано на этапе 152.
Таким образом, сеть 102 периметра обеспечивает защищенным соединениям высокий уровень доступности для передачи данных между внешней сетью 106 и внутренней сетью 104. Высокий уровень доступности может быть осуществлен, поскольку каждый из множества прокси-серверов 110a-n имеет, по существу, аналогичную конфигурационную информацию 128. Это сходство между прокси-серверами 110a-n позволяет передавать передачу данных другим доступным прокси-серверам 110a-n в случае отказа одного из прокси-серверов 110a-n.
Фиг. 3 - блок-схема варианта осуществления прокси-сервера 110 в соответствии с настоящим изобретением. Прокси-сервер включает в себя модуль 170 обработки и прикладной модуль 172 передачи файлов. Прикладной модуль 172 передачи файлов включает в себя конфигурируемую память 174, которая хранит конфигурационную информацию 128 для прокси-сервера 110 из сервера 120 управления. Конфигурационная информация 128 включает в себя идентификационную информацию 176 и информацию 178 шифрования. Идентификационная информация 176 включает в себя идентификацию сервера, центр сертификации для проверки идентификации сервера, номер версии формата сертификата, даты, с которой по которую действует идентификационная информация, или другую необходимую информацию для цифрового сертификата или другой формы идентификации, используемой при установлении защищенного соединения. Информация 178 шифрования включает в себя открытый ключ шифрования и закрытый ключ шифрования для системы шифрования с открытым ключом, поддерживаемые алгоритмы обмена ключами, шифры и хэш-функции. Другая информация 178 шифрования может быть сконфигурирована при необходимости, или альтернативная информация 178 шифрования может быть сконфигурирована для других способов шифрования, используемых для шифрования передачи данных в защищенном соединении. Прикладной модуль 172 передачи файлов и модуль 170 обработки функционируют так, чтобы выполнять функции передачи данных и работу, описанную в данном документе.
Фиг. 4 - блок-схема сервера 120 управления. Сервер 120 управления включает в себя модуль 180 конфигурирования и отслеживания и модуль 184 обработки. Сервер 120 управления также включает в себя базу 122 данных конфигураций с конфигурационной информацией 128 для каждого из множества прокси-серверов 110a-n. Конфигурационная информация 128 включает в себя идентификационную информацию 146 и информацию 148 шифрования для каждого из прокси-серверов 110a-n. Сервер 120 управления также включает в себя базу 124 данных каталога, которая включает в себя аутентификационную информацию 130 для авторизованных пользователей внутренней сети 104. Аутентификационная информация 130 включает в себя запись 182a-n для каждого авторизованного пользователя с аутентификационной информацией. Каждая запись 182a-n может включать в себя идентификационную информацию, информацию шифрования или другую информацию для авторизованного пользователя. Прикладной модуль 180 конфигурирования и отслеживания и модуль 184 обработки функционируют так, чтобы выполнять функции и работу сервера 120 управления, описанного в данном документе.
Фиг. 5 - логическая схема примера способа 200 установления защищенных соединений между внутренней сетью 104 и внешней сетью 106. На этапе 202 конфигурационная информация 128 для каждого прокси-сервера 110 передается сервером 120 управления каждому из прокси-серверов 110. Каждый из прокси-серверов 110a-n конфигурируется с помощью, по существу, идентичной конфигурационной информации 128 посредством сервера 120 управления.
Далее, первое защищенное соединение устанавливается с помощью протокола установления защищенного соединения между одним из клиентских устройств 126a-n и одним из множества прокси-серверов 110. Способ начинается, когда один из множества прокси-серверов 110 принимает запрос на передачу данных от одного из клиентских устройств 126a-n, как показано на этапе 204. Когда протокол безопасности включает в себя шифрование, запрос передачи данных включает в себя список поддерживаемых параметров шифрования, таких как алгоритмы обмена ключами, шифры, хэш-функции и т.д. Например, алгоритмы обмена ключами могут включать в себя RSA, метод Диффи-Хелмана, DSA, SRP, PSK или другие такие алгоритмы. Шифры могут включать в себя RC4, Triple DES, AES, Camellia, RC2, IDEA и DES или другие шифры. Хэш-функции могут включать в себя HMAC-MD5 или HMAC-SHA, или другие функции. Другие параметры могут также быть указаны в запросе передачи данных.
Когда прокси-сервер 110 принимает запрос передачи данных, он выбирает среди перечисленных параметров протокола установления защищенного соединения и передает уведомление о выбранных параметрах клиентскому устройству 126, как показано на этапе 206. Прокси-сервер 110 также передает идентификацию с конфигурационной информацией 128, как показано на этапе 208. Идентификация может быть в форме цифрового сертификата, такого как цифровой сертификат ITU-T стандарта X.509, или в другой форме идентификации. Конфигурационная информация 128 в идентификации, передаваемой прокси-сервером 110, включает в себя, по меньшей мере, идентификационную информацию 176, такую как идентификация прокси-сервера 110. Кроме того, идентификация может также включать в себя информацию 178 шифрования, такую как открытый ключ шифрования прокси-сервера.
Прокси-сервер 110 затем запрашивает идентификацию, такую как цифровой сертификат, у клиентского устройства 126a-n на этапе 210 для того, чтобы это защищенное соединение для передачи данных могло быть взаимно аутентифицировано. Клиентское устройство 126a-n передает идентификацию прокси-серверу 110, как показано на этапе 212. В варианте осуществления прокси-сервер 110 проверяет идентичность клиентского устройства 126a-n с помощью центра сертификатов третьей стороны. В другом варианте осуществления прокси-сервер 110a-n передает идентификацию серверу 120 управления для проверки, как показано на этапе 214. Сервер 120 управления проверяет идентичность, осуществляя доступ в базу 122 данных каталога авторизованных пользователей, как показано на этапе 216. На этапе 218 база 132 данных каталога предоставляет запрашиваемую аутентификационную информацию 130 для сервера 120 управления, чтобы определять, соответствует ли идентификация записи 182a-n авторизованного пользователя в базе 124 данных каталога. Когда идентификация проверена, сервер 120 управления передает сообщение о проверке прокси-серверу 110, как показано на этапе 220.
Для того, чтобы формировать сеансовые ключи, используемые для первого защищенного соединения, клиентское устройство 126a-n шифрует случайное число с помощью открытого ключа шифрования прокси-сервера и отправляет результат прокси-серверу 110, как показано на этапе 222. Поскольку каждый из прокси-серверов 110a-n сконфигурирован с помощью, по существу, идентичной конфигурационной информации 128, включающей в себя открытые и закрытые ключи шифрования, любой из прокси-серверов 110a-n может дешифровать случайное число с помощью своего соответствующего закрытого ключа. Из случайного числа клиентское устройство 126a-n и прокси-сервер 110 могут формировать ключевой материал для шифрования и дешифрования. Это включает в себя установление первого защищенного соединения между клиентским устройством 126a-n и прокси-сервером 110. Когда какой-либо из вышеупомянутых этапов завершается неудачей, первое защищенное соединение между прокси-сервером 110 и клиентским устройством 126 не устанавливается, и сообщение об ошибке передается прокси-сервером 110 клиентскому устройству 126, как показано на этапе 224.
Прокси-сервер 110 передает уведомление о первом защищенном соединении серверу 120 управления на этапе 226. Уведомление включает в себя то, было ли соединение успешно установлено, или произошла ли ошибка, и оно не было установлено. Кроме того, уведомление может включать в себя информацию о первом защищенном соединении, такую как ключевой материал для шифрования, необходимую для каждого из множества прокси-серверов 110a-n, чтобы связываться по первому защищенному соединению. Сервер 120 управления сохраняет информацию о первом защищенном соединении в базе 124 данных каталога.
Когда первое защищенное соединение установлено, прокси-сервер 110 устанавливает второе защищенное соединение с одним из внутренних серверов 116, 118 с помощью протокола установления защищенного соединения. Прокси-сервер 110 передает запрос передачи данных одному из внутренних серверов 116, 118, как показано на этапе 228. В варианте осуществления запрос передачи данных включает в себя список поддерживаемых параметров протокола установления защищенного соединения, таких как алгоритмы обмена ключами, шифры, хэш-функции и т.д. Когда внутренний сервер 116, 118 принимает запрос передачи данных, он выбирает среди перечисленных параметров протокола установления защищенного соединения и передает уведомление с выбранными параметрами прокси-серверу 110a-n, как показано на этапе 230. В другом варианте осуществления прокси-сервер 110 и внутренний сервер 116, 118 сконфигурированы с помощью параметров протокола установления защищенного соединения для использования во время установления защищенного соединения. В этом варианте осуществления запросу необходимо лишь включать в себя сконфигурированные поддерживаемые параметры протокола установления защищенного соединения, а уведомление от внутреннего сервера 116, 118 включает в себя подтверждение приема предварительно сконфигурированных параметров протокола установления защищенного соединения.
Далее, прокси-сервер 110a-n передает идентификацию, такую как цифровой сертификат, внутреннему серверу 116, 118, как показано на этапе 232. Как описано выше, каждый из прокси-серверов 110a-n конфигурируется с помощью, по существу, идентичной конфигурационной информации 128 для цифровых сертификатов. Внутренние серверы 116, 118 могут запрашивать проверку идентичности прокси-сервера 110 у сервера 120 управления, как показано на этапе 234. Сервер 120 управления осуществляет доступ к базе 124 данных каталога, чтобы проверять идентичность прокси-сервера 110a-n, на этапе 236. На этапе 238 сервер 120 управления сравнивает запрошенную идентификацию, чтобы определять, совпадает ли идентификация с авторизованным пользователем в базе 124 данных каталога. Когда идентификация проверена, сервер 120 управления передает подтверждение внутреннему серверу 116, 118, как показано на этапе 240. Прокси-сервер 110 может запрашивать идентификацию, такую как цифровой сертификат, у внутреннего сервера 116, 118, так что защищенное соединение для передачи данных может быть взаимно аутентифицировано, как показано на этапе 242. Внутренний сервер 116, 118 передает идентификацию, такую как цифровой сертификат, прокси-серверу 110, как показано на этапе 244. Прокси-сервер 110 запрашивает проверку идентификации у сервера 120 управления, как показано на этапе 246. Сервер 120 управления проверяет идентичность, осуществляя доступ к базе 132 данных каталога на этапе 248 и определяя, соответствует ли идентификация записи 150a-n для авторизованного пользователя в базе 132 данных каталога, как показано на этапе 250. Сервер 120 управления передает сообщение о проверке прокси-серверу 110a-n, как показано на этапе 252.
После проверки, для того, чтобы формировать сеансовые ключи, используемые для защищенного соединения, внутренний сервер 116, 118 шифрует случайное число с помощью открытого ключа шифрования прокси-сервера и отправляет результат прокси-серверу 110, как показано на этапе 254. Поскольку каждый из прокси-серверов 110a-n сконфигурирован с помощью, по существу, идентичной идентификационной информации, включающей в себя открытые и закрытые ключи, любой из прокси-серверов 110a-n может дешифровать случайное число с помощью своего соответствующего закрытого ключа. Из случайного числа внутренний сервер 116, 118 и прокси-сервер 110 могут формировать ключевой материал для шифрования и дешифрования. Это включает в себя установление второго защищенного соединения между одним из прокси-серверов 110a-n и одним из внутренних серверов 116, 118. Когда любой из вышеописанных этапов завершается неудачей, второе защищенное соединение не устанавливается, и сообщение об ошибке передается прокси-сервером 110a-n внутреннему серверу 116, 118, как показано на этапе 256. Прокси-сервер 110 передает уведомление о втором защищенном соединении серверу 120 управления на этапе 258. Уведомление включает в себя то, было ли соединение успешно установлено, или произошла ошибка, и оно не было установлено. Кроме того, уведомление может включать в себя информацию о втором защищенном соединении, такую как ключевой материал для шифрования, необходимую для каждого из множества прокси-серверов 110a-n, чтобы связываться по второму защищенному соединению.
После того как первое и второе защищенные соединения установлены, передачи данных шифруются и дешифруются с помощью ключевого материала до тех пор, пока защищенные соединения не будут закрыты. Передачи данных принимаются одним из прокси-серверов 110a-n, как показано на этапе 260, от одного из клиентских устройств 126a-n по первому защищенному соединению. Передачи данных принимаются через первый порт прокси-сервера 110. Прокси-сервер 110 проверяет адрес получателя передач данных и передает передачи данных во внутреннюю сеть 104 по второму защищенному соединению с помощью второго порта, как показано на этапе 262. В варианте осуществления адрес получателя может быть единственным сетевым IP-адресом для внутренней сети 104, который транслируется одним из внутренних граничных маршрутизаторов 118a-n. В другом варианте осуществления адрес получателя может быть адресом внутренней сети для одного из внутренних серверов 116, 118. Во время вышеописанного процесса прокси-сервер 110 передает индикаторы состояния серверу 120 управления, уведомляющие сервер 120 управления о состоянии первого и второго защищенных соединений и передач данных, как показано на этапе 264. Прокси-сервер 110a-n предоставляет индикаторы состояния, относящиеся к первому и второму защищенным соединениям, например, когда защищенные соединения устанавливаются, завершены или во время установления происходит ошибка. Прокси-сервер 110 также предоставляет индикаторы состояния серверу 120 управления, когда передачи данных начинаются, завершаются или прерываются.
В варианте осуществления настоящего изобретения высокий уровень доступности передач данных реализуется в сети 102 периметра с помощью способа балансировки нагрузки между множеством прокси-серверов 110. Фиг. 6 - логическая схема варианта осуществления способа 300 для высокого уровня доступности и балансировки нагрузки между защищенной внутренней сетью и незащищенной внешней сетью в соответствии с настоящим изобретением. На этапе 302 запрос передачи данных принимается от одного из клиентских устройств 126 по внешней сети 106. На этапе 304 один из множества прокси-серверов выбирается, чтобы принимать запрос передачи данных, на основе списка доступных прокси-серверов и балансировки нагрузки между множеством прокси-серверов 110a-n. Балансировка нагрузки может быть реализована с помощью различных способов, включающих в себя балансировку нагрузки внешними граничными узлами 108 и балансировку нагрузки с помощью способа кластеризации серверов, как описано более подробно ниже. В каждом способе поддерживается список доступных прокси-серверов 110a-n для балансировки нагрузки. На этапе 306 запрос передачи данных передается выбранному одному из множества доступных прокси-серверов 110a-n в сети 102 периметра. На этапе 306 прокси-сервер 110 начинает устанавливать первое защищенное соединение с клиентским устройством 126 и затем второе защищенное соединение с одним из внутренних серверов 116, 118. Защищенные соединения могут быть установлены, как описано выше относительно фиг. 5.
На этапе 308 определяется, установлены ли первое и второе защищенные соединения. В одном варианте осуществления сервер 120 управления выполняет определение в ответ на уведомление об установлении защищенных соединений от прокси-сервера 110 или в ответ на сообщение об ошибке при установлении защищенных соединений от внутреннего сервера 116, 118. В других вариантах осуществления определение может быть выполнено внешним граничным узлом 108 или внутренним граничным узлом 112, или внутренними серверами 116, 118. В случае, когда первое или второе защищенное соединение не удалось установить, определяется, произошла ли неудача из-за прокси-сервера 110, как показано на этапе 310. В одном варианте осуществления внешние граничные узлы 108 наблюдают за прокси-серверами 110, чтобы определять отказ одного из прокси-серверов. В других вариантах осуществления узел балансировки нагрузки или прокси-серверы 110a-n наблюдают за доступностью, чтобы определять отказ прокси-сервера, как объясняется более подробно ниже. Прокси-сервер может быть недоступен из-за отказа в прокси-сервере или в линии связи с прокси-сервером или из-за планового обслуживания прокси-сервера или по другим причинам, которые вызывают неспособность прокси-сервера отвечать или работать эффективно. Когда один из множества прокси-серверов 110 стал недоступным, прокси-сервер удаляется из списка доступных прокси-серверов для балансировки нагрузки, как показано на этапе 312. Способ затем продолжается на этапе 314 повторной попыткой установить первое и второе защищенные соединения для передачи данных.
Когда первое и второе защищенные соединения для передачи данных установлены, прокси-сервер 110 уведомляет сервер 120 управления, как показано на этапе 316. Передача данных начинается, как показано на этапе 316. Во время передачи данных сервер 120 управления принимает уведомления от прокси-сервера 110 и определяет любые ошибки или прерывания в передачах данных, как показано на этапе 318. Когда отказов или ошибок не возникает, передачи данных завершаются, как показано на этапе 320. Когда обнаруживается сбой в передачах данных, предупреждение или уведомление предоставляется серверу 120 управления, чтобы повторно начинать или повторять передачи данных, как показано на этапе 322. На этапе 324 выполняется определение, стал ли один из прокси-серверов 110 недоступным. Когда один из прокси-серверов 110a-n определяется как недоступный, тогда прокси-сервер удаляется из списка доступных прокси-серверов для балансировки нагрузки, как показано на этапе 326. Передачи данных затем передаются снова одному или более доступным прокси-серверам 110a-n, как показано на этапе 316.
В варианте осуществления балансировка нагрузки для высокого уровня доступности реализуется внешними граничными узлами 108a-n и внутренними граничными узлами 112a-n. Таблица маршрутизации со списком доступных прокси-серверов 110a-n для балансировки нагрузки поддерживается каждым из внешних граничных узлов 108a-n и внутренних граничных узлов 112a-n. Передачи данных балансируются по нагрузке между каждым из доступного множества прокси-серверов 110a-n внешними граничными узлами 108a-n и внутренними граничными узлами 112a-n.
Фиг. 7 - блок-схема варианта осуществления внешнего граничного узла 108, функционирующего для балансировки нагрузки в соответствии с настоящим изобретением. Внешний граничный узел 108 включает в себя плоскость 338 данных, которая функционирует, чтобы переключать передачи данных с входных портов 340a-n на выходные порты 342a-n. Внешний граничный узел 108 также включает в себя плоскость 344 управления, которая функционирует, чтобы управлять переключением передач данных в плоскости 338 данных. Плоскость управления включает в себя модуль 350 обработки, прикладной модуль 348 брандмауэра и таблицу 346 маршрутизации.
Плоскость 344 управления функционирует, чтобы обновлять таблицу 346 маршрутизации с помощью таких стандартных протоколов, как протокол маршрутной информации (RIP), протокол внутренней маршрутизации между шлюзами (IGRP) и протокол открытого поиска кратчайшего пути (OSPF), или других протоколов, которые предоставляют сообщения об обновлении маршрутов или топологии. Когда внешний граничный узел 108 принимает сообщение об обновлении маршрутов, которое включает в себя изменения в записи, он обновляет свою таблицу 346 маршрутизации ( см. таблицу 1 ниже), чтобы отражать новый маршрут. Таблица 346 маршрутизации также обновляется множественными записями для адресата, когда определяется более одного маршрута до адресата. Например, таблица 346 маршрутизации включает в себя список адресатов с записью адреса для внутренней сети 104. Таблица 346 маршрутизации тогда вк