Course Content - Basic
Welcome to the online training series from 3CX. This module will concentrate on the installation of 3CX.
To begin with, we will be going through the prerequisites of the system and the network. We will also discuss the general concepts of how the FQDNs and Certificates work, and walk you through the installation of 3CX by going through the Web Based Setup Wizard.
3CX can be installed on either a Windows or Linux Operating System. The supported Windows versions are Windows 10, or if you prefer a Windows Server Operating System, anything newer than Microsoft Server 2012. If you want to install 3CX on Linux, you can do so on an existing Debian 9 Stretch installation, or you can use the 3CX ISO. Bear in mind that all these Operating Systems must be of a 64-bit architecture. 3CX Cannot be installed on a 32 bit operating system.
If you decide to use a Windows Operating System, you must make sure that all Windows Updates have been installed, prior to starting the installation process. .NET 4.6.1 or higher must also be installed on the system, along with all its updates, as it is crucial for the smooth operation of the PBX.
With 3CX’s New and Modern interface, a compatible browser is required. 3CX is entirely configured using a web browser. This can either be Google Chrome, Mozilla Firefox or Microsoft Edge. Avoid using Microsoft’s Internet Explorer.
The system which you are going to be installing 3CX on, must be as free as possible of any 3rd party applications. Applications that have been known to interfere with 3CX when installed on the same machine are, Microsoft Exchange, MS SQL, DNS Server software or roles, and VPN software or adapters. As most of these packages or services exist on the network, prior to the deployment of 3CX, we recommend that 3CX is installed on a fresh, dedicated machine.
Anti-Virus software packages have also been known to sometimes cause issues, so if you do have one installed, make sure you have added the necessary exceptions in its settings. That means excluding the 3CX data folders. Also, make sure that the HTTP and HTTPS ports are excluded from network traffic scans.
When installing on a Linux Operating System, the installation process automatically installs all necessary updates, so no extra steps are required. The only requirement is that no other software is installed. It must dedicated for use by 3CX.
If you decide to install 3CX in a Virtualized environment, not all Hypervisor Platforms may be up to the task. For this reason, we advise that you use one of the platforms which we have tested.
These will provide you with a trouble-free experience and the maximum level of support from the 3CX Support Team, should any issue occur.
The Virtualization platforms that have been tested are Microsoft Hyper-V, VMWare ESXi, KVM and Citrix XenServer.
Installing the Linux edition is easy with the 3CX ISO. This can be used for a local, bare metal machine, or a local Hypervisor.
For Hosted Platforms, the ones that have been tested are Openstack with KVM - many data centres use this infrastructure including OVH, Amazon AWS with EC2 machines, Amazon Lighsail and Google Cloud Engine. Microsoft’s Azure platform is the latest addition to the supported hosting providers. These can be deployed using the 3CX PBX Express wizard, which will allow you with a very simple wizard, to deploy your PBX, hassle free.
For other cloud hosting providers, you can use the apt-get command to install 3CX on a Debian 9 installation.
So, what are the hardware requirements? Hardware specifications primarily depend on the deployment size. You can find our suggested requirements at the link shown in the slide, or by performing a search on our website. These specifications can be for either a Bare Metal, standalone machine, or within a virtualized environment locally or in the cloud.
Let’s go into this a little further.
If, for example, you intend on recording the calls on your system, the size of the Hard Disk is crucial. Also, because recordings are written to the disk on the fly, you must ensure that the Hard Disk’s Read/Write speeds can cover your call recording needs.
The more extensions configured and provisioned on your PBX, the more memory will be required for the BLF updating and presence information to be relayed.
Finally, the audio of calls to and from VoIP Providers passes through the 3CX PBX. Depending on the amount of concurrent active calls you predict you will have, you may need to adjust the RAM size of your server. For this you can use the minimum system requirements as a reference.
The network requirements of 3CX are simple. Connect the 3CX Server to the network using a wired connection. Also, if you intend to use the installation as an on-premise setup, meaning that the users and the 3CX server will be on the same LAN, then the IP addresses that this LAN uses must be in a private range as defined by RFC 1918.
Using an RFC compliant addressing scheme internally allows access to the PBX via the IP Address, and not the FQDN of the PBX as well as provisioning via HTTP locally, rather than HTTPS.
3CX can be installed on a server with multiple Network Cards and can be configured to use them, however, it is recommended not to overcomplicate the network configuration of the server, if it is not necessary. In this module we are going to talk about how to install on a server with only 1 Network Card. This means that it must only have 1 IP address assigned to it, and you must disable all other unused Network Adapters. Just having them unplugged, or showing as “Not Connected” will not suffice.
Having an IP PBX like 3CX probably means that you are going to be using VoIP Providers for calls, and most likely you are also going to have Remote Extensions. We cover remote extensions in the Remote Extension Modules
This means that in order for this communication to be possible, there will be some traffic traversing the firewall that sits between 3CX and the Internet. For this reason, having access to and configuring this firewall is required.
Another requirement 3CX has, is that it must have constant and unfiltered access to the Internet. This means that any traffic 3CX sends to the 3cx.com and 3cx.net domains must not pass through a HTTPS Proxy, and the Firewall must not perform Deep Packet Inspection, at least for traffic to these specific domains.
Failing to do this may result in problems related to activating your License Key, downloading Updates and accessing 3CX WebMeeting.
Also, having a Public Static IP, although not mandatory in V15.5, is something to consider as this provides stability for all External Communications.
During the installation of 3CX, you will be asked to provide a License Key. 3CX currently offers 3 types of License Keys. These are:
The Standard Edition has no limitation on the amount of VoIP Providers, Gateways and Bridges you can create. You can make use of most of the features 3CX has to offer, however, there are some limitations. For example, in Queues, you will only have 3 Polling Strategies, Basic reports, and you will not be able to to use the CRM integration. A 3CX FQDN, SSL certificate, and SMTP Server will also need to be used.
The Pro Edition has all the features unlocked.
The Enterprise Edition is similar to the Pro Edition, but will also allow your license to be activated on another server at the same time, thus opening the opportunity for Failover solutions and scenarios. The Enterprise license also enables some more advanced features, which will benefit a corporate admin, giving them access to phone customisation as well as increased control of call recordings.
For a more detailed comparison of the features each key has, you can go to our feature comparison page, at the link shown on screen.
If you don't already have one, you can get a Standard Edition Annual License key with 16SC FREE for a year, by filling in the form found in the link during the installation process. Having a License Key before beginning the installation process is important, as it is one of the first things the installer will be asking for.
3CX requires an FQDN in order to be set up. Using an FQDN makes connecting remote 3CX Apps seamless. It's also more secure, since you can now enforce all remote connections to be via HTTPS using SSL certificates.
Fortunately 3CX handles all of this for you. 3CX will set up an FQDN for you with the subdomain of your choice, and will also create and automatically configure Let’s Encrypt SSL certificates for it.
This will provide secure connections for all Browsers and Remote IP Phones connecting to your server, over the Internet.
For more information concerning SSL certificates, and their use with 3CX, use the link on screen now, to go to our guide on how to use SSL certificates.
Earlier in this module, we mentioned that having a Static Public IP address is recommended. It is possible to have a Dynamic IP, but when your IP changes, you will experience some downtime on your PBX, for any calls to and from outside numbers or remote Apps. This is due to the time it takes for the new IP to become known to the outside world. This process is called DNS propagation. This is why we only recommend using a Dynamic IP for testing purposes.
If you are using a Dynamic IP, be sure to use a 3CX supplied FQDN, as 3CX will automatically update your FQDN when it detects a new Public IP Address. 3CX will also keep your SSL certificate and FQDN active, as long as a maintenance agreement is active on a perpetual license key, or an annual key is kept current.
In this module we will use a 3CX FQDN. This is an easy and reliable choice, and requires the least amount of configuration. You will be asked for your choice of subdomain, as well as your preferred domain. You can choose amongst various 3CX Top Level Domains, which are separated into different regions. If the hostname is available, the installation wizard will automatically create all the necessary DNS entries, assign the FQDN to the license key, generate an SSL Certificate, download it, and apply it to the installation.
At some point, the installer will also ask you which HTTP and HTTPS ports you want to use. Although the default values are 5000 and 5001, you can also choose 80 and 443 instead, as we are using the versatile NGINX Web Server for 3CX. This is assuming, of course, that no other application is using these ports, such as IIS.
In addition to the Web server ports, you will also be asked to choose the SIP and Tunnel ports of the PBX.
These ports can only be configured during the installation of the PBX, and you will no longer be restricted to port 5060 as the SIP port in order to utilise the plug and play method of provisioning phones in 3CX.
If you choose to use an Internal FQDN, before starting the installation process create an A Record on your Local DNS Server. This must point to the LAN IP Address of the 3CX Server. Then go through the PBXconfigTool until you get prompted with the option of whether you want to use your own managed DNS. At this point, use the option to enter your Local FQDN.
If you do not want to use an Internal FQDN, just use the “Local IP” option.
Contrary to the External FQDN, which is mandatory, having an Internal FQDN is not always required, and instead, you can use the Private IP address of the 3CX Server. You will, however, need an Internal FQDN if you want to have a Split DNS configuration, or configure a Failover solution. In this case you will have to provide your own Certificate during installation, and you must use a Static Public IP address, as well as a Local DNS and DHCP Server which you can configure.
Next, you must choose the Extension Digit Length of the PBX. This is a very important decision to make, as this is something that can never be changed unless you reinstall and configure the system from scratch. A backup and restore, will restore the previous extension digit length.
Next, you will be asked to enter an email address, to which the system will send important notifications like system update information, backup and restore progress, various system warnings, and informational notifications.
Also, you will be asked to fill in the SMTP Server information, which 3CX will use to dispatch emails. The System will use this SMTP server to send Reports, Welcome Emails, Faxes, Voicemails and Notification Emails, in addition to the emails mentioned earlier.
There is now the option to use a 3CX built in SMTP server configuration, which doesn’t require any extra configuration from the admin. This is particularly helpful if you do not have an online email account or your own SMTP server to use.
Next, you will be prompted to enter the Default Time Zone that your desk phones are going to be using. This will not affect the Reports and the Time Scheduling automation, as this uses the System Time. However with the Linux version, the system time will also be set at an Operating System level, making it a lot easier to manage the server time. With the Windows edition, this will still need to be set manually.
You will also have to choose the country the installation is going to be operating in. This will then allow calls to be made to numbers in that country, in an E164 format. The Voicemail Number is also set, according to the country. The default voicemail number of 3CX is 999, but if a country uses this number as an Emergency Number, the voicemail number will be set to 666. This is the case, for example, in the United Kingdom.
Finally, the last step is the license activation of 3CX. If the key is new and hasn't been registered before, the license details will be requested at this stage. If you are a Reseller, in the Reseller ID field enter your 6 digit Partner ID so that you can get credited with the revenue of this installation instantly. If the information is already present, the PBX will automatically activate.
After the license registration, you will now be able to login and access the Management Console and you are now ready to start using your new 3CX V15.5 installation.
Thank you, and goodbye!