Deploying a Virtual PBX Configuration to a Customer
On this topic
Once you have installed an instance of 3CX Phone System and configured it correctly, you are now ready to configure IP Phones and deploy the PBX configuration to your customer. To do this:
- Step 1: Decide which method to use to configure the phones
- Step 2: Retrieve the Provisioning URL and Enter it into the phones
- Step 3: Deploy the IP Phones & optional SBC
- Step 4: Configure the client side firewall accordingly
Step 1: Decide which method to use to configuring the phones
Deploying an SBC to minimize firewall issues and setup
You have two deployment options to choose from to configure your customers phone's.
Note: When using either option it's recommended that you enter the Provisioning URL into the IP Phones before you send them to your customer’s site. More information on how to do this below:
- For larger sites an SBC, installed at the customer’s site, is the best option as it will bundle all SIP traffic over a single TCP port which simplifies your deployment by reducing firewall configuration. In addition 3CX SBC will add stability & security and allow you to easily manage and provision your IP Phones remotely. The SBC connects with the 3CX Phone System Tunnel, establishes a virtual VPN and also adds a layer of security between the remote site and the hosted 3CX Phone System instance by encrypting all traffic. The SBC requires you to have a Windows Computer (non dedicated) or a Raspberry PI with the SBC installed and always on.
- For smaller networks using the Stun Provisioning method will not require an SBC but may require you to open and forward each of the extensions ports in your Firewall/Router. As described below in the Firewall Section.
Step 2: Retrieving the Provisioning URL and Entering it into your IP Phones
There are three ways in which to retrieve the Provisioning URL.
- From the welcome email sent to you when you create an instance.
- Within the Status Tab of your instances Management Console, when you first login.
- From the “System Status” node > “Phone provisioning” tab.
The URL is generated by 3CX Phone System automatically when you create an instance, using the format: “InstanceName”.“CompanyFQDN”/provisioning/SecureString.
For example, if you name your instance: “interorbit”, and you enter a FQDN (domain name) of: “sip.interobit.com”, then your provisioning URL for this instance will be: “http://interobit.sip.interobit.com//provisioning/cbt9u8ztma”. The Secure String, in this example (cbt9u8ztma), is a random number that will be generated for each instance.
Enter the Provisioning URL into your Phones
For instruction on how to enter the URL into the phone, see our configuration guides, on our SIP Phone Page, specifically for the make and model of your IP Phones.
Note: Only the make and models listed in Preferred / Recommended section, are fully supported for 3CX Phone System Virtual PBX deployment.
TIP: Take note of the MAC address of each phone and optionally label each phone before you ship them out to a customer. That way you will know which phones are where and you can assign the extension to the correct person remotely.
Step 3: Deploy the IP Phones
When Using 3CX Session Border Controller
3CX Session Border Controller is available for Windows or as a Raspberry Pi Linux Debian Version. If the customer has an existing Windows Server or Desktop that is always on, you can choose to use the 3CX SBC for Windows. Alternatively, you can preload it on a dedicated Raspberry PI device.
- To configure SBC on Windows, see: Installing 3CX Session Border Controller for Windows
- To configure the SBC on Raspberry PI, see: Installing 3CX Session Border Controller for Raspberry Pi
When using IP Phones as a Remote Extension in STUN Mode
To provision the phones in STUN mode, you will rely on the phones ability to traverse the NAT and on the client side firewall / NAT device to correctly handle SIP traffic. Needless to say there might be occasions where there will be devices or phones that are not able to correctly connect to 3CX. Nonetheless for smaller remote sites STUN mode is still viable.
For the more information see our guide in the provisioning a remote extension in STUN Mode section of the “Provisioning a Remote Extension with 3CX Phone System” document.
Step 4: Configure the Client Side Firewall
In most cases you do not need to change any settings on the Client Side Firewall. In some cases you might need to disable SIP ALG. To do that, follow the guides of the Firewall Configuration Guides.
Deploying in STUN Mode
If you experience issues in STUN mode, you need to open each extensions port number and forward it to the specific IP Phone it relates to. To do this:
- Login to the 3CX Management Console for the Instance.
- Select the “Extensions” node > click the extension that you would like to find the port number for and click “Edit Extension”.
- Switch to the “Phone Provisioning” tab. The Local SIP Port of Phone will display the port that you need to open.
- In your customer’s Firewall/Router/NAT Device, Port forward the SIP port number to the IP Phone it relates to.