前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在XSwitch中开启TLS

如何在XSwitch中开启TLS

作者头像
Seven Du
发布2022-06-24 13:56:23
1.1K0
发布2022-06-24 13:56:23
举报

随着时代的发展,TLS也慢慢成了SIP通信的标配,下面我们来看一下如何在XSwitch中开启TLS支持。

使用自签名证书

TLS需要使用证书,XSwitch默认安装会有一个自签名的证书/usr/local/freeswitch/certs/tls.pem,我们先使用该证书演示TLS配置。

首先,打开【高级】⇨【SIP】,选择一个SIP Profile,进入,修改并开启所有TLS相关的配置参数,如:

  • tlstrue,是否开启TLS支持
  • tls-bind-paramstransport=tls,绑定TLS参数,会出现在Contact等头域中
  • tls-cert-dir$${certs_dir},这是一个全局变量,默认值是/usr/local/freeswitch/certs/,指定证书路径
  • tls-ciphers$${sip_tls_ciphers},全局变量,代表使用的加密算法,默认值是``
  • tls-onlyfalse,如果改为True,则仅支持TLS,不支持UDP/TCP。
  • tls-passphrase:如果证书有密码保护,需要填,否则留空。
  • tls-sip-port$${sip_tls_port},全局变量,默认为5061
  • tls-verify-data:是否检查日期。
  • tls-verify-depth2,设置允许的TLS验证链的最大深度。
  • tls-verify-in-subjects:默认为空。
  • tls-verify-policynone
  • tls-version$${sip_tls_version},默认值为:tlsv1,tlsv1.1,tlsv1.2

然后,点击右上角的重启,或在控制台上执行reload mod_sofia就可以了,如果在详细信息中看到如下内容,表示TLS配置好了:

tls-bind-url: sips:mod_sofia@192.168.7.8:5061;maddr=172.18.0.3;transport=tls

可以使用如下openssl命令检查是否可以连接,如:

-----BEGIN CERTIFICATE-----...

下面,就可以尝试通过SIP客户端连接了,不过,不是所有客户端都支持自签名证书。有的客户端支持不验证TLS证书,如果有的话可以尝试开启该选项测试。

使用权威机构签发的TLS证书

如果在生产环境使用,需要使用权威机构签发的TLS证书。很多权威机构也提供免费的证书,比如国内的一些云厂商,国外的Let's Encrypt等。

XSwitch需要pem格式的TLS证书,如果你收到的证书不是pem格式的,可以转换成pem格式的,以GoDaddy的证书为例:

cat 客户提供的证书.pem chain.pem > fullchain.pemcat fullchain.pem 客户的私钥.pem > tls.pem

使用它替换掉XSwitch中的tls.pem即可。

注意:RFC 5922:https://www.rfc-editor.org/rfc/rfc5922.html#section-7.2明确规定SIP协议必须不支持泛域名证书。所以,请不要使用泛域名证书。

本文的内容同样适用于FreeSWITCH。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeSWITCH中文社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档