在客户端和目标设备或终端设备之间建立连接的方法、设备、计算机可读介质和系统与流程

文档序号:15743912发布日期:2018-10-23 22:45阅读:320来源:国知局

本专利申请涉及用于在客户端和诸如网络服务器等目标设备或终端设备之间建立连接的方法、设备、计算机可读介质和系统。



背景技术:

为了特别是经由HTTP的连接请求d加密,SSL或TLS协议已经普遍得到认可。SSL证书由独立认证机构向网站运营商颁发。在连接请求时,客户端可以根据证书来确认网站是否真实。

本地网络中的Web服务器不能够容易地从本地网络外部来访问。诸如虚拟专用网络VPN等常规技术能够实现这种连接,但配置需要较大开支。特别是,在本地网络中的一系列Web服务器发生改变时,VPN必须重新配置。通常,由系统管理员手动完成配置。通常不会为这种Web服务器执行诸如借助证书的加密。



技术实现要素:

本发明的目的在于能够尽可能免维护地并安全地访问本地终端设备。

第一实施例涉及一种系统,该系统包括客户端、服务器、一个或多个服务组件和与所述一个或多个服务组件连接的一个或多个终端设备,其中,服务器为每个终端设备提供主机名,主机名被分配给各个终端设备和对应的服务组件,其中,服务器被配置成响应于客户端的对主机名中的一者的连接请求将连接请求传递到所述一个或多个服务组件中的被分配该主机名的一者,并且其中,每个服务组件被配置成响应于连接请求检查被分配该主机名的终端设备是否具有证书,其中,如果不具有证书,服务器组件从外部认证机构请求证书,并且根据证书经由服务器建立与客户端的连接,并在客户端和终端设备之间传递数据包。

特别地,服务器还被配置成从主机名中提取第一字符串,并且根据第一字符串确定对应的服务组件的地址。

特别地,系统可以包括的是,服务组件还被配置成从主机名中提取第二字符串,并且根据第二字符串确定对应的终端设备的地址。

根据另一个实施例,通过在表格中查找各个字符串来进行地址确定。

替代地或附加地,能够通过分割主机名来进行地址确定。

其它实施例涉及一种服务组件,服务组件被配置成响应于客户端的对主机名的连接请求检查被分配主机名的终端设备是否具有证书,其中,如果不具有证书,服务组件从外部认证机构请求证书,并且根据证书经由服务器建立与客户端的连接,并在客户端与终端设备之间传递数据包。

特别地,服务组件还可被配置成从主机名中提取字符串,并且根据字符串来确定对应的终端设备的地址。

根据特别有利的实施例,可通过在表格中查找字符串进行地址确定。

替代地或附加地,也可通过分割主机名进行地址确定。

另外的实施例涉及一种方法,该方法包括:通过服务器为多个终端设备中的每者提供主机名,其中,主机名被分配给各个终端设备和与各个终端设备连接的服务组件;响应于客户端的对一个主机名的连接请求,通过服务器将连接请求传递到所述一个或多个服务组件中的被分配该主机名的一者;并且,响应于连接请求,通过服务组件检查被分配该主机名的终端设备是否具有证书,并且在不具有证书时,通过服务组件从外部认证机构请求证书,并且建立与客户端的连接,并在客户端和终端设备之间传递数据包。

特别地,所述方法可以包括,服务器从主机名中提取第一字符串,并且根据第一字符串确定对应的服务组件的地址。

有利的,服务组件从主机名中提取第二字符串,并且根据第二字符串确定对应的终端设备的地址。

例如,通过在表格中查找各个字符串进行地址确定。

替代地或附加地,通过分割主机名进行地址确定。

其它的实施例涉及一种具有指令的计算机可读介质,指令在被一个或多个处理器运行时根据上述说明执行根据本发明的方法。

通过以基于识别的方式向本地终端设备传递连接请求并仅为已接收到连接请求的这些终端设备请求证书建立了创造性。

附图说明

图1示出了根据本发明的实施例的系统。

图2示出了根据本发明的实施例的方法。

具体实施方式

