CN102217270B - 使用认证令牌来授权防火墙打开针孔 - Google Patents

使用认证令牌来授权防火墙打开针孔 Download PDF

Info

Publication number
CN102217270B
CN102217270B CN200980123730.8A CN200980123730A CN102217270B CN 102217270 B CN102217270 B CN 102217270B CN 200980123730 A CN200980123730 A CN 200980123730A CN 102217270 B CN102217270 B CN 102217270B
Authority
CN
China
Prior art keywords
cat
pin hole
media stream
call controller
end points
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200980123730.8A
Other languages
English (en)
Other versions
CN102217270A (zh
Inventor
丹尼尔·G·温
大卫·A·麦格鲁
卡伦·F·詹宁斯
艾瑞克·G·万柯克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN102217270A publication Critical patent/CN102217270A/zh
Application granted granted Critical
Publication of CN102217270B publication Critical patent/CN102217270B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0078Security; Fraud detection; Fraud prevention

Abstract

描述了使用密码令牌来授权防火墙打开准许某一网络流量穿越防火墙的针孔的技术。发起端点从呼叫控制器请求令牌,呼叫控制器授权穿过防火墙的针孔。作为响应,呼叫控制器可以生成被发送给目的地端点的密码授权令牌(CAT)。呼叫控制器可以基于与呼叫控制器相关联的授权ID、呼叫控制器和防火墙两者知道的共享私密以及依请求被授权的媒体流而定的数据来生成令牌。

Description

使用认证令牌来授权防火墙打开针孔
技术领域
本发明中描述的实施例一般地涉及网络安全,并且更具体地涉及使用认证令牌(authentication token)来授权(authorize)防火墙打开针孔(pinhole)。
背景技术
众所周知,RTP(实时协议的略称)提供了用于输运诸如流传输音频和视频(例如,VoIP电话呼叫)之类的实时媒体数据的因特网标准协议。当然,其它协议也可用来创建并管理计算机网络上的媒体流。允许这样的媒体流过防火墙的常见方法是:防火墙检查信令消息(例如SIP)以识别与媒体将用于数据流(例如,经由UDP的RTP)的IP地址和端口有关的信息。一旦经过识别,防火墙打开“针孔”,该“针孔”允许媒体流经该防火墙去往所希望的目的地(如果目的地地址和/或端口被授权接收这样的流量的话)。然而,如果信令被加密(经常是这样的),则防火墙无法检查信令的实质以识别目的地地址和/或端口。
此外,如果信令和实际媒体流经过不同路径穿越(traverse)网络,则无法保证实际接收到媒体的防火墙将明白应当为这样的媒体打开针孔。该后一种情形可以通过约束网络设计以迫使信令和媒体流经同一防火墙来解决。然而,该方法通常导致不自然的网络设计选择以便迫使消息信令和后续的实时数据流两者使用相同网络路径。因此,存在对使用认证令牌来授权防火墙为某些媒体流打开针孔的技术的需要;尤其是为承载了实时流传输媒体数据的媒体流(例如,利用经由UDP的RTP输运的VoIP呼叫)打开针孔。
发明内容
本发明中描述的实施例一般地提供了用于使用认证令牌来授权防火墙打开针孔的方法和装置。这里描述的一个实施例包括一种系统。该系统一般可以包括具有处理器和包含程序的存储器的网络设备。该程序一般可被配置为接收用来授权穿越网络设备去往目的地端点的媒体流的消息。请求本身可以包括密码授权令牌(CAT)以及描述媒体流的源端点和目的地端点的流数据。该网络程序还可以被配置为评估CAT以判断CAT是否是由经授权的呼叫控制器生成的。评估至少部分地基于网络设备和经授权的呼叫控制器两者知道的共享私密(shared secret)。当确定CAT是由经授权的呼叫控制器生成的时,由网络设备打开针孔,以允许来自源端点的网络流量经过网络设备去往目的地端点。
在特定实施例中,该消息还可以包括指示CAT被生成的时间的伪时间(pseudo-time)、保活频率时段以及相对于伪时间指定的CAT使用期限时段。此外,网络设备可以要求在针孔被打开之后的每个连续的保活频率时段内接收到保活消息(keep-alive message),以使得针孔持续保持打开达CAT使用期限时段(也是相对于伪时间确定的)的持续时间。另外,生成了用于授权防火墙打开针孔的CAT的呼叫控制器还可被配置来向受信任中继点(TRP)授予保持特定针孔打开达给定CAT的使用期限的权限。为了使呼叫在超过该时段之后保持活跃(active),TRP可以在初始CAT期满之前从呼叫控制器请求新的CAT,并将其转发给端点。CAT和保活消息两者作为用于NAT的会话穿越效用(STUN)消息通过网络被发送。
附图说明
为了可以详细地理解本发明的上述特征,可以通过参考实施例得到在上面简要概述的本发明的更具体描述,实施例中的一些在附图中示出。然而,注意,附图仅图示出了本发明的典型实施例,因此,不应认为是对其范围的限制,因为本发明可以接纳其它等效实施例。
图1图示出了根据本发明的实施例的示例网络拓扑。
图2是图示出根据本发明的实施例的用于使用认证令牌来授权防火墙打开针孔的示例方法的流程图。
图3是图示出根据本发明的实施例的用于利用保活消息来使针孔维持承载媒体流的方法的示例的流程图。
图4A-4E图示出了根据本发明的实施例的在图1的示例网络拓扑中使用认证令牌来授权防火墙打开针孔的网络流量流。
图4F-4G图示出了根据本发明的实施例的在图1的示例网络拓扑中使用认证令牌以便利用从认证令牌得到的保活消息来使针孔保持承载媒体流的网络流量流。
具体实施方式
本发明描述了令牌的使用,令牌被生成来授权防火墙打开准许某些网络流量(例如用于实时媒体流的经由UDP的RTP)穿过防火墙的针孔。利用VoIP呼叫作为示例,发起VoIP的端点从呼叫控制器请求令牌,呼叫控制器在建立到目的地VoIP端点的呼叫之前授权穿过防火墙的针孔。作为响应,呼叫控制器可以生成将朝目的地端点发送的令牌。呼叫控制器可以基于与呼叫控制器相关联的授权ID、呼叫控制器和防火墙两者知道的共享私密以及依请求为其授权的媒体流而定的数据来生成令牌。在一种情形中,发起VoIP的端点从呼叫控制器接收令牌并将其转发给目的地。可替代地,受信任中继点(TRP)可以代表发起VoIP的端点从呼叫控制器请求令牌并将其发送给VoIP目的地端点。该后一种方法允许将令牌用来授权防火墙针孔而不需要另外修改个体VoIP电话上的软件。
一旦被授权,针孔就可以利用从发起VoIP的端点(或TRP)发送来的保活消息而保持打开。此外,令牌本身可以具有最大使用期限,在该最大使用期限之后,必须从呼叫控制器请求新的令牌(并发送给目的地VoIP端点)以用于使针孔保持打开。另外,在打开针孔之后,防火墙可以记住用于打开该针孔的伪时间,并且该伪时间不能被再使用来打开穿过该防火墙的或者穿过已看到该伪时间或更长伪时间的任何其它防火墙的另一针孔。
伪时间本身可以提供在呼叫控制器和(一个或多个)防火墙之间同步的时钟值。此外,CAT令牌中的伪时间仅被需要来处理该CAT令牌以及相对应的针孔防火墙。即,该伪时间不必对应于任何其它系统时钟,并且其不必以与任何其它时钟相同的速率前进。在一个实施例中,伪时间可以利用单调增加的值(例如48比特值,其中,当给定媒体流被初始化时,低32比特被初始化为零,并且每当呼叫控制器被重新启动时高16比特被递增)来实现。除了共享同步时钟值以外,还可以定义有效时段,其指示在CAT被发出之后该CAT应当被认为有效的伪时间单位的数目。
这里公开的一个实施例可以被实现为在诸如防火墙或路由器之类的网络设备上执行的路由程序,该网络设备被配置为将网络与恶意(或者简单地,不想要的)网络流量屏蔽开。另外,这里公开的实施例可以适于由其它网络设备使用,例如充当网络桥接器的“透明”防火墙。另外,路由程序可被分发到多种计算机可读存储介质上。说明性计算机可读存储介质包括但不限于:(i)永久地存储信息的不可写入存储介质(例如计算机内的只读存储器设备,例如可由CD-ROM驱动器读取的CD-ROM盘);(ii)存储可改变信息的可写入存储介质(例如软盘驱动器内的软盘或硬盘驱动器)。其它介质包括用来例如通过计算机网络或电话网络(包括无线通信网络)将信息传送给计算机的通信介质。后一实施例具体地包括发送去往/来自因特网和其它网络的信息。
图1图示出了根据本发明的实施例的示例网络拓扑100。在此示例中,网络拓扑100用来发起(并维持)第一VoIP端点105(发起VoIP呼叫)与第二VoIP端点110(呼叫的目的地)之间的呼叫。第一VoIP端点105可以提供基于硬件或软件的IP电话,该IP电话允许用户拨出(并接收)电话呼叫。当然,本领域技术人员将认识到,除了如图1的示例所示的使用用来进行VoIP呼叫的经由UDP的RTP流以外,这里描述的使用认证令牌来授权防火墙打开针孔的技术还可以适于与被配置来授权其它实时数据和/或媒体流的多种呼叫控制器、呼叫管理器或其它媒体管理器一起使用。
如图所示,第一VoIP端点105与受信任中继点(TRP)130以及呼叫控制器120(或者更一般地,被配置来授权多种不同实时媒体流的呼叫管理器)一起位于防火墙140后面。类似地,第二VoIP端点110位于防火墙150后面。因此,承载语音呼叫的数据分组必须穿过防火墙140和防火墙150以抵达第二VoIP端点110。然而,通常,防火墙140可被配置为允许外出(outbound)流量流向网络115。相比而言,防火墙150必须允许进入流量经过防火墙150以便使第一VoIP端点105向第二VoIP端点110拨打电话。防火墙140、150可以包括具有处理器和存储路由程序的存储器的任何合适的路由或网络设备,该路由程序被配置为允许流量、阻止流量或将流量路由经过防火墙去往防火墙后面的目的地端点。
如下面更详细描述的,呼叫控制器120可以提供被配置来生成授权令牌的网络设备,该授权令牌被称为密码授权令牌(或者简称为CAT),用来创建对这样的流量授权的防火墙针孔。因此,呼叫控制器120充当第一VoIP端点105所拨打的呼叫的授权代理。
说明性地,呼叫控制器120以及防火墙140和150均知道共享私密122。该共享私密122可以基于用来标识给定呼叫控制器120的认证代理id 124。如下面更详细描述的,呼叫控制器120可以使用共享私密122和认证代理id 124以及依呼叫而定的数据来创建授权防火墙150打开针孔的CAT。进而,防火墙150可以使用认证代理id 124以及共享私密122的拷贝来认证CAT是来自给定呼叫控制器120的。
此外,由防火墙150打开的针孔可被配置为仅保持打开预定时间段。即,CAT可以向针孔授权有限的使用期限。另外,在该时段期间,防火墙150可被配置为要求时常(例如,每30秒)发送新的经认证的保活消息,以便使针孔保持打开。在图1的示例拓扑中,经认证的保活消息可以由TRP 130生成。因此,当呼叫控制器120创建用于授权(以及再次授权)穿过防火墙150的针孔的CAT时,呼叫控制器120向TRP 130授予保持特定针孔打开达给定CAT的使用期限的权限。为了使呼叫在超过该时段时保持活跃,TRP 130可以在初始CAT期满之前,从呼叫控制器请求新的CAT,并将其转发给端点。
图2是图示出根据本发明的实施例的用于使用认证令牌来授权防火墙打开针孔的示例方法200的流程图。结合提供了利用图1的网络拓扑的流量流示例的图4A-4E来描述图2的方法200。如图所示,方法200开始于步骤205,在步骤205中,VoIP端点发起语音呼叫。这在图4A中被示出,在图4A中,VoIP端点105被用来拨出电话号码(“555-5555”)。作为响应,TRP 130接收向所拨出数字打电话的请求,并解析出VoIP端点110的端口和目的地IP地址。
在步骤210,TRP生成对来自呼叫控制器的CAT的请求。例如,图4B示出了TRP 130发送对用于授权防火墙针孔的令牌的请求。该请求可以包括在步骤205处确定的目的地IP地址和端口、试图发起语音呼叫的VoIP端点105的源IP地址和端口,以及反映CAT被生成的时间的伪时间。如已提到的,伪时间可以反映用来确保令牌具有有限的有效性的单调增加值。因此,呈现给防火墙的具有有效时段之外的伪时间的以其它方式有效的CAT不能被用来打开针孔。即,CAT不能被截取并在有效时间间隔之外被再使用。作为响应,在步骤215,呼叫控制器可以生成CAT令牌,该CAT令牌用于授权径内(in-path)防火墙打开针孔--允许媒体穿越该防火墙去往目的地。
例如,图4C示出了呼叫控制器120根据包括共享私密122在内的确定信息来生成CAT。另外,图4C示出了呼叫控制器将未经加密HMAC密钥(UHK)和经加密HMAC密钥(EHK)作为对来自TRP 130的CAT请求的响应的一部分发送。如本领域技术人员将认识到的,基于密钥的(keyed)散列消息认证码(HMAC)是利用密码散列函数结合私密密钥计算出的一类消息认证码(MAC)。
如上所述,呼叫控制器可以被配置有共享私密122和认证代理id124,并且该信息可以与共同管理域中的防火墙(例如防火墙140、150)共享。即,基于CAT来允许针孔的每个防火墙被提供有(每个呼叫控制器的)认证代理id 124和共享私密122。认证代理id 124和共享私密122允许防火墙认证消息是由给定呼叫控制器源发的。同时,不将共享私密122与TRP 130或VoIP端点105、110共享。
根据共享私密122,呼叫控制器120和防火墙150两者执行密钥推导函数。例如:
Kmac=HMAC-SHA1-128(″MAC″,共享私密)
Kenc=HMAC-SHA1-128(″KEY″,共享私密)
Kmac被用来对用于打开防火墙针孔的CAT进行认证。在此示例中,Kenc提供了用于创建EHK的128比特加密密钥,EHK用来使针孔保持活着。被提供来计算Kmac的“MAC”可以从被请求媒体流特有的流数据来确定。然而,注意,这些值(Kmac和Kenc)都不通过网络来发送。而是,呼叫控制器120和防火墙150利用共享私密122在内部计算它们。
因此,呼叫控制器120被配置有共享私密122并且对于每个呼叫生成UHK和EHK两者。即,呼叫控制器120逐个呼叫地为TRP 130生成CAT。该CAT允许防火墙(例如防火墙150)认证描述媒体流的流数据(例如,源和目的地地址的集合、通信协议以及依呼叫而定的属性)。TRP 130不具有生成CAT所需的HMAC密钥(即,Kmac);而是,其可由呼叫控制器120提供。呼叫控制器120可被配置为在每个呼叫的开始处并且在该呼叫的结束处(针对“关闭针孔”消息)执行此操作。此外,呼叫控制器120还为呼叫处于活动状态的每个CAT持续时段(例如,每5分钟)生成新的CAT。
在一个实施例中,呼叫控制器120将此信息中继给TRP 130,TRP 130得知UHK和CAT使用期限(即,可以利用CAT打开针孔的持续时间)。EHK也被中继给TRP 130,但是,EHK不直接由TRP 130使用。而是,EHK被包括在发送给VoIP端点110的消息中,并且被任何径内防火墙(例如,防火墙150)看见。
返回图2的方法200,在步骤220处,TRP可以将CAT转发给VoIP端点。在一个实施例中,CAT(包括EHK值)可以作为UDP NAT的简单穿越(STUN)消息的一部分被中继。例如,图4D示出了TRP 130生成包括EHK、CAT、伪时间和媒体流数据的STUN消息的示例。如已提到的,发送给VoIP端点110的该消息还可以包括有效时段(其是相对于伪时间确定的)和保活频率,保活频率指示应当多久发送一次保活消息以基于给定CAT使针孔保持打开。在步骤225,径内防火墙识别从TRP发送来的消息并且评估包括在消息中的信息。如果CAT通过认证,则防火墙随后为与CAT包括在一起的流数据(例如,作为STUN消息中的字段被传输的流数据)中所标识的媒体流打开针孔。例如,图4E示出了防火墙150打开用于授权媒体流410的针孔420。在一个实施例中,防火墙150(其知道共享私密122)解密EHK以确定相对应的UHK。防火墙使用该UHK来认证打开针孔的请求。例如,防火墙150可以使用共享私密122独立地计算UHK的值,通过将该值与对从TRP 130接收的EHK解密而确定的UHK相比较,防火墙150可以确认该请求来自呼叫控制器120。在这样的情况中,防火墙150打开针孔420。
另外,来自CAT的伪时间被评估以核实该CAT是在有效时段内发出的。如果是,则防火墙150返回CAT被接受的指示,即,防火墙150已打开了与该CAT相对应的针孔的指示。在一个实施例中,如果CAT中的伪时间在防火墙150处的本地伪时间之前,则该本地伪时间被提前到CAT中的伪时间值并且令牌被接受。当然,在步骤225处验证了CAT之后媒体流被打开,并且媒体流在有效时段期满之后可以长时间持续;有效时段仅确定其间CAT可用来打开针孔的所允许时间长度。
在步骤230,一旦针孔被授权,则发起VoIP的端点开始通过经授权的媒体流(例如,发送去往/来自VoIP端点105和110的源地址和目的地地址以及端口的经由UDP的RTP流)发送数据。当分组穿越网络115并遇到防火墙150时,针孔420允许该流量流向防火墙之后的目的地端点(例如,VoIP端点110)。
如已提到的,用来授权防火墙打开针孔的CAT消息可以具有相对于伪时间的预定义使用期限,在该伪时间处,呼叫控制器为给定呼叫生成CAT。此外,在该使用期限期间,防火墙可以要求在媒体流的持续时间中保活消息要时常(例如,对于利用经由RTP的UDP发送的VoIP呼叫,每三十秒)被接收到。图3是图示出根据本发明的实施例的用于利用保活消息维持承载媒体流的针孔的方法300的示例的流程图。结合图4F-4G来描述图3的方法300,图4F-4G提供了在图1的示例网络拓扑中利用保活消息发送所使用的流量流的示例。
如图所示,方法300开始于步骤305,在步骤305中,TRP将CAT转发给VoIP端点,如上所述。另外,TRP可以按照需要记下用于生成保活消息的伪时间、保活频率,以及用于确定请求重新授权CAT的时间的CAT使用期限。如上所述,一旦TRP将CAT发送给了目的地并且穿越径内防火墙的针孔被打开,则数据分组(例如,承载VoIP呼叫的媒体的经由UDP的RTP分组)可以作为媒体流的一部分被发送给目的地。当然,其它实时协议和数据流也可被发送。
在步骤310,TRP监视相对于CAT的伪时间过去了多长时间,直到当前的保活时段将要期满为止。例如,对于30秒的保活时段,TRP可以在向端点发送保活消息之前等待直到当前的30秒时间窗期满之前五秒为止。当然,保活时段和发送新的保活消息的时间可以被定制以适合个案的需要。在步骤315,一旦保活时段将要期满,TRP就可以判断媒体流是否仍然在活跃地发送数据。如果是,则TRP可以生成去往媒体流的端点的新的保活消息。在步骤320,媒体流的径内防火墙截取保活消息并且更新指示针孔应当被关闭的时间的值,例如将以秒计的活跃字段(seconds-activefield)延长另一30秒。
例如,图4F图示出了TRP 130生成包括流数据(指示源和目的地位置以及协议信息)和更新后的保活时间的消息。在一个实施例中,保活消息可以被封装在STUN指示中。众所周知,STUN指示不接收响应。因此,在特定实施例中,承载保活消息的多个STUN指示可被发送以避免由于被丢弃的分组而使针孔被关闭。此外,(一个或多个)STUN指示可以包括每当TRP将其转发给VoIP端点110时被更新的两个字段。以秒计的活跃字段可以从TRP和CAT的伪时间的角度来指定媒体流410应当保持活跃的秒数。并且保活消息中的验证字段可以包括利用以秒计的活跃字段和从呼叫控制器120接收的UHK计算出的SHA1-HMAC(如上所述)。因此,可由防火墙基于UHK来验证保活消息。然而,由于TRP不具有生成UHK所需的信息,因此呼叫控制器120保持对授权媒体流负责。同时,呼叫控制器120向TRP(经由UHK)授予保持针孔打开达CAT的使用期限的权限。注意,在一个实施例中,TRP不发送SHA1-HMAC的所有128个比特,而是可以仅发送SHA1-HMAC的前64(或96)个比特。
在步骤320,径内防火墙接收承载了保活消息的分组并且判断是否延长针孔的使用期限。另外,如果防火墙未看到(并验证)保活消息达用户设置的时间间隔(例如30秒),则针孔被关闭。如图4F所示,防火墙150接收STUN消息,并且作为响应,判断针孔420是否已经打开。如果是,则防火墙150不需要认证CAT(当其创建针孔时已经进行了验证)。而是,防火墙140验证保活消息。为此,防火墙150判断以秒计的活跃字段的值是否大于先前接收(并且先前验证过)的消息。防火墙150然后保证以秒计的活跃字段不超过最大CAT持续时间。如果保活消息满足这两个要求,则防火墙150然后验证利用以秒计的活跃值和UHK计算出的SHA1-HMAC。如果通过了验证,则使针孔在保活消息的以秒计的活跃字段所指定的另一时段中保持打开。
如上所述,CAT可被用来在指定时间段对针孔授权。在这些情况中,如果媒体流需要存活长于所指定时段的时间,则其需要利用新的CAT被重新授权。返回图3的方法300,在步骤325,TRP判断CAT使用期限是否将要期满(即,利用另一保活消息是否不能延长针孔使用期限)。如果可以利用另一保活消息延长针孔使用期限,则方法300返回步骤310,在步骤310中,TRP等待另一保活时间间隔过去。
否则,一旦CAT即将期满,则在步骤330,TRP向呼叫控制器发送利用另一CAT来重新授权媒体流的请求。作为响应,呼叫控制器可以生成返回给TRP的新的CAT(步骤335)。可以利用与上面所述的用来生成原始CAT相同的技术来生成新CAT。在步骤340,TRP将新CAT转发给媒体流端点并且该新的CAT被径内防火墙截取。该防火墙随后基于该新的CAT中的信息来重新设置最大使用期限。
图4G图示出了利用图1的示例网络拓扑执行的步骤330、335和340的示例。如图所示,TRP 130与呼叫控制器120通信以请求新的CAT。作为响应,呼叫控制器120生成新的EHK和UHK值并且然后将它们发送给TRP 130。TRP将新EHK和相对应的流数据发送给防火墙150。当被防火墙150接收到时,防火墙150验证该新的CAT,如上所述(即,防火墙解密EHK以获得新的UHK并更新最大针孔使用期限)。
有利地,本发明的实施例描述了使用令牌来授权防火墙打开准许某一网络流量(例如,用于诸如VoIP呼叫之类的实时媒体流的经由UDP的RTP)穿过该防火墙的针孔。发起媒体流的端点从呼叫控制器请求令牌,呼叫控制器授权穿过防火墙的针孔。作为响应,呼叫控制器可以生成被发送给目的地端点的密码授权令牌(CAT)。呼叫控制器可以基于与呼叫控制器相关联的授权ID、呼叫控制器和防火墙两者知道的共享私密以及依为请求被授权的媒体流而定的数据来生成令牌。受信任中继点(TRP)可以代表发起VoIP的端点来从呼叫控制器请求令牌并将其发送给VoIP目的地端点。因此,当呼叫控制器创建用于授权(以及重新授权)穿过防火墙的针孔的CAT时,呼叫控制器向TRP授予保持特定针孔打开达给定CAT的使用期限的权限。如果呼叫需要在超过该时段时保持活跃,则TRP可以在初始CAT期满之前从呼叫控制器请求新的CAT,并将其转发给端点。
虽然前面涉及本发明的实施例,然而可以在不脱离本发明的基本范围的情况下作出其它实施例,并且本发明的范围由下面的权利要求来确定。

Claims (19)

1.一种使用认证令牌来授权网络设备打开针孔的系统,包括:
网络设备,包括:
用于接收用来授权穿越所述网络设备去往目的地端点的媒体流的消息的装置,其中,该消息包括密码授权令牌CAT、描述所述媒体流的源端点和所述目的地端点的流数据、指示所述CAT被生成的时间的伪时间、保活频率时段以及相对于所述伪时间指定的CAT使用期限时段;
用于评估所述CAT以判断所述CAT是否是由经授权的呼叫控制器生成的的装置,其中,所述评估至少部分地基于所述网络设备和所述经授权的呼叫控制器两者知道的共享私密;以及
用于当确定所述CAT是由所述经授权的呼叫控制器生成的时,打开允许来自所述源端点的网络流量经过所述网络设备去往所述目的地端点的针孔的装置。
2.如权利要求1所述的系统,其中,用于新的针孔的伪时间必须大于所述网络设备上次看到的伪时间。
3.如权利要求1所述的系统,其中,所述网络设备还被配置为要求在所述针孔被打开之后的每个连续的保活频率时段内接收到保活消息,以使得所述针孔持续保持打开达所述CAT使用期限时段的持续时间。
4.如权利要求3所述的系统,其中,所述经授权的呼叫控制器被配置来向受信任中继点TRP授予生成由所述网络设备接收的所述保活消息的权限。
5.如权利要求4所述的系统,其中,所述保活消息是利用由与所述媒体流相关联的信息构成的4元组被发送的,与所述媒体流相关联的信息包括源IP地址、源UDP端口、目的地IP地址和目的地UDP端口。
6.如权利要求5所述的系统,其中,所述消息被编码到用于NAT的会话穿越效用STUN消息中。
7.如权利要求1所述的系统,其中,所述呼叫控制器对从所述源端点打往所述目的地端点的VoIP呼叫进行授权。
8.如权利要求1所述的系统,其中,所述CAT是利用基于密钥的散列消息认证代码HMAC生成的,所述基于密钥的HMAC是根据描述了源端点和目的地端点的流数据以及所述共享私密计算出的。
9.如权利要求1所述的系统,其中,由所述网络设备接收的所述消息与所述媒体流在相同的4元组上,其中,所述媒体流包括RTP媒体流,并且其中,所述4元组包括所述RTP媒体流的源IP地址、源UDP端口、目的地IP地址和目的地UDP端口。
10.如权利要求9所述的系统,其中,所述消息包括用于NAT的会话穿越效用STUN消息。
11.如权利要求1所述的系统,其中,所述网络设备用作将所述目的地端点与网络流量屏蔽开的防火墙。
12.一种使用认证令牌来授权网络设备打开针孔的方法,所述针孔允许媒体流穿越所述网络设备去往目的地端点,该方法包括:
接收用来授权穿越所述网络设备去往所述目的地端点的所述媒体流的消息,其中,该消息包括密码授权令牌CAT、描述所述媒体流的源端点和目的地端点的流数据、指示所述CAT被生成的时间的伪时间、保活频率时段以及相对于所述伪时间指定的CAT使用期限时段;
评估所述CAT以判断所述CAT是否是由经授权的呼叫控制器生成的,其中,所述评估至少部分地基于所述网络设备和所述经授权的呼叫控制器两者知道的共享私密;以及
当确定所述CAT是由所述经授权的呼叫控制器生成的时,打开允许来自所述源端点的网络流量经过所述网络设备去往所述目的地端点的针孔。
13.如权利要求12所述的方法,其中,用于新的针孔的伪时间必须大于所述网络设备上次看到的伪时间。
14.如权利要求12所述的方法,其中,所述网络设备被配置为要求在所述针孔被打开之后的每个连续的保活频率时段内接收到保活消息,以使得所述针孔持续保持打开达所述CAT使用期限时段的持续时间。
15.如权利要求14所述的方法,其中,所述呼叫控制器被配置来向受信任中继点TRP授予生成由所述网络设备接收的所述保活消息的权限。
16.如权利要求15所述的方法,其中,由所述网络设备接收的所述消息与所述媒体流在相同的4元组上,其中,所述媒体流包括RTP媒体流,并且其中,所述4元组包括所述RTP媒体流的源IP地址、源UDP端口、目的地IP地址和目的地UDP端口。
17.如权利要求12所述的方法,其中,所述呼叫控制器对从所述源端点打往所述目的地端点的VoIP呼叫进行授权。
18.如权利要求12所述的方法,其中,所述CAT是利用基于密钥的散列消息认证代码HMAC生成的,所述基于密钥的HMAC是根据描述了源端点和目的地端点的流数据以及所述共享私密计算出的。
19.如权利要求12所述的方法,其中,所述网络设备用作将所述目的地端点与网络流量屏蔽开的防火墙。
CN200980123730.8A 2009-01-16 2009-12-21 使用认证令牌来授权防火墙打开针孔 Active CN102217270B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/355,153 2009-01-16
US12/355,153 US8363836B2 (en) 2009-01-16 2009-01-16 Using authentication tokens to authorize a firewall to open a pinhole
PCT/US2009/069044 WO2010083011A1 (en) 2009-01-16 2009-12-21 Using authentication tokens to authorize a firewall to open a pinhole

Publications (2)

Publication Number Publication Date
CN102217270A CN102217270A (zh) 2011-10-12
CN102217270B true CN102217270B (zh) 2015-01-21

Family

ID=41723085

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980123730.8A Active CN102217270B (zh) 2009-01-16 2009-12-21 使用认证令牌来授权防火墙打开针孔

Country Status (4)

Country Link
US (1) US8363836B2 (zh)
EP (1) EP2380325B1 (zh)
CN (1) CN102217270B (zh)
WO (1) WO2010083011A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8467536B2 (en) * 2010-12-08 2013-06-18 Motorola Solutions, Inc. Binding keys to secure media streams
US8776202B2 (en) 2011-04-08 2014-07-08 Cisco Technology, Inc. Method and apparatus to scale authenticated firewall traversal using trusted routing point
US9742728B2 (en) * 2011-08-30 2017-08-22 Sonus Networks, Inc. Determining expiration time of bindings for network address translation devices
US9313246B2 (en) * 2012-06-29 2016-04-12 Cisco Technology, Inc. Resilient video encoding control via explicit network indication
CN103546389B (zh) * 2012-07-09 2017-02-15 中国电信股份有限公司 降低stun服务器负载的方法、装置和系统
US9203906B2 (en) 2013-06-30 2015-12-01 Vonage Network, Llc Systems and methods for enabling data communications to a telephony device
US8892748B1 (en) 2013-06-30 2014-11-18 Vonage Network, Llc Systems and methods for enabling data communications to a telephony device
US9203593B2 (en) * 2013-06-30 2015-12-01 Vonage Network, Llc Systems and methods for enabling data communications to a telephony device
RO131252A2 (ro) * 2014-11-27 2016-06-30 Ixia, A California Corporation Metode, sisteme şi suport citibil pe calculator pentru recepţionarea informaţiilor de configurare a testărilor
RO131305A2 (ro) * 2014-12-15 2016-07-29 Ixia, A California Corporation Metode, sisteme şi suport citibil pe calculator pentru recepţionarea unui mesaj de sincronizare a ceasului
RO131306A2 (ro) 2014-12-16 2016-07-29 Ixia, A California Corporation Metode, sisteme şi suport citibil pe calculator pentru iniţierea şi execuţia testelor de performanţă a unei reţele private şi/sau a componentelor acesteia
RO131361A2 (ro) 2015-02-09 2016-08-30 Ixia, A California Corporation Metode, sisteme şi suport citibil pe calculator pentru identificarea locaţiilor asociate punctelor de capăt
RO131360A2 (ro) 2015-02-09 2016-08-30 Ixia, A California Corporation Metode, sisteme şi suport citibil pe calculator pentru facilitarea rezolvării numelor gazdă ale punctului de capăt în mediul de testare cu firewall-uri, traduceri de adrese de reţea () sau cloud-uri
US10015162B2 (en) * 2015-05-11 2018-07-03 Huawei Technologies Co., Ltd. Firewall authentication of controller-generated internet control message protocol (ICMP) echo requests
US10681005B2 (en) 2016-12-08 2020-06-09 Keysight Technologies Singapore (Sales) Pte. Ltd. Deploying a networking test tool in a cloud computing system
US10812463B2 (en) * 2017-12-08 2020-10-20 International Business Machines Corporation Secure access to an enterprise computing environment
US11212260B2 (en) 2018-03-24 2021-12-28 Keysight Technologies, Inc. Dynamic firewall configuration and control for accessing services hosted in virtual networks
US10834056B2 (en) * 2018-07-31 2020-11-10 Ca, Inc. Dynamically controlling firewall ports based on server transactions to reduce risks

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101103607A (zh) * 2004-10-18 2008-01-09 奥科得克萨斯公司 用于防火墙穿越的设备和方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4677612A (en) * 1984-02-14 1987-06-30 Rosemount Inc. Communication system with subdivided transmission cycles
US6502135B1 (en) * 1998-10-30 2002-12-31 Science Applications International Corporation Agile network protocol for secure communications with assured system availability
AU2998100A (en) * 1999-02-18 2000-09-04 Sun Microsystems, Inc. Data authentication system employing encrypted integrity blocks
US6842860B1 (en) * 1999-07-23 2005-01-11 Networks Associates Technology, Inc. System and method for selectively authenticating data
US6971028B1 (en) * 1999-08-30 2005-11-29 Symantec Corporation System and method for tracking the source of a computer attack
US7058974B1 (en) * 2000-06-21 2006-06-06 Netrake Corporation Method and apparatus for preventing denial of service attacks
US7139679B1 (en) * 2002-06-27 2006-11-21 Cisco Technology, Inc. Method and apparatus for cryptographic protection from denial of service attacks
US7340771B2 (en) 2003-06-13 2008-03-04 Nokia Corporation System and method for dynamically creating at least one pinhole in a firewall
US6996070B2 (en) * 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US8566462B2 (en) * 2005-05-12 2013-10-22 Digital River, Inc. Methods of controlling access to network content referenced within structured documents
US7917950B2 (en) * 2005-05-12 2011-03-29 Jds Uniphase Corporation Protocol-generic eavesdropping network device
US7472411B2 (en) * 2005-11-01 2008-12-30 Cisco Technology, Inc. Method for stateful firewall inspection of ICE messages
US8191119B2 (en) 2005-11-01 2012-05-29 Cisco Technology, Inc. Method for protecting against denial of service attacks
EP2084881B1 (en) * 2006-09-28 2012-03-28 Rayv Inc. System and methods for Peer-to-Peer Media Streaming
US8533339B2 (en) 2006-10-13 2013-09-10 Cisco Technology, Inc. Discovering security devices located on a call path and extending bindings at those discovered security devices
US7925554B1 (en) * 2006-12-29 2011-04-12 Amazon Technologies, Inc. Using configured application pricing to determine end user fees for use of invocable services
US20090077248A1 (en) * 2007-09-14 2009-03-19 International Business Machines Corporation Balancing access to shared resources
US8413261B2 (en) * 2008-05-30 2013-04-02 Red Hat, Inc. Sharing private data publicly and anonymously

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101103607A (zh) * 2004-10-18 2008-01-09 奥科得克萨斯公司 用于防火墙穿越的设备和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M.Stiemerling et al.NAT/Firewall NSIS Signaling Layer Protocol (NSLP).《draft-ietf-nsis-nslp-natfw-20.txt》.2008, *

Also Published As

Publication number Publication date
US8363836B2 (en) 2013-01-29
CN102217270A (zh) 2011-10-12
US20100183151A1 (en) 2010-07-22
EP2380325A1 (en) 2011-10-26
EP2380325B1 (en) 2013-05-29
WO2010083011A1 (en) 2010-07-22

Similar Documents

Publication Publication Date Title
CN102217270B (zh) 使用认证令牌来授权防火墙打开针孔
US7472411B2 (en) Method for stateful firewall inspection of ICE messages
Kuhn et al. Security considerations for voice over IP systems
US8108677B2 (en) Method and apparatus for authentication of session packets for resource and admission control functions (RACF)
US7739728B1 (en) End-to-end IP security
US7661131B1 (en) Authentication of tunneled connections
KR101280281B1 (ko) 일련의 경계 게이트웨이들을 통하는 ip 멀티미디어 베어러 경로 최적화를 위한 개선된 방법 및 시스템
US9094373B2 (en) Method and apparatus to scale authenticated firewall traversal using trusted routing point
US20150113588A1 (en) Firewall Limiting with Third-Party Traffic Classification
US20170201382A1 (en) Secure Endpoint Devices
JP2010081636A (ja) Ipネットワークの信頼できるドメインにおけるアイデンティティの処理
US8443082B2 (en) Network communication systems and methods
CN110493367B (zh) 无地址的IPv6非公开服务器、客户机与通信方法
JP2009514349A (ja) 全交換セッションセキュリティ
US20080133915A1 (en) Communication apparatus and communication method
CA2844428C (en) Real-time encryption of voice and fax over ip
EP1836559B1 (en) Apparatus and method for traversing gateway device using a plurality of batons
KR102059150B1 (ko) IPsec 가상 사설 네트워크 시스템
JP4818186B2 (ja) ネットワークシステム、資源割り当て方法及び資源割り当てプログラム
KR102326977B1 (ko) 신뢰 도메인간 통신 방법 및 이를 위한 게이트웨이
JP2007286820A (ja) 情報共有システムおよび情報共有方法
Egger et al. Safe Call
KR20040046260A (ko) NAT 기능을 갖는 사설망에서 IPSec을 이용한종단과 종단 간의 private 정보 전송 방법 및 이를이용한 보안 서비스 방법
Rantapuska SIP call security in an open IP network
Orrblad et al. Secure VoIP: call establishment and media protection

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant