浏览器拨打电话 nginx代理wss (mod_cti基于FreeSWITCH)

发布于:2025-06-15 ⋅ 阅读:(14) ⋅ 点赞:(0)


前言

现在的浏览器都已支持webrtc,浏览器可通过webrtc直接注册sip账户到FreeSWITCH,进入实现实现拨打和接听电话。但是从安全角度来看,FreeSWITCH配置SSL证书的步骤有些复杂。如果使用nginx代理wss的方式,就可以跳过一些步骤,实现更加便捷。


关于我们

小何:18270073585 (VX同号)


nginx配置

  1. 修改/etc/nginx/nginx.conf配置文件:
server {
        listen       443 ssl http2;
        server_name  _;
        root         /usr/share/nginx/html;
        
        //nginx配置SSL证书的地方。
        ssl_certificate "/etc/pki/nginx/www.ddcti.com.crt";
        ssl_certificate_key "/etc/pki/nginx/www.ddcti.com.key";


        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  10m;
        ssl_ciphers HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
        
        //wss转发的配置
        location ^~ /sip {
            proxy_pass http://192.168.31.213:8000/;     //这里的IP修改成服务器的内网IP,端口与中间件配置的ws端口一致。
            proxy_http_version 1.1;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_read_timeout 60s;

            proxy_set_header Upgrade websocket;
            proxy_set_header Connection Upgrade;
        }
    }
  1. 检查配置文件的格式是否正确,SSH控制台执行命令:nginx -t
    如果输出结果如以下所示,说明文件的格式没有问题:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

中间件修改

acl.conf配置文件修改

CCAdmin-Web->呼叫中心->配置文件设置->找到acl.conf配置文件->新增以下配置:

        <list name="mylan" default="deny">
        </list>

在这里插入图片描述

sip配置修改

  1. CCAdmin-Web->呼叫中心->SIP设置->找到internal配置->按要求修改以下参数:

    • local-network-acl:修改成mylan。
    • ws-binding:内网IP:ws端口。例:192.168.31.213:8000,ws端口与nginx中的转发配置的端口一致。
      在这里插入图片描述
  2. CCAdmin-Web->运维调试->FS终端->执行命令:reload mod_sofia,使sip配置生效。

分机注册

浏览器访问地址:https://www.ddrj.com/jssip/index.html,开始注册分机:

  • 用户名:分机号。
  • 密码:分机密码。
  • WSS:域名/sip。(注意:这里的域名后面需要带sip路径)
    在这里插入图片描述

网站公告

今日签到

点亮在社区的每一天
去签到