How to Install VICIdial on Ubuntu 24.04 (Scratch Install Guide, 2026)
A full VICIdial scratch install on Ubuntu 24.04 — every stage explained, what breaks on Ubuntu 24.04, and the one-command route that does it in about four minutes.
Installing VICIdial from scratch on Ubuntu 24.04 means building the whole stack yourself — Asterisk, the database, the web server, PHP, VICIdial's Perl daemons and its schema — instead of booting the ViciBox ISO. You get the Ubuntu 24.04 release you want on the hardware you want, and a stack you understand because you built it. The cost is that you do every step by hand, and a first attempt usually runs long because of small version and repository mismatches you only find when something refuses to dial.
This guide walks the whole thing on Ubuntu 24.04 LTS (Noble Numbat): what you are actually installing, the requirements, each stage in order, the parts that are particular to Ubuntu 24.04, and what usually breaks. It is current for 2026 — VICIdial r4035 on PHP 8.3 (or r4032 if you choose PHP 7.4), on Asterisk 22. If you would rather not do it by hand, there is a one-command route at the top and bottom that does exactly this and takes about four minutes.
What a VICIdial scratch install actually installs
VICIdial is not one program. It is a stack that has to line up, and a scratch install means assembling all of it:
- Asterisk — the telephony engine that places and bridges calls. VICIdial 2.14 runs on Asterisk 22, which is PJSIP-only (chan_sip is gone), so browser phones connect over WSS and conferences use ConfBridge.
- MariaDB — the database that holds leads, campaigns, agents and every call record. On Ubuntu 24.04 that is MariaDB 10.11.
- Apache and PHP — the admin and agent web interfaces. On Ubuntu 24.04 the installer runs Apache with mod_php.
- VICIdial itself — checked out from the project's SVN, installed by its own install.pl, with a crontab and a handful of Perl daemons (the keepalive, the dialer, the AMI listeners) that run inside screen.
- The glue — a firewall, a TLS certificate, the time zone set everywhere VICIdial looks, and the dialplan wired up. This is the part the VICIdial documentation leaves to you, and the part that eats the most time.
What you need before you start
A VICIdial scratch install on Ubuntu 24.04 needs:
- A clean, fresh server. A minimal Ubuntu 24.04 LTS (Noble Numbat) install, x86_64, with nothing else on it. The installer and most guides refuse a box that already has VICIdial or a conflicting LAMP stack.
- CPU, memory and disk. Two cores and 2 GB of RAM is enough to try it; a real floor wants 4+ cores and 8 GB or more, and about 40 GB of disk. Recordings grow fast, so size the disk for how long you keep audio.
- A public IPv4 address. VICIdial ties its configuration to the server's IP. Behind NAT you forward UDP 5060 and 10000–20000 and TCP 80, 443 and 8089.
- A domain name (recommended). Point an A record at the server before you start, and open port 80 — the certificate check uses it. Browser phones need a trusted certificate, so a domain saves you a lot of pain later.
The scratch install, stage by stage on Ubuntu 24.04
Here is the shape of the work, in the order it has to happen. Each stage depends on the one before it, which is why a single wrong version early on surfaces as a confusing failure three stages later.
1. Repositories and base packages
Everything comes from Ubuntu 24.04 itself; the installer adds no third-party PHP repository on this release. With the repositories in place you install the base packages: apt's build tools, Perl and the long list of Perl modules VICIdial's scripts load, sox, lame, mpg123, screen, and the database and web packages.
DBD::mysql, Net::Server and Spreadsheet::ParseExcel; miss one and a daemon dies mid-shift with a "Can’t locate Foo.pm" that is easy to overlook until an agent cannot log in.2. MariaDB
Install and start MariaDB 10.11, secure it, and size it to the server — the key buffer, the InnoDB pool, the connection limit and the time zone all matter under load. VICIdial's stock tables are MyISAM; busy floors move the eight busiest log and lead tables to InnoDB to get off table locks.
3. Asterisk 22
This is the long part by hand. You fetch the Asterisk 22.5.1 source, apply the security fixes the 22 branch has had since, configure it with the right modules (PJSIP, ConfBridge, Opus for browser phones, G.729 via asterisk-g72x and Bcg729), and compile. On a 4-core server the compile alone is several minutes, and getting the module selection wrong means rebuilding.
4. VICIdial from SVN
Check out VICIdial at a known revision from its SVN, load its schema and its first-server seed into MariaDB, then run its install.pl, which writes /etc/astguiclient.conf, lays down the web code and sets up the crontab. The seed carries a placeholder IP you have to replace with the real one across roughly seventeen tables, and sample passwords you have to replace everywhere.
5. Dialplan, phones and the config files
Asterisk 22 dropped app_meetme, so the stock VICIdial dialplan’s MeetMe conference rooms have to be pointed at ConfBridge with the right profiles. You set the server’s conf_engine to CONFBRIDGE, switch the sample phones to PJSIP, and add a WebRTC phone template so browser phones register over WSS on port 8089.
6. The certificate and the firewall
Get a TLS certificate for your domain (Let's Encrypt, with ZeroSSL as a fallback), point Apache, the WebRTC socket and VICIdial at it, and set up renewal. Then a default-deny firewall: on Ubuntu 24.04 that is ufw with ipset, with your carrier's signalling address on the allow list and SIP closed to everyone else.
7. Start, and check it actually works
Start Asterisk and VICIdial’s daemons, confirm the keepalive has them all running in screen, log into the admin page as user 6666, register a browser phone, and place a test call into a conference. Only now do you know the stack lines up.
What usually breaks on Ubuntu 24.04
procps 4 breaks VICIdial’s process checks
This is the one that catches people on 24.04. Ubuntu 24.04 ships procps 4, whose ps truncates its output to about 35 characters regardless of terminal width. VICIdial's keepalive and three of its daemons find their running processes by name with ps -o "%p %a"; truncated, they never see the names. The keepalive then starts a duplicate screen every minute, and AST_manager_send and AST_VDremote_agents decide their listener is dead and exit. The fix is to switch those process checks to ps -o pid,args, which gives the full command at any width.
AppArmor gets in the way
VICIdial's Perl daemons, its AGI scripts and its web code write all over /etc/asterisk, /var/lib/asterisk and /var/spool/asterisk, and Asterisk runs inside screen. A confining AppArmor profile breaks them in ways that are hard to diagnose. VICIdial's own Ubuntu instructions remove AppArmor for this reason, and so does the installer.
Why most VICIdial install guides for Ubuntu 24.04 lead you wrong
If you search for this, most of what comes back was written for CentOS 7 and Asterisk 11, 13 or 16. The package names, the repositories and the Asterisk build options in those guides no longer match Ubuntu 24.04 or Asterisk 22, so following them step by step gets you a server that compiles but will not dial, or a PHP that is too old for the admin pages. The three things that have changed most since those guides were written: Asterisk is PJSIP-only now (no chan_sip), app_meetme is gone (ConfBridge replaces it), and PHP moved from 7 to 8. Any guide that still tells you to enable chan_sip or build DAHDI for a softphone-only install is out of date.
How many agents does one server handle?
A single all-in-one scratch install, sized sensibly, comfortably runs a small-to-mid floor — think 10 to 40 agents depending on how hard you dial and how much recording and reporting you do. Predictive dialing at a high ratio, call recording on every call, and heavy real-time reporting all cost database and CPU, so the honest number is "measure it". Past roughly that size you split the roles — a database and web server, separate Asterisk dialers, and a standby database — which is a cluster, not a single scratch install. For one box, give it 4+ real cores and 8–16 GB of RAM and watch MariaDB under load.
Plan for recordings and disk before you fill it up
Call recordings are the thing that quietly fills a VICIdial server. Stereo recording and long talk times add up fast, and when the disk fills, Asterisk and MariaDB both misbehave in confusing ways. Decide up front how long you keep audio, put recordings where you can grow or offload them, and keep an eye on the partition. This is a sizing decision, not an afterthought — it is much easier to make before the first campaign than during one.
The one-command route
Every step above is mechanical, which is exactly the kind of thing worth automating. Our installer does the whole scratch install on Ubuntu 24.04 in one command, and it handles each of the gotchas above by itself. You get a free install key (confirm your email), then run:
curl -fsSL https://downloads.vicifast.com/vicidial-installer/install.sh | sudo bash -s -- --key YOUR-INSTALL-KEY --domain dialer.example.comIt installs VICIdial r4035 on PHP 8.3 (or r4032 if you choose PHP 7.4), patched Asterisk 22 (prebuilt and checksum-verified, so no waiting on a compile), your domain with a certificate that renews itself, a firewall, and — by default — a campaign with fronters and closers who can log in straight away. It took 4 minutes 24 seconds on a 4-core server. The full option list and the other systems are on the VICIdial scratch install page.
Installing on a different system?
The same scratch install, with the version and repository differences for each system, is covered in the Ubuntu 22.04 guide and the Debian 12 guide. For the whole picture and the one-command route on every system, start at the VICIdial scratch install page.
What is left after the install
A finished scratch install is a working dialer with no way to make a call yet. Three things turn it into a running operation: a carrier (a SIP trunk from a VoIP provider, added under Admin › Carriers and allowed through the firewall), your leads (loaded into a list on a campaign), and a phone number pointed at an in-group if you take inbound calls. If you used our installer with its initial setup, the campaign, the in-group and the agents already exist, so you are down to the carrier and the leads. Either way, that is the point where you stop being a sysadmin and start being a dialer operator.
Frequently asked questions
Can you install VICIdial on Ubuntu 24.04?
Yes. Ubuntu 24.04 runs current VICIdial well: PHP 8.3, MariaDB 10.11, and Asterisk 22. You can build it by hand following this guide, or use our installer to do the whole scratch install in one command in about four minutes.
How long does a VICIdial scratch install take on Ubuntu 24.04?
By hand, a first install is a multi-hour job, mostly the Asterisk compile and tracking down missing Perl modules and repository mismatches. With our installer and the prebuilt Asterisk it took 4 minutes 24 seconds on a 4-core server.
Which Asterisk and VICIdial versions does this use?
Asterisk 22.5.1 with the security fixes the 22 branch has had, PJSIP only, and VICIdial r4035 from its official SVN (or r4032 if you choose PHP 7.4).
Should I build from scratch or use the ViciBox ISO?
ViciBox is VICIdial's own installer image, built on openSUSE — you boot it and it installs the whole server. A scratch install runs on the Ubuntu 24.04 your provider already offers, on any cloud or dedicated server, and gives you control over the release and layout. Our installer makes the scratch route one command on Asterisk 22.
Related from VICIfast
- Provisioning a VICIdial server in 40 secondsMeasured on every server we build, and published.
- Spin up a trial dialerA working server and admin URL, no sales call.
- VICIdial Without the Ops - 18 chapters, freeArchitecture, sizing, storage and cost. No email wall on the contents.
- Enterprise optionsCustom regions, procurement paperwork, and volume terms.
About VICIfast
We run VICIdial servers for call centres, so you don’t have to. You get the dialer set up, secured and kept running — we handle the server, the updates and the backups. Bring your own phone carrier at no markup, or use VICIfast Voice, our own US calling and numbers, from $0.0085 a minute. From $49 a month per server.
Questions? Call +1 636 556 0022 and talk to someone who runs dialers.
Citing this article
VICIfast Engineering. “How to Install VICIdial on Ubuntu 24.04 (Scratch Install Guide, 2026)”. VICIfast LLC, November 3, 2026. Retrieved from https://vicifast.com/blog/install-vicidial-ubuntu-24-04
Have questions?
You might be interested in
Guides & tutorials
How to Install VICIdial on AlmaLinux 9 (Scratch Install Guide, 2026)
Guides & tutorials
How to Install VICIdial on Rocky Linux 9 (Scratch Install Guide, 2026)
Guides & tutorials
How to Install VICIdial on Debian 12 (Scratch Install Guide, 2026)
Guides & tutorials
How to Install VICIdial on Ubuntu 22.04 (Scratch Install Guide, 2026)
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read - concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet - be the first.