根据本发明的第一实施例,客户端向由服务器提供的主机名发送连接请求。主机名是域名服务(DNS:Domain Name Service)名,DNS名能够被DNS服务器分配给IP地址,并被路由到它们的目的地。主机名被分配给直接地或间接地连接到服务器的终端设备,并且主机名不必具有自己的全球IP地址。例如,能够通过用户与Web浏览器的交互来触发连接请求,并且以HTTP请求的形式进行连接请求。替代地,能够借助其它的诸如FTP、SSH或适用于寻址主机名的其它协议等协议来进行连接请求。

服务器连接到至少一个服务组件。每个服务组件连接到一个或多个终端设备。服务组件可以是服务器的组成部分或可以是单独的单元,并且能够被实施为电路或软件。终端设备能够被实施为Web服务器或被实施为根据客户端的连接请求的协议进行操作的服务器。这些终端设备和服务组件(例如,连接至客户端的服务器)之间或这些终端设备和与客户端连接的服务器之间的任何连接经由服务组件来实现。例如,服务组件可以被配置成本地网络的代理或防火墙,经由所述代理或防火墙在终端设备和诸如客户端等外部设备之间进行任何通信。

服务器向经由服务组件与其连接的终端设备中的每个终端设备提供能够被客户端使用的唯一主机名。IP协议能够将一个或多个主机名分配给IP地址。

根据特定实施例,服务器接收与被分配给该服务器的IP地址或被分配给该服务器的一个或多个DNS名/主机名有关的所有包。在第一实施例中,服务器从主机名中提取第一字符串,以确定被传递连接请求的终端设备的诸如IP地址等本地地址。为此,有利地,检查主机名的起始字符串。主机名通常用点(.)分隔,其中,最后一个点之后的字符串表示顶级域(TLD:Top Level Domain),例如,“.de”。例如,起始字符串在主机名中位于第一个点之前,并且例如能够借助正则表达式(regular expression)来提取。为了区分主机名中的IP地址,它可能在主机名内包括与常规的点不同的分隔符。

这种主机名的示例为192-168-137-12.my-sda.net,其中,起始字符串是192-168-137-12。根据一个实施例,服务器能够根据该起始字符串来确定与相关的终端设备连接的服务组件。为此,能够在服务器的表格中查找服务组件的地址或标识符。

服务器根据服务组件的地址向服务组件传递连接请求。主机名将与连接请求一起被传递。

在接收连接请求之后,服务组件确定作为连接请求的访问地址的终端设备。例如,这通过将起始字符串中的分隔符替换为点来实现,从而产生常规的IP地址。

根据一个实施例,服务组件的标识符不借助起始字符串来查找,而是被包含在主机名中,例如被包含在预定字段中。例如,适当的主机名可以是192-168-137-12.isyyyyyyp8.my-sda.net,其中,服务组件的标识符是isyyyyyyp8。在该实施例中,服务器提取被点分隔的主机名的第二个字段,并且由此确定服务组件的标识符。然后,连接请求被传递到所确定的服务组件。服务组件根据起始字符串确定终端设备的完整地址,即192.168.137.12。

另外,服务组件检查应当被传递连接请求的终端设备的主机名是否具有证书。证书的类型通过连接请求隐含的协议来确定。例如,HTTPS的连接请求需要SSL证书或TLS证书。VPN协议、FTPS协议或其它协议也需要这种证书。例如,能够通过查找被储存在服务组件中的本地信息表格来确定是否具有证书。替代地,对应的请求能够被直接发送至外部认证机构。如果终端设备不具有证书,服务组件从外部认证机构请求该终端设备的证书。在某些实施例中,每个终端设备需要单独的证书。替代地,单个证书可以用于多个终端设备,例如用于与该服务组件连接的所有终端的证书。

在接收证书之后,服务组件通过经由服务器建立与客户端的连接来应答连接请求。这种连接的建立可以根据使用证书的常规步骤来实现。例如,证书被发送给客户端,以允许其检查服务器的真实性。从这时开始,客户端能够通过服务器与服务组件交换数据包。在某些实施例中,证书可用于加密连接。

