3CX has released a preview version of V20. Currently 3CX has only released a preview ISO, today we will cover how to install the 3CX V20 version on Debian 12. This will be very helpful for cloud deployments.

We will introduce two types of installation:

  • Scripted installation
  • Command Line Installation


Scripted installation is exactly the same as the ISO provided by 3CX. However, it requires the cloud server to support remote access such as VNC.

A command line installation lacks the nftables configuration file compared to a scripted installation. The same can be achieved by opening ports in the security group of the cloud server.

Prepare

Before installing 3CX we need a Debian 12 operating system. It is a good idea to upgrade your system to the latest before proceeding with the installation:

apt update -y && apt upgrade -y

Cloud servers need to have the corresponding ports open in the security group: https://www.3cx.com/docs/manual/firewall-router-configuration/

Next, you can choose between a scripted installation or a command line installation.

Script

wget -O /tmp/post-install http://downloads-global.3cx.com/downloads/debian12iso/post-install_12.1.0_46a7ea2.txt; chmod +x /tmp/post-install; bash /tmp/post-install

Next enter the following command to install 3CX:

bash /usr/local/bin/post-install

The installation process selects the 3CX System

After the installation is complete the server will reboot. Next we need to access the server via a remote connection (VNC Remote), which can be configured by entering option 1 and opening port 5015 of the IP address.

CLI

Cloud servers with no way to VNC remotely can use this method(AWS Lightsail ..etc)

First install the dependencies:

apt install sudo wget gnupg2 dphys-swapfile

Verify the PGP Key

wget -O- https://repo.3cx.com/key.pub | gpg --dearmor | sudo tee /usr/share/keyrings/3cx-archive-keyring.gpg > /dev/null

Adding stable source

echo "deb [arch=amd64 by-hash=yes signed-by=/usr/share/keyrings/3cx-archive-keyring.gpg] http://repo.3cx.com/3cx bookworm main" | tee /etc/apt/sources.list.d/3cxpbx.list

Add beta mirror source (can be skipped)

echo "deb [arch=amd64 by-hash=yes signed-by=/usr/share/keyrings/3cx-archive-keyring.gpg] http://repo.3cx.com/3cx bookworm-testing main" | tee /etc/apt/sources.list.d/3cxpbx.list

update

apt update

install 3cx phone system

apt install 3cxpbx

Enter option 1 and open port 5015 of the server IP in your browser to access the configuration page.

If this page does not appear enter the following command:

/usr/sbin/3CXWizard --cleanup