李寶霞
(上海貝爾企業(yè)通信有限公司,上海 201210)
Asterisk是一款基于LINUX系統(tǒng)的語音呼叫服務(wù)器,其不僅能提供較豐富的呼叫服務(wù)器功能(基本呼叫/語音信箱/自動應(yīng)答/呼叫轉(zhuǎn)移),并且具有開源免費(fèi)的特性,被世界170多個(gè)國家所使用,服務(wù)器部署量超過100萬臺,并以每年1.3百萬用戶的增長速度飛速發(fā)展。是目前各廠商VOIP SIP終端必須要兼容一款SIP Server。
RTP(Real-time Transport Protocol)實(shí)時(shí)傳輸協(xié)議位于UDP協(xié)議層之上,主要用于傳輸音頻/視頻媒體。SRTP(Secure Real-time Transport Protocol),即安全實(shí)時(shí)傳輸協(xié)議,是在RTP協(xié)議基礎(chǔ)上所發(fā)展起來的一款安全性較高的協(xié)議,它可以為RTP語音數(shù)據(jù)提供加密、消息認(rèn)證、完整性保證,可以解決VOIP網(wǎng)絡(luò)不安全的缺陷。
大多數(shù)的SIP設(shè)備采用 UDP 或TCP 協(xié)議來傳輸SIP消息,但是對于某些VOIP 系統(tǒng)而言,特別是企業(yè)級的網(wǎng)絡(luò),要求采用 TLS(Transport Layer Security)加密傳輸協(xié)議來傳輸 SIP 消息,即SIPTLS。
8028S是ALU公司生產(chǎn)的一款SIP終端,支持Asterisk作為第三方SIP Server。本文著重講解8028S終端在Asterisk SIP Server上的語音加密傳輸部署方式-SRTP的實(shí)現(xiàn)與配置,并進(jìn)一步講解SIP-TLS加密傳輸方式,如圖1所示。
圖1 網(wǎng)絡(luò)層與協(xié)議
(1)Asterisk SIP Server安裝完成后,檢查SIP終端注冊話機(jī)常用端口(5060)和HTTP端口(80)處于打開狀態(tài),使用linux命令查看:netstat——tuan
(2)注意要檢查并關(guān)閉防火墻,到如下目錄下設(shè)置:
確保終端可以成功注冊到Asterisk SIP上,基本的SIP呼叫可通。
SIP相關(guān)參數(shù)在如下路徑下:/etc/asterisk,常用文件主要有sip.conf/extensions.conf/rtp.conf
終端在Asterisk上語音加密傳輸(SRTP)實(shí)現(xiàn)方式過程為:
終端與Asterisk SIP Server通過SIP協(xié)議協(xié)商使用SRTP傳輸方式,如果協(xié)商成功,則語音通話建立成功,并使用SRTP傳輸語音流;如果協(xié)商失敗,則通話建立失敗。標(biāo)志SRTP加密的參數(shù)位于終端發(fā)起的INVITE消息所攜帶SDP里的m行標(biāo)記。如果該m行標(biāo)記為RTP/SAVP,則要求使用srtp傳輸,后續(xù)RTP會進(jìn)行加密傳輸;如果m行標(biāo)記為RTP/AVP,則要求使用RTP傳輸,不進(jìn)行語音加密。總的網(wǎng)絡(luò)拓?fù)鋱D如圖2所示:
圖2 SIP+SRTP網(wǎng)絡(luò)拓?fù)鋱D
(1)假設(shè)終端上使用UDP傳輸,并請求使用 SRTP 加密傳輸語音流:
終端上需設(shè)置如下:
?
(2)Asterisk上設(shè)置如下:
Asterisk上UDP端口默認(rèn)為開,SRTP開關(guān)默認(rèn)為關(guān)。登陸到Asterisk 配置管理WEB上,需要手動將srtp開關(guān)打開,并進(jìn)行如下設(shè)置:
之后重啟終端,終端注冊成功后,打一路基本通話,并用wireshark抓取SIP協(xié)議網(wǎng)絡(luò)報(bào)文。通過SIP Invite消息里面有RTP/SAVP表示終端請求使用SRTP,加密方式為crypto-suite,如圖3所示。Asterisk回復(fù)200 OK表示協(xié)商成功,之后發(fā)送的RTP均為加密模式,即SRTP,如圖4所示:
如果采用TCP傳輸,則終端和Asterisk SIP Server上同時(shí)需要修改SIPTransportMode以及SIPServerPort。
圖3 SIP INVITE報(bào)文請求和Asterisk建立SRTP
圖4 SIP協(xié)議SRTP協(xié)商流程圖
隨著VOIP網(wǎng)絡(luò)的普及,VOIP網(wǎng)絡(luò)上的數(shù)據(jù)越來越多地遭受到竊聽和攻擊,數(shù)據(jù)安全性問題越來越引起人們的重視。通過對語音流使用SRTP進(jìn)行語音加密傳輸,可以更好地降低網(wǎng)絡(luò)竊聽和攻擊,保護(hù)用戶數(shù)據(jù)安全,是局域網(wǎng)特別是企業(yè)網(wǎng)上經(jīng)常使用的方式。