图1示出了示例性系统100。服务器120被配置成接收来自客户端110的连接请求。在一个实施例中,在接收到连接请求时,服务器120从连接请求的主机名的组成部分中提取终端设备的地址。例如,如上所述,服务器通过从主机名中提取字符串来确定终端设备的本地网络地址。在一个实施例中,该字符串是包含被分隔符分隔的地址字段的起始字符串。替代地,终端设备的地址可以在另一个字符串中,例如在处于主机名中的位置N处的字符串中,或在主机名的第N个字段中。在后一示例中,通过观察主机名的由点划分的字段来确定第N个字段。服务器120能够通过这种方式来确定终端设备151、152、153或154的网络地址。主机名不一定必须包含实际地址,而可以包含被服务器通过表格映射到实际地址的标识符。这种实施例的优点在于没有向外部公开这些地址。另一个优点在于,地址的内部改变仅需要更新表格,以便在相同的主机名的情况下也使用新的地址。与终端设备连接的服务组件的标识符或地址可以借助在表格中查找终端设备的地址来确定。在某些实施例中,服务组件的地址或标识符也根据主机名来确定。服务组件的标识符可以被包含在主机名的另一字段中。

服务器120向经过确定的服务组件131或132发送请求。服务组件131或132检查目的地地址是否具有证书。例如,检查服务组件和终端设备的当前组合是否已经具有证书。替代地,检查服务组件是否具有证书。

如果不具有证书,通过服务组件从外部认证机构(未示出)请求证书。如果具有证书,服务组件通过经由服务器120建立与客户端110的连接来应答连接请求。为此,证书首先被传输到客户端110,以使其能够识别服务器120的真实性。例如,这种识别通过如下方式实现:借助检查算法或借助客户端110和外部认证机构之间的通信来检查证书。从这时起,能够在客户端和服务组件之间传输数据包。服务组件将传入的数据包提交给由确定的地址指定的终端设备。在这里,数据包被处理和应答,其中,终端设备的应答数据包经由对应的服务组件和服务器120被路由回至客户端110。

图1所示的终端设备151、152、153、154或服务组件131和132仅具有象征性。本发明包括如下系统,在这些系统中,任意数量的服务组件和终端设备相互连接。特别地,本发明在没有终端设备的情况下也能运转。在这种情况下,仅在服务组件131或132和客户端110之间建立经过认证的连接。还可以在除该客户端110之外的客户端和服务器120之间建立连接。在没有终端设备的实施例中,根据主机名确定的地址仅被分配给应当被传递该地址的服务组件。

图2示出了用于在客户端和终端设备之间建立连接的示例性方法。

首先,通过诸如服务器120等服务器为多个终端设备中的每个终端设备提供主机名210。

在步骤220中,服务器从诸如客户端110等客户端接收与所提供的主机名中的一者相关的连接请求。响应于接收连接请求,服务器首先确定连接请求的实际访问地址。为此,服务器可以在表格中查找主机名的第一组成部分,以便获得服务组件和/或终端设备的本地地址。替代地,服务器可以例如通过将组成部分解析为额外字符串来直接从主机名的组成部分(例如,起始字符串)提取这些地址。

在步骤230中,根据服务组件的已确定的地址,连接请求被传递到该服务组件。接着,在步骤240中,服务组件检查相关的访问地址(即,服务组件自身或被寻址的终端设备)是否具有证书。如果否,在步骤250中从外部认证机构请求用于访问地址的证书。

如果具有证书,在步骤260中,服务组件开始建立连接。为此,证书首先被发送到客户端,以便使其能够检查服务器的真实性。被客户端发送到相同的访问地址的数据包通过上述方式到达服务组件,并且从此处被引导到相关的终端设备。终端设备处理数据包,并且将响应发送到服务组件。应答经由客户端被传递到客户端。

由此,本发明能够在外部客户端和没有被分配自身的全球有效IP地址的终端设备之间建立经过认证的点对点连接。这对于作为其节点不具有全球IP地址的本地区域网络的一部分的这些终端设备来说是特别有利的。因为仅在需要时请求证书,所以本发明最大限度地减少了创建证书的支出。一旦具有证书,不需要为其有效性再次创建证书。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1