SECURITY

Built for always-on production

JWT authentication, rate limiting, SIP digest auth, encrypted WebSocket connections, and role-based access control. The infrastructure runs 24/7 with zero planned downtime.

Sign Up Free

Voice networks are targets

An always-on voice network connected to hundreds of SIP phones is a prime target for toll fraud, unauthorized access, and abuse. Security can't be bolted on later. It has to be the foundation.

How It Works

  1. SIP digest authentication. Every phone must authenticate with FreeSWITCH using SIP digest auth before joining a room. Unauthorized User-Agents get silently rejected.
  2. JWT token auth. The web client uses JWT access tokens (15-minute expiry) with refresh tokens (7-day expiry). Tokens rotate automatically.
  3. Rate limiting & lockout. Login attempts are capped at 5 per 15 minutes per IP. After 5 failures, the account locks for 15 minutes.
  4. Encrypted transport. All web traffic runs over HTTPS/TLS. SIP signaling uses WSS (WebSocket Secure). Nothing goes over plaintext.

Key Benefits

Real-world: blocking a toll fraud attempt

An unknown SIP User-Agent tries to register with the FreeSWITCH server. The directory endpoint checks the UA string, finds it's not a Yealink or web client, and returns a 403. The admin sees the blocked attempt in the SIP logs and adds the UA to the blocklist. The attacker never reaches the conference.

Keep Exploring

Frequently Asked Questions

Is call audio encrypted?

SIP signaling is encrypted via WSS. The audio stream uses SRTP when the endpoint supports it. All web traffic goes over HTTPS.

Can unauthorized phones connect to the network?

No. The FreeSWITCH directory endpoint validates every registration against the account database and checks the SIP User-Agent. Unknown devices get rejected.

How are admin accounts secured?

Bcrypt-hashed passwords, JWT tokens with short expiry, refresh token rotation, and rate-limited login with account lockout after failed attempts.

Is there an audit log?

Yes. Every event worth tracking (joins, leaves, mutes, unmutes, broadcasts, direct calls, room changes, admin actions) gets logged with timestamps.

What happens during a server restart?

The server shuts down gracefully: active calls receive a BYE signal, recordings are saved, and the process exits clean. Phones reconnect on their own when the server comes back.