Vicidial Install

How to Install SSL Certificate in ViciDial (HTTPS Access)

February 9, 2026
SSL Certificate ViciDial
How to Install SSL Certificate in ViciDial (HTTPS Access)

Why HTTPS Is Mandatory for VICIdial & VICIphone

Modern VICIdial deployments cannot function reliably on plain HTTP anymore. HTTPS is a technical requirement for browser compatibility, WebRTC (VICIphone), and user trust.

Related guides: ViciDial mobile setup & security troubleshooting | reset ViciDial admin password | ViciDial server requirements

Why Modern Browsers Block HTTP Dialers

All major browsers flag HTTP sites as insecure, causing WebRTC permissions to be blocked, microphone access failures, and VICIphone initialization errors.

Why Self-Signed Certificates Fail

VICIphone requires a valid CA-signed certificate (Let's Encrypt via Certbot). Self-signed certificates break WebRTC security validation.

Prerequisites Before Installing SSL

Prerequisites
Prerequisites Before Installing SSL

Fully Qualified Domain Name (FQDN) Is Mandatory — SSL cannot be issued for a raw IP address. Required ports: 80 (HTTP validation), 443 (HTTPS), 8089 (WebRTC/WSS).

ViciBox Automated SSL Setup (Recommended)

On ViciBox, use vicibox-ssl or vicibox-certbot wizard. Enable SSL flags: a2enflag SSL then systemctl restart httpd.

Manual SSL Setup for Scratch Install (CentOS)

Install Certbot: yum install certbot. Stop Apache, generate certificate: certbot certonly --standalone -d yourdomain.com. Configure Apache SSL VirtualHost with paths: /etc/letsencrypt/live/yourdomain.com/fullchain.pem and privkey.pem.

ACMEv1 End-of-Life Risk (Critical Expert Gap)

Let's Encrypt retired ACMEv1. Old Certbot clients can no longer renew certificates. Upgrade Certbot or use ViciBox automation tools.

Asterisk & WebRTC Secure Integration (VICIphone Core)

Asterisk WebRTC
Asterisk WebRTC Integration

Secure WebSockets (WSS) mandatory. Configure Asterisk http.conf TLS certificate paths and rtp.conf dtlscertfile. Ensure STUN server is functional. Port 8089 must be open.

Additional resources: install ViciDial on OpenSUSE | ViciDial on Ubuntu | install ViciDial on Cloud

Fixing Common VICIphone Errors After SSL

“Number Not in Service” — Fix: Set dialRegExten = 0.
ssl_error_rx_record_too_long — Enable SSL flag: a2enflag SSL and restart Apache.
No audio / one-way audio — Verify DTLS certificate path and STUN reachability.
Expired SSL — Automate renewal with Certbot cron job.

More help: create ViciDial campaign | ViciDial log into 2 campaigns

Updating Call Recording Links to HTTPS

Add --HTTPS flag to AST_CRON_audio_2_compress.pl script and update crontab entries.

Automating Let's Encrypt Renewals

Auto Renewal
Automating Renewals

Set up cron job: 0 3 * * * certbot renew --quiet --post-hook "systemctl restart httpd".

Verification & Diagnostics

  • Browser Test: No security warnings, certificate trusted.
  • Apache SSL: systemctl restart httpd, port 443 active.
  • Asterisk TLS: asterisk -rx "http show status"
  • WSS Operation: Browser dev tools show wss:// connections.
  • DTLS Validation: Two-way audio confirms DTLS works.

FAQs

How long to see results? 30–90 days.
Need a big budget? No, focus on planning.
How to track success? Monitor KPIs like engagement and conversions.
What if strategies don't work? Analyze and optimize.
How often to review? Weekly progress, monthly deep updates.

Security Best Practices

Always use trusted CA certificates, enforce WSS, monitor renewal logs, restrict firewall to minimal ports (80,443,8089), protect recording directories with HTTPS.

Final Recommendations

Implement core improvements, create a 30-60-90 day roadmap, assign responsibilities, monitor weekly.

Talk to us