0

我正在使用 jitsi 和星号 1.8.1。我成功地在它们之间配置了 TLS。它工作正常。现在我正在它们之间配置 SRTP。

以下是配置文件。

sip.conf

[general]
context=incoming
allowguest=no
alwaysauthreject=yes
allow=ulaw
allow=alaw
allow=gsm


tlsenable=yes
tlsbindaddr=0.0.0.0
tlscertfile=/etc/asterisk/keys/newbie.pem
tlscafile=/etc/asterisk/keys/ca.crt
tlscipher=ALL
tlsclientmethod=tlsv1

[user1]
type=peer
defaultuser=user1
secret=1000
dtmfmode=rfc2833
callerid="User one"
host=dynamic        ; The device must always register
canreinvite=no
nat=yes
encryption=yes
transport=tls

; Deny registration from anywhere first
deny=0.0.0.0/0.0.0.0
; Replace the IP address and mask below with the actual IP address and mask
; of the computer running the softphone, or the address of the hardware phone,
; either a host address and full mask, or a network address and correct mask,
; registering will be allowed from that host/network.
permit=192.168.51.0/255.255.255.0
context=myphones

[user2]
type=peer
defaultuser=user2
secret=1001
dtmfmode=rfc2833
callerid="User two"
host=dynamic        ; The device must always register
canreinvite=no
nat=yes
encryption=yes
transport=tls

; Deny registration from anywhere first
deny=0.0.0.0/0.0.0.0
; Replace the IP address and mask below with the actual IP address and mask
; of the computer running the softphone, or the address of the hardware phone,
; either a host address and full mask, or a network address and correct mask,
; registering will be allowed from that host/network.
permit=192.168.51.0/255.255.255.0
context=myphones

扩展名.conf

[general]
static=yes
writeprotect=no
clearglobalvars=no

[incoming]
exten => s,1,Hangup()

[myphones]
exten => user1,1,Set(CHANNEL(secure_bridge_signaling)=1)
exten => user1,n,Set(CHANNEL(secure_bridge_media)=1)
exten => user1,n,Dial(SIP/user1)
exten => user1,n,Hangup()

exten => user2,1,Set(CHANNEL(secure_bridge_signaling)=1)
exten => user2,n,Set(CHANNEL(secure_bridge_media)=1)
exten => user2,n,Dial(SIP/user2)
exten => user2,n,Hangup()

exten => 201,1,Answer()
exten => 201,n,Playback(tt-monty-knights)
exten => 201,n,Hangup()
exten => 202,1,Answer()
exten => 202,n,Playback(welcome)
exten => 202,n,Playback(demo-echotest)
exten => 202,n,Echo()
exten => 202,n,Playback(demo-echodone)
exten => 202,n,Playback(vm-goodbye)
exten => 202,n,Hangup()

我也上传了 srtp 模块。它被加载了。但是当 user1 调用 user2 时,我的星号服务器出现分段错误并关闭。

这里有关于如何配置 srtp 的帮助吗?不管我做对了还是有什么问题..

我已经在http://forums.asterisk.org/viewtopic.php?f=1&t=84587发布了这个问题

提前致谢。,

4

2 回答 2

2

Asterisk 1.8 原生支持 SRTP。因此,您可以使用 Asterisk 1.8.x 服务器轻松尝试此操作。本系统不支持普通的 SIP 电话。您需要找到支持 SRTP 和支持 TLS 的 IP/软电话进行设置。为此使用闪烁软电话 (http://www.icablink.com)。我按照以下文章设置了安全的 VoIP 系统。

对于 SRTP:http ://www.remiphilippe.fr/2011/01/16/asterisk-srtp-with-1-8/

对于 TLS:https ://wiki.asterisk.org/wiki/display/AST/Secure+Calling+Tutorial,(您可以从这里找到 ast_tls_cert 脚本:https ://reviewboard.asterisk.org/r/979/diff/ )

于 2012-10-25T05:07:59.920 回答
0

我知道这是一个老问题,但是我遇到了同样的问题。我发现了这个解释,所以我想我会在最后标记它,以防其他人遇到同样的问题(或者在我们的情况下缺乏理解!)

可以在这里找到帖子:http: //permalink.gmane.org/gmane.comp.voip.sip-communicator.user/921

Jitsi 确实支持 SRTP,但它是通过 ZRTP 密钥协商来实现的。这具有提供端到端加密的优势(与可以在服务器上窃听的 Asterisk 中的标准 SRTP 实现相反)。

然而,Asterisk 不支持它,因此您需要使用实际的 SIP 和 RTP 代理才能使其工作。

希望这可以帮助,

埃米尔

于 2013-07-25T10:08:17.890 回答