Область техники
Настоящая патентная заявка относится к способам, устройствам, машиночитаемым носителям и системам для установления сертифицированных соединений с терминалами в локальной сети, в частности, для установления сертифицированных соединений между терминалами в локальной сети.
УРОВЕНЬ ТЕХНИКИ
Протоколы SSL и TLS стали стандартом шифрования запросов на установление соединения (запросов соединения), в частности посредством HTTP. Например, SSL-сертификаты выдаются операторам сайтов независимыми органами сертификации. При отправке запросов соединения на сертифицированный веб-сервер сертификат гарантирует пользователю подлинность сайта.
Веб-серверы, расположенные в локальной сети, не могут быть легко доступны с адресов, не входящих в локальную сеть. Доступные технологии, в частности, виртуальные частные сети (Virtual Private Networks - VPN), позволяют выполнять такие соединения, но отличаются сложной конфигурацией. В частности, VPN необходимо настраивать заново при каждом изменении состава веб-серверов в локальной сети. Конфигурирование обычно выполняется вручную системным администратором. Аутентификация посредством сертификатов для таких веб-серверов обычно не выполняется.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Задача настоящего изобретения состоит в упрощении установления сертифицированных соединений с терминалами в локальной сети, причем упрощаются как соединения между терминалами в локальной сети, так и соединения между терминалом, находящимся в локальной сети, и клиентской частью, находящейся вне локальной сети.
Первый объект изобретения относится к системе, содержащей: клиентскую часть, сервер, компонент службы, соединенный с сервером, и, по меньшей мере, один терминал, соединенный с компонентом службы, при этом сервер предоставляет каждому терминалу имя хоста, причем упомянутое имя хоста назначено соответствующему терминалу и компоненту службы, при этом сервер сконфигурирован для ответа на запрос соединения, поступивший от клиентской части или одного из терминалов на одно из имен хоста, путем пересылки запроса соединения в компонент службы, при этом компонент службы сконфигурирован для ответа на запрос соединения, направленный на одно из имен хоста, путем проверки наличия сертификата шифрования соединения в файле для терминала, связанного с именем хоста, причем компонент службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле, и компонент службы проверяет соединение на основании сертификата, при этом компонент службы дополнительно сконфигурирован для пересылки входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на соответствующий терминал без прохождения через сервер, если соединение, связанное с пакетом данных, было установлено одним из терминалов, и пересылки пакета данных на сервер, если соединение не было установлено одним из терминалов.
В частности, компонент службы дополнительно может быть сконфигурирован для использования таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов, причем таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала и уникальный идентификатор соответствующего соединения.
Кроме того, уникальный идентификатор может представлять собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
Кроме того, по меньшей мере, один из терминалов может быть идентичен компоненту службы.
Предпочтительно, имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов.
Следующий объект относится к компоненту службы, подключенному к серверу и сконфигурированному для ответа на запрос соединения, направленный на имя хоста, предоставленное сервером терминалу, соединенному с компонентом службы, путем проверки наличия сертификата шифрования соединения в файле для терминала, причем компонент службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле, и компонент службы проверяет соединение на основании сертификата, при этом компонент службы дополнительно сконфигурирован для пересылки входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на терминал без прохождения через сервер, если соединение, связанное с пакетом данных, было установлено терминалом, соединенным с компонентом службы, и для пересылки пакета данных на сервер, если соединение не было установлено терминалом, соединенным с компонентом службы.
В частности, компонент службы дополнительно может быть сконфигурирован для использования таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов, причем таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала и уникальный идентификатор соответствующего соединения.
Кроме того, уникальный идентификатор может представлять собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
Возможно, что, по меньшей мере, один из терминалов идентичен компоненту службы.
Предпочтительно, имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов.
Кроме того, объект изобретения относится к способу, включающему следующие этапы: предоставление сервером, связанным с компонентом службы, соответствующего имени хоста одному или нескольким терминалам, соединенным с компонентом службы; проверка, выполняемая компонентом службы в ответ на запрос соединения, направленный на одно из имен хоста, наличия сертификата шифрования соединения в файле для терминала, соответствующего имени хоста, причем компонент службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле, и компонент службы проверяет соединение на основании сертификата; и пересылка компонентом службы входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на терминал без прохождения через сервер, если соединение, связанное с пакетом данных, было установлено терминалом, соединенным с компонентом службы, и пересылка пакета данных на сервер, если соединение не было установлено терминалом, соединенным с компонентом службы.
Дополнительно может быть включено использование компонентом службы таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов, причем таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала и уникальный идентификатор соответствующего соединения.
В частности, уникальный идентификатор может представлять собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
Предпочтительно, имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов.
Следующий объект изобретения относится к машиночитаемому носителю с командами, выполняющими способ в соответствии с вышеприведенным описанием, причем упомянутые команды выполняются одним или несколькими процессорами.
Изобретательский уровень достигается в результате предоставления имен хостов терминалам в локальных сетях, поскольку эти имена хостов подходят для адресации таких терминалов вне локальных сетей и, тем самым, для сертификации соответствующих соединений. Это особенно не является очевидным в сочетании с маршрутизацией пакетов данных к компоненту службы, так как этот компонент службы использует имена хостов или их соответствующие IP-адреса, на которые адресован пакет данных, для определения факта адресации соответствующего соединения терминалу внутри сети, что позволяет обойтись без маршрутизации соединения через внешние устройства. В частности, выгодно установление соединения между двумя терминалами в локальной сети, так как это соединение, с одной стороны, может быть сертифицировано, а с другой стороны, его необходимо маршрутизировать только внутри сети. Таким образом, изобретение уменьшает затраты на маршрутизацию и ускоряет доставку пакетов данных, а также способствует использованию сертифицированных безопасных соединений.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 иллюстрирует систему согласно объекту изобретения. Фиг. 2 иллюстрирует первый способ согласно объекту изобретения. Фиг. 3 иллюстрирует второй способ согласно объекту изобретения.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Согласно первому объекту изобретения клиентская часть, находящаяся вне локальной сети, направляет запрос соединения на терминал, находящийся внутри локальной сети. Доступ к устройствам внутри локальных сетей с устройств, находящихся вне сети, не может быть легко осуществлен, поскольку такие устройства не имеют глобального интернет-адреса (IP), но имеют только локальный адрес, например, 192.168.0.3, или локальное имя хоста, которые не видны устройствам, находящимся вне сети. При этом, чтобы получить возможность адресации таких терминалов, сервер, в частности, сервер, находящийся вне локальной сети, назначает имена хостов терминалам в локальной сети. Протокол IP позволяет присваивать IP-адрес одному или нескольким именам хоста.
Имена хостов - это имена службы доменных имен (DNS), которые могут назначаться IP-адресам DNS-серверами с целью направления пакетов по назначению посредством маршрутизации. Имена хостов эквивалентны действительному в масштабах всей сети IP-адресу сервера, однако в соответствии с настоящим изобретением проецируются на локальные IP-адреса или локальные имена хостов определенных терминалов, и пакеты данных при необходимости пересылаются на эти же адреса. В дальнейшем под «локальным IP-адресом» также понимают имя локального хоста.
Запрос соединения может быть инициирован, взаимодействием пользователя с Web-браузером на клиентской части, например, и может быть выполнен в форме HTTP-запроса. Альтернативно, запрос соединения может быть выполнен через другой протокол, допускающий использование имен хостов для адресации, например, FTP или SSH.
Сервер соединен с, по меньшей мере, одним компонентом службы. В одном объекте изобретения компонент службы представляет собой общий шлюз между локальной сетью и другими сетями, находящимися вне локальной сети; например, интернетом. Тем не менее, компонент службы выполняет другие функции, которые будут раскрыты ниже. Кроме того, компонент службы может входить в состав сервера или представлять собой отдельный модуль и может иметь аппаратное или программное исполнение. Он связан с одним или несколькими терминалами в локальной сети. Терминалы в локальной сети могут быть выполнены в виде компьютерного оборудования с веб-сервером или в виде других серверов, работающих в соответствии с протоколом запроса соединения со стороны клиентской части. Любые соединения между этими терминалами и клиентской частью осуществляются через компонент службы. Таким образом, компонент службы может быть также выполнен в виде прокси-сервера или межсетевого экрана локальной сети, посредством которого осуществляют любой обмен данными между терминалами и клиентскими частями, находящимися вне локальной сети.
В одном особом примере осуществления изобретения сервер принимает все пакеты, направленные на назначенный ему IP-адрес или на одно или несколько имен DNS/хостов, назначенных серверу или предоставленных сервером, находящимся вне сети. В примере осуществления изобретения сервер извлекает первую символьную строку из имени хоста с целью определения локального адреса, например, IP-адреса соответствующего терминала, на который будет переслан запрос соединения. Предпочтительно, для этого используют начальную символьную строку имени хоста. Имена хостов обычно разделяют точками (.), причем символы после последней точки обозначают домен верхнего уровня (TLD), например, «.de». Например, начальная символьная строка расположена перед первой точкой в имени хоста и может быть извлечена с помощью регулярного выражения. Определяемый локальный адрес может содержаться в этой начальной символьной строке, причем четыре части адреса локального IP-адреса (как правило, две 8-битные части идентификатора сети, 8-битный идентификатор подсети и 8-битный идентификатор хоста) в начальной символьной строке разделяют определенными разграничителями, отличающимися от стандартных точек, используемых в качестве разграничителей.
В качестве примера подобного имени хоста можно указать 192-168-137-12.my-sda.net, причем начальной символьной строкой считают 192-168-137-12. В примере осуществления изобретения сервер может распознавать компонент службы, соединенный с соответствующим терминалом, на основе этой начальной символьной строки. Для этого в таблице сервера можно найти адрес или идентификатор компонента службы. В других примерах осуществления изобретения идентификатор компонента службы входит в имя хоста и также может быть извлечен сервером. Таким именем хоста может быть 192-168-137-12.isyyyyyyp8.my-sda.net, причем isyyyyyyp8 является идентификатором компонента службы. В этом примере осуществления изобретения сервер извлекает второе поле имени хоста, отделенное точками, и, тем самым, определяет идентификатор компонента службы. В частности, такие имена хостов могут также содержать символы подстановки (*) для назначения различных адресов одному компоненту службы или одному терминалу.
Сервер пересылает запрос соединения на компонент службы по адресу компонента службы. Имя хоста может быть передано вместе с запросом соединения.
После получения запроса соединения компонент службы определяет терминал, которому адресован запрос соединения. Это можно реализовать, например, заменой разграничителей в начальной символьной строке на точки, что позволяет получить общий IP-адрес, действительный в локальной сети. В данном примере определен локальный адрес 192.168.137.12.
Компонент службы дополнительно проверяет наличие сертификата в файле для имени хоста терминала, на который должен быть переслан запрос соединения. Тип сертификата определяется протоколом запроса соединения. Например, для запроса соединения по протоколу HTTPS требуется SSL- или TLS-сертификат. Наличие сертификата в файле можно определить путем поиска, например, в локальной таблице, хранящейся в компоненте службы. Альтернативно, соответствующий запрос можно направить непосредственно во внешний центр сертификации. Если файл терминала не содержит сертификата, компонент службы запрашивает сертификат для этого терминала из внешнего центра сертификации. В некоторых примерах осуществления изобретения для каждого терминала требуется отдельный сертификат. Альтернативно, один сертификат может использоваться для нескольких терминалов, например, для всех терминалов, соединенных с этим компонентом службы.
Если файл содержит сертификат, компонент службы отвечает на запрос соединения, устанавливая соединение с клиентской частью через сервер. Установление такого соединения соответствует процессу, стандартному для использования сертификата. Например, сертификат передают на клиентскую часть, позволяя клиентской части проверять подлинность сервера. С этого момента клиентская часть может обмениваться пакетами данных с терминалом через сервер и компонент службы. В некоторых примерах осуществления изобретения сертификат можно использовать для шифрования соединения.
Кроме того, изобретение включает соединения, установленные между двумя терминалами одной локальной сети. Для установления соединения первого терминала со вторым терминалом в одной локальной сети достаточно установить прямое соединение между обоими терминалами, поскольку необходимость в сертифицированном соединении отсутствует.
Тем не менее, изобретение допускает также установление сертифицированных соединений между двумя локальными терминалами. Для этого первый терминал отправляет запрос соединения не непосредственно на локальный адрес второго терминала, а на имя хоста, назначенное сервером второму терминалу, или на соответствующий глобальный IP-адрес.
Назначенное имя хоста может быть определено, например, запросом от терминала к серверу. В одном из примеров осуществления изобретения сервер подает соответствующую команду, которую терминалы или клиенты могут использовать для определения имени хоста, назначенного сервером для данного глобального IP-адреса. Тем не менее, терминал может также определять имя хоста другими способами, например, путем объединения локального IP-адреса с идентификатором компонента службы и другими частями адреса, например, TLD.
Компонент службы получает запрос соединения и проверяет, например, через таблицу маршрутизации, на какой хост переслан запрос соединения. В первом примере осуществления изобретения компонент службы определяет, что запрос соединения направлен на терминал в локальной сети. Например, компонент службы на основе имени хоста, включенного в запрос соединения, определяет, что адресуемое имя хоста соответствует терминалу в локальной сети. В этом случае компонент службы, как было указано ранее, определяет наличие сертификата в файле для адресуемого терминала и при необходимости запрашивает сертификат у внешнего центра сертификации. Впоследствии на основании сертификата между двумя терминалами устанавливается сертифицированное соединение.
В альтернативном примере компонент службы при получении запроса соединения не обнаруживает адресуемого терминала в локальной сети первого терминала и потому пересылает запрос соединения на сервер. Тем не менее, например, сервер на основе таблицы соответствия обнаруживает, что целевой адрес соответствует терминалу, подключенному к компоненту службы, и пересылает запрос соединения компоненту службы. В связи с этим компонент службы может получить информацию о локальном IP-адресе второго терминала, например, путем замены соответствующего поля адреса в запросе соединения. После этого компонент службы определяет наличие сертификата в файле для второго терминала и при необходимости запрашивает сертификат у внешнего центра сертификации. Затем компонент службы инициализирует сертифицированное соединение между первым и вторым терминалами.
Если дополнительные пакеты данных, адресованные второму терминалу, поступают с первого терминала в компонент службы, и если упомянутые пакеты данных относятся к уже установленному соединению, то они будут переданы непосредственно на второй терминал, не проходя через сервер.
Таким образом, изобретение позволяет реализовать сертифицированные соединения между терминалами в локальной сети.
На фигуре 1 изображен пример системы 100. Сервер 120 сконфигурирован для получения запросов соединения от клиентской части 110. В одном примере осуществления изобретения после получения запроса соединения сервер 120 извлекает адрес терминала из части имени хоста, входящего в запрос соединения. Например, как было указано ранее, сервер определяет адрес терминала в локальной сети, извлекая символьную строку из имени хоста. В одном примере осуществления изобретения это начальная символьная строка, содержащая поля адреса, разделенные разграничителями, и отделенной от остальной символьной строки имени хоста вторым символом, например, точкой. В альтернативном примере адрес терминала можно извлечь из другой символьной строки в положении N в имени хоста или из N-го поля имени хоста. В последнем примере N-ное поле определяют путем исследования полей, разделенных точками в имени хоста. Таким образом, сервер 120 может определять, например, локальные адреса терминалов 140 или 150. Имя хоста не обязательно должно содержать фактический адрес, но в некоторых примерах осуществления может содержать идентификатор, преобразуемый сервером в фактический IP-адрес посредством таблицы. Такие примеры осуществления изобретения выгодны тем, что они позволяют не раскрывать эти адреса внешним устройствам. Следующее преимущество заключается в том, что достаточно обновить таблицу для внутреннего изменения адреса и последующего использования нового адреса для того же имени хоста. Идентификатор или адрес компонента службы, подключенного к адресуемому терминалу, можно определить путем поиска адреса терминала в таблице сервера. Тем не менее, в некоторых примерах осуществления изобретения по имени хоста определяют как локальный IP-адрес терминала, так и соответствующий компонент службы.
Сервер уведомляет соответствующий компонент службы, например, компонент 130 службы. Для этого сервер может предоставить новый адрес для запроса соединения, например, заменить имя хоста локальным IP-адресом терминала и направить запрос соединения на компонент 130 службы.
Компонент 130 службы проверяет наличие сертификата в файле для адреса терминала. Для этого можно использовать в качестве адреса имя хоста терминала, поскольку упомянутое имя хоста все еще входит в запрос соединения, или, альтернативно, комбинацию локального IP-адреса и адреса или идентификатора компонента службы. Альтернативно, компонент службы может просто проверить, находится ли сертификат в файле для своего собственного адреса.
Если файл не содержит сертификата, компонент 130 службы запрашивает сертификат из внешнего центра сертификации. Если файл содержит сертификат, компонент службы отвечает на запрос соединения, инициализируя соединение с клиентской частью 110 через сервер 120. Для этого компонент 130 службы сначала передает сертификат клиентской части 110, позволяя этой клиентской части идентифицировать подлинность сервера 120. Такую идентификацию можно выполнить, например, путем анализа сертификата с использованием алгоритмов тестирования или обмена данными между клиентской частью 110 и внешним центром сертификации. С этого момента пакеты данных можно передавать между клиентской частью и компонентом службы. Компонент службы направляет входящие пакеты данных на терминал, идентифицированный по найденному адресу. Терминал обрабатывает пакеты данных и составляет ответ, причем ответные пакеты с терминалов направляются через компонент 130 службы и сервер 120 обратно клиентской части.
Кроме того, система 100 позволяет устанавливать сертифицированные соединения между двумя терминалами, подключенными к одному компоненту службы, в частности, терминалами 140 и 150. Например, терминал 140 направляет запрос соединения, адресованный на имя хоста, предоставленное сервером 120 второму терминалу 150.
В первом примере осуществления изобретения компонент 130 службы распознает, что запрос соединения направлен на подключенный к нему терминал, например, путем анализа имени хоста в соответствии с приведенным выше описанием. В этом примере осуществления изобретения компонент 130 службы определяет наличие сертификата в файле для второго терминала и при необходимости запрашивает сертификат. Затем происходит инициализация соединения, причем поступающие впоследствии пакеты данных, относящиеся к этому соединению и соответствующим образом адресованные, перенаправляются непосредственно на соответствующий терминал, не проходя через сервер 120.
Во втором примере осуществления изобретения компонент 130 службы не определяет имя хоста для запроса соединения, но пересылает его на сервер 110. Сервер сравнивает имя хоста с локальным IP-адресом соответствующего терминала в соответствии с вышеописанными примерами осуществления и возвращает запрос соединения компоненту 130 службы, например, с использованием локального IP-адреса целевого терминала. После этого компонент 130 службы выполняет анализ сертификата, уже описанный во многих случаях, и инициализирует соединение между обоими терминалами. Пакеты данных, впоследствии поступающие в компонент службы и распознаваемые как принадлежащие инициализированному соединению, направляются непосредственно по назначению, не проходя через сервер 120. Распознавание пакетов данных таким способом можно реализовать, например, с использованием таблицы маршрутизации компонента 130 службы. В частности, компонент службы может использовать включенный в протокол исходящий и целевой адрес, а также номера портов или иные уникальные идентификаторы соединений для определения соединения, к которому относится пакет данных, и может затем переслать пакет данных внутри сети или вне сообразно обстоятельствам. Такой уникальный идентификатор может представлять собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
Терминалы 140 и 150, изображенные на фигуре 1, а также компонент 130 службы и клиентская часть 110 приведены исключительно для примера. Изобретение относится к системам, содержащим произвольное количество компонентов службы и терминалов, соединенных друг с другом.
Фигура 2 поясняет примерный способ 200 установления соединения между клиентской частью и терминалом.
На первом этапе 210 сервер, например, сервер 120, предоставляет имя хоста каждому из ряда терминалов, в частности, терминалам 140 и 150.
На этапе 220 сервер принимает запрос соединения от клиентской части, например, клиентской части 110, адресованный одному из предоставленных имен хоста. Все указанные имена хостов могут соответствовать, например, одному или нескольким IP-адресам, назначенным серверу и действующим в масштабах глобальной сети. В ответ на получение этого запроса соединения сервер сначала определяет фактического адресата запроса соединения. Для этого сервер может найти в таблице первую часть имени хоста, в частности, начальную символьную строку, для получения локальных адресов компонента службы и/или терминала. Альтернативно сервер может извлекать эти адреса непосредственно из части имени хоста, например, из начальной символьной строки, например, путем преобразования начальной символьной строки в другие символьные строки, содержащие локальный IP-адрес терминала и идентификатор или IP-адрес компонента службы.
На основе адреса, определенного для компонента службы, запрос соединения пересылается этому компоненту службы на этапе 230. После этого на этапе 240 компонент службы проверяет наличие сертификата в файле для соответствующего адресата, то есть для самого компонента службы или адресуемого терминала. Если сертификат отсутствует, его запрашивают для адресата у внешнего центра сертификации на этапе 250.
Если сертификат имеется в файле, компонент службы инициализирует соединение на этапе 260. Для этого сертификат можно передать клиентской части, позволяя этой клиентской части проверить подлинность сервера. Прочие пакеты данных, отправленные клиентской частью тому же адресату, поступают на компонент службы описанным выше путем и перенаправляются им на соответствующий терминал. Терминал обрабатывает пакет данных и направляет ответ на компонент службы. Ответ пересылается клиентской части через сервер.
Фигура 3 поясняет примерный способ 300 установления соединения между первым и вторым терминалом в одной локальной сети.
Аналогично этапу 210 на фигуре 2, имена хостов для терминалов предоставляются сервером, в частности, сервером 120 на этапе 310. Имена хостов назначаются одному или нескольким IP-адресам сервера, действительным в масштабе глобальной сети, в результате чего запросы, направленные на эти имена хостов или IP-адреса, достигают сервера 210. Если, например, запрос соединения направляют на такое имя хоста, указанный запрос соединения достигает сервера 120 на этапе 320. В равной степени это относится к запросам соединения, направленным терминалом в локальной сети, например, терминалом 140 или 150, просто подключенным к серверу 120 через компонент службы и имеющим только локальный IP-адрес. Если такой терминал направляет запрос соединения на имя хоста, соответствующее другому терминалу, подключенному к компоненту службы, компонент службы пересылает этот запрос соединения на сервер 120. Сервер 120, например, на основе структуры используемых имен хостов и/или таблицы, проецирующей имена хостов на локальные IP-адреса, определяет, что запрос соединения исходит от компонента службы, подключенного к серверу 120, и, следовательно, возвращает запрос соединения соответствующему компоненту службы. Как было описано выше, этому процессу может предшествовать преобразование символьных строк имен хостов или поиск по таблице.
На этапе 330 компонент службы проверяет наличие сертификата в файле для имени хоста и при необходимости запрашивает сертификат на этапе 340. Далее на этапе 350 следует фактическое установление соединения, например, путем обмена пакетами между участниками соединения в соответствии с протоколом, на котором основано соединение.
На этапе 360 компонент службы принимает пакет данных, а на этапе 370 проверяет, относится ли этот пакет данных к соединению с одним из терминалов компонента службы. Эту проверку можно выполнить по таблице маршрутизации, которая доступна компоненту службы, и в которую введен IP-адрес запрашивающего устройства и IP-адрес адресуемого устройства, а также номер порта для каждого соединения, известного компоненту службы. Даже если пакет данных адресован имени хоста целевого терминала, действительному в масштабе глобальной сети, компонент службы в этом случае на этапе 380 пересылает пакет данных не на сервер, а на соответствующий целевой терминал. Только в том случае, если пакет данных не может быть соотнесен с любым внутренним соединением, он будет переслан на этапе 390 на сервер.
Таким образом, изобретение позволяет устанавливать сертифицированные двухточечные соединения как между внешними клиентскими частями и терминалами внутри сети, так и между терминалами, не имеющими IP-адреса, действующего в масштабе глобальной сети. Изобретение уменьшает затраты на получение сертификатов, поскольку их запрашивают только при необходимости, а также предотвращает пересылку внутренних пакетов данных, передаваемых в локальной сети, даже если эти пакеты данных направляют на имя хоста или IP-адрес, действующий в масштабе глобальной сети и соотнесенный с локальным терминалом.
Изобретение относится к области вычислительной техники. Технический результат заключается в упрощении установления сертифицированных соединений с терминалами в локальной сети, причем упрощаются как соединения между терминалами в локальной сети, так и соединения между терминалом, находящимся в локальной сети, и клиентской частью, находящейся вне локальной сети. Технический результат достигается за счет пересылки компонентом службы входящего пакета данных, адресованного на имя хоста или соответствующего IP-адреса, непосредственно на терминал без прохождения через сервер, если соединение, связанное с пакетом данных, было установлено терминалом, соединенным с компонентом службы, и пересылки пакета данных на сервер, если соединение не было установлено терминалом, соединенным с компонентом службы, использования компонентом службы таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов, при этом таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала и уникальный идентификатор соответствующего соединения. 4 н. и 8 з.п. ф-лы, 3 ил.
1. Система (100) установления сертифицированных соединений, содержащая:
клиентскую часть (110);
сервер (120);
компонент (130) службы, соединенный с сервером (120); и
по меньшей мере, один терминал (140, 150), соединенный с компонентом (130) службы;
при этом сервер (120) предоставляет каждому терминалу (140, 150) имя хоста, причем упомянутое имя хоста назначено соответствующему терминалу (140, 150) и компоненту службы (130);
при этом сервер (120) сконфигурирован для ответа на запрос соединения от клиентской части (110) или от одного из терминалов (140, 150), направленный на одно из имен хоста, путем пересылки запроса соединения в компонент (130) службы;
при этом компонент (130) службы сконфигурирован для ответа на запрос соединения, направленный на одно из имен хоста, путем проверки наличия сертификата шифрования соединения в файле для терминала (140, 150), связанного с именем хоста, причем компонент (130) службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле и компонент службы проверяет соединение на основании сертификата;
при этом компонент (130) службы дополнительно сконфигурирован для пересылки входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на соответствующий терминал (140, 150) без прохождения через сервер (120), если соединение, связанное с пакетом данных, было установлено одним из терминалов (140, 150), и для пересылки пакета данных на сервер (120), если соединение не было установлено одним из терминалов (140, 150), компонент (130) службы дополнительно сконфигурирован для использования таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов (140, 150), причем таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала (140, 150) и уникальный идентификатор соответствующего соединения.
2. Система (100) по п. 1, в которой уникальный идентификатор представляет собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
3. Система (100) по любому из пп. 1, 2, в которой, по меньшей мере, один из терминалов (140, 150) идентичен компоненту службы.
4. Система (100) по любому из пп. 1-3, в которой имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов (140, 150).
5. Компонент (130) службы, подключенный к серверу (120) и сконфигурированный для ответа на запрос соединения, направленный на имя хоста, предоставленное сервером (120) терминалу (140, 150), соединенному с компонентом (130) службы, путем проверки наличия сертификата шифрования соединения в файле для терминала (140, 150), причем компонент (130) службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле и компонент службы проверяет соединение на основании сертификата; и
причем компонент (130) службы дополнительно сконфигурирован для пересылки входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на терминал (140, 150) без прохождения через сервер (120), если соединение, связанное с пакетом данных, было установлено терминалом (140, 150), соединенным с компонентом (130) службы, и для пересылки пакета данных на сервер (120), если соединение не было установлено терминалом (140, 150), соединенным с компонентом службы,
компонент (130) службы дополнительно сконфигурирован для использования таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов (140, 150), причем таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала (140, 150) и уникальный идентификатор соответствующего соединения.
6. Компонент (130) службы по п. 5, в котором уникальный идентификатор представляет собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
7. Компонент (130) службы по любому из пп. 5, 6, в котором, по меньшей мере, один из терминалов (140, 150) идентичен компоненту службы.
8. Компонент службы по любому из пп. 5-7, в котором имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов.
9. Способ (300) установления сертифицированных соединений, включающий следующие этапы:
предоставление (310) сервером (120), связанным с компонентом (130) службы, соответствующего имени хоста одному или нескольким терминалам (140, 150), соединенным с компонентом (130) службы,
проверка (330), выполняемая компонентом (130) службы в ответ на запрос соединения, направленный на одно из имен хоста, наличия сертификата шифрования соединения в файле для терминала (140, 150), соответствующего имени хоста, при этом компонент (130) службы запрашивает сертификат у центра сертификации в случае отсутствия сертификата в файле и компонент службы проверяет соединение на основании сертификата; и
пересылка (380) компонентом (130) службы входящего пакета данных, адресованного на имя хоста или соответствующий IP-адрес, непосредственно на терминал (140, 150) без прохождения через сервер (120), если соединение, связанное с пакетом данных, было установлено терминалом (140, 150), соединенным с компонентом (130) службы, и пересылка (390) пакета данных на сервер (120), если соединение не было установлено терминалом (140, 150), соединенным с компонентом (130) службы,
использование компонентом (130) службы таблицы маршрутизации для определения, было ли соединение, связанное с входящим пакетом данных, установлено одним из терминалов (140, 150), при этом таблица маршрутизации содержит, по меньшей мере, один исходящий адрес соответствующего терминала (140, 150) и уникальный идентификатор соответствующего соединения.
10. Способ (300) по п. 9, в котором уникальный идентификатор представляет собой порт подключения, IP-адрес или комбинацию порта подключения и IP-адреса.
11. Способ (300) по любому из пп. 9, 10, в котором имя хоста содержит локальный адрес или локальное имя хоста одного из терминалов (140, 150).
12. Машиночитаемый носитель с командами, выполняющими способ по любому одному из пп. 9-11, причем упомянутые команды выполняются одним или несколькими процессорами.
УСТРОЙСТВО ОБРАБОТКИ ИНФОРМАЦИИ, СПОСОБ УПРАВЛЕНИЯ, ОСУЩЕСТВЛЯЕМЫЙ УСТРОЙСТВОМ ОБРАБОТКИ ИНФОРМАЦИИ, НОСИТЕЛЬ ДАННЫХ И ПРОГРАММА | 2009 |
|
RU2470469C2 |
СИСТЕМА И СПОСОБ ИСПОЛЬЗОВАНИЯ БЕЗОПАСНОСТИ, ПРИСУЩЕЙ ЗАЩИЩЕННОМУ КОММУНИКАЦИОННОМУ КАНАЛУ, ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ НЕЗАЩИЩЕННОГО КОММУНИКАЦИОННОГО КАНАЛА | 2001 |
|
RU2279186C2 |
Колосоуборка | 1923 |
|
SU2009A1 |
US 9491111 B1, 08.11.2016 | |||
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Авторы
Даты
2019-11-21—Публикация
2019-01-15—Подача