安全的企業 SIP 通信

企業內部的通訊系統一般部署在私網內部,在網路邊緣部署 SBC 或語音閘道與外部進行通信,因此大部分場景下企業通訊都很安全。然而越來越多的企業在雲端部署 SIP 伺服器,而企業內部的 SIP 終端也越來越多地從外部網路連接到企業 SIP 伺服器,這使得部分(或全部)企業通訊系統暴露在公共網路中,安全問題日益嚴重。

企業 SIP 通訊安全涉及網路系統的許多方面,例如防火牆等。僅就 SIP 通訊本身而言必須加密,避免將通訊資訊暴露給其他網路使用者。加密的 SIP 通訊包含兩個部分:(1)SIP 訊息(訊號)加密,以及(2)語音流(RTP)加密,如下圖所示:

网络结构

當然,企業可以部署 VPN 將整個網路系統(不僅是通訊系統,也包括辦公系統等)進行加密,加密的 SIP 通訊也可以建立在 VPN 之上。建立企業 VPN 成本比較高、系統較複雜,本文僅討論加密的 SIP 通信,不涉及VPN 等其他網路安全技術。

SIP 訊息的加密透過「SIP over TLS」實現,雲端 miniSIPServer、本地 miniSIPServer 以及 miniSIPPhone 都支援 SIP over TLSv1.2 / TLSv1.3。請參考線上文檔,本文不再贅述。    

語音流透過 SRTP 傳輸實現加密,SRTP 的 master key 和 master salt 透過 SIP 訊息的 SDP ( RFC4568 )傳輸、協商,因此 SIP 訊息加密才能確保 SRTP 的關鍵資訊不會洩露,僅僅 SRTP 傳輸加密語音流、但是明文傳遞 SIP 訊息,不能確保整個 SIP 傳輸的安全性。 

RFC4568 中定義了幾種加密套件,目前我們選擇支援預設的 AES_CM_128_HMAC_SHA1_80 ,暫不支援其他加密套件。 

SRTP 協定族包含諸多擴展,目前 miniSIPServer 和 miniSIPPhone 支援最基礎的 RFC3711 協定,這也是絕大多數 SIP 設備(包括伺服器、PBX、SBC 以及終端)都支援的基礎 SRTP 協定。目前不支援 DTLS-SRTP,主要考慮以下幾點:(1)SIP over TLS 已經可以確保 master key & salt 的安全性,與 DTLS 的作用等效;(2)雖然 WebRTC 等互聯網技術廣泛採用了 DTLS-SRTP,但大部分 SIP 設備並不支援 DTLS-SRTP,在企業 SIP 通訊領域會有互聯的通訊領域。

miniSIPServer 和 miniSIPPhone 預設可選擇 SRTP,無需額外的配置。部分 SIP 設備需要明確設定是否選擇 SRTP,例如 MicroSIP 在設定帳號時,「Media Encryption」需做以下設定:


  

  

留言

此網誌的熱門文章

miniSIPPhone 支援 SIP over TCP/TLS

發送和接收即時訊息(Instant messages)

電話號碼URI