登录

安全与网络

Cliqer 的安全措施与网络配置,包括 WebRTC 技术。

Cliqer 使用 WebRTC(Web Real-Time Communication,网页实时通信),在演讲者的控制设备与运行演示软件的主机之间建立直连或中继通信通道。

Cliqer 中的 WebRTC 技术

Cliqer 通过浏览器原生的 RTCPeerConnection 使用 WebRTC,实现设备之间的实时通信。

Cliqer 使用的组件:

  • RTCPeerConnection:建立并管理主机与演讲者设备之间的连接。
  • RTCDataChannel:以低延迟发送控制信号(下一张幻灯片、上一张幻灯片、激光笔坐标)。
  • 信令:Cliqer 通过 wss://cliqer.io/ws 使用 WebSocket 信令,在建立 WebRTC 对等连接之前交换连接元数据。

安全性

  1. 加密通信:
    • 信令服务器安全:与 Cliqer 信令服务器的所有连接均使用 HTTPS/WSS(WebSocket Secure)。
    • WebRTC 加密:数据通道通过 DTLS(Datagram Transport Layer Security,数据报传输层安全协议) 进行加密保护。媒体流(如使用)通过 SRTP(Secure Real-time Transport Protocol,安全实时传输协议) 进行加密。
    • 控制信号在传输过程中经过加密。通过 WebRTC 时,信号在设备之间直接传输,或经由 TURN 中继转发;TURN 中继仅转发加密数据包,无法对其解密。如果两种连接均无法建立,我们的服务器会通过受 TLS 保护的 WebSocket 连接中继这些信号,且不会存储。
  2. 应用权限:

    Cliqer 需要用户明确授予辅助功能和自动化控制权限(系统设置 > 隐私与安全性)。

    • 辅助功能:用于向演示软件发送按键和鼠标事件。
    • 自动化:用于直接控制系统事件(System Events)和演示应用程序。
  3. 安全链接:演讲者链接通过加密算法生成,且仅对特定会话有效。请将这些链接视为敏感信息。
  4. 软件更新:请及时更新 Cliqer、操作系统和演示软件,以获取安全补丁。

网络与端口

  1. 互联网连接:主机和演讲者设备均需要稳定的互联网连接。
  2. 防火墙配置:
    • Cliqer 需要向信令服务器和 STUN/TURN 服务器发起出站连接。
    • Windows Defender 或第三方防火墙必须允许 Cliqer 访问网络。
  3. STUN/TURN 服务器:
    Cliqer 使用以下服务器进行 NAT 穿透。请允许发往这些主机的出站流量:
    角色URL端口协议用途
    STUNstun:stun.cloudflare.com3478UDP公网 IP 发现
    TURNturn:turn.cloudflare.com3478UDP/TCP中继回退
    TURNSturns:turn.cloudflare.com5349TLS/TCP安全中继回退
    TURNSturns:turn.cloudflare.com443TLS/TCP适用于仅开放 443 端口的受限网络的安全中继

    TURN 凭据按会话生成,TTL 为 24 小时,并自动轮换。
  4. 动态 UDP 端口:WebRTC 使用动态 UDP 端口交换数据。如果限制性防火墙阻止 UDP 流量,连接将被迫经由 TURN 服务器通过 TCP 建立。
  5. 无需入站端口转发:Cliqer 主动向信令服务器和中继服务器发起出站连接,无需配置任何入站端口转发。