The Distro Conversion tool allows you to take any FreePBX based system that is running version 2.9 or higher (up to, and including 14!) and migrate all the PBX settings to a new system. This is a flexible (and read-only on the source, or 'Donor' machine) tool, and allows you to migrate such systems such as Elastix, PBXinaFlash or any other FreePBX based system including FreePBX Distro systems and manually installed systems on unsupported operating systems. As this is a read-only tool, it can be run against the Donor machine without any fear of outages or issues on the production machine.
How it works
- You will need to install a fresh FreePBX Distro 7 machine as outlined here.
- Optionally you can look at purchasing a hosted FreePBX machine at freepbxhosting.com. We have a special promo of HOME2FREEPBX that will give you a Free 30 day trial.
- Activate your new PBX as outlined here.
- Run the conversion script on your NEW FreePBX Distro machine by running the command
curl -s| bash
- That will attempt to request a slot in the conversion queue. When successful, it will present you with a long string of letters and numbers, that look like
- When you have a conversion slot, you can now run the same command script (
curl -s) on the existing 'DONOR' machine and enter the Slot Reservation ID that was reserved on the NEW machine. | bash
- The converter will then extract the required data from the DONOR machine and load it into the NEW machine. Nothing will be changed on the DONOR machine! This is a READ ONLY process on the donor, and does not require an outage.
- The script will attempt to automatically copy the customizations from the DONOR machine to the NEW machine. This includes custom sound files and any provisioning information.
- Note that any TRUNKS will be set to 'disabled' on the NEW machine! This is to make sure that you don't accidentally have the NEW machine register to a SIP provider!
What Data will come over
- Since both Elastix and PIAF are based on some versions of FreePBX we will only be bringing over the PBX related settings such as
- Ring Groups
- And anything else you setup related to the PBX that is part of normal FreePBX
- We will bring over all sound files including
- Custom MoH
- Voicemail Greetings
- System Recordings
What Data will NOT come over
- Call History (CDRs and CEL Databases)
- If you want to bring this data over, you can export it using 'mysqldump' or similar. As these database can be EXTREMELY large, it is left up to you, the user, to do this.
- User Fax Configuration.
- Faxing has changed dramatically since the older versions of FreePBX that were historically used with Elastix and PIAF, and is now mainly done through the User Manager module. You will need to reconfigure the users with fax email addresses, if they receive faxes.
- Any 'custom' configuration files.
- This means anything that has been modified by the system administrator in the *_custom.conf files, such as /etc/asterisk/extensions_custom.conf will not be migrated, as it is impossible to do that automatically.
- Settings made inside non FreePBX based modules. These include things like
- 3rd Party modules like phpmyadmin and webmin
- Elastix Call Center Module
- Queue Metrics
- Anything that is not a core FreePBX module on Elastix or PBXiaF (i.e. Digium Phones module)
- Network and Operating System level settings (including SipSettings configurations, such as external IP addresses)
Create a new machine
Create your new machine using the 64 bit Distro. The 32 bit distro is at End of Life, and will only have critical security vulnerabilities patched.
The conversion tool requires that the new machine is Activated. This is because a unique, cryptographically secure key, is generated during activation that is used to encrypt your data while it's in transit. We are unable to rely on SSL or TLS connections, as a large number of older machines do not have a valid SSL certificate, so it is impossible to protect against Man-In-The-Middle attacks, or someone 'sniffing' your data while it's in transit. Activation is free and easy.
Configure NAT and Firewall settings
FreePBX Distro has a built in, secure, firewall. As part of your first login, you will be presented with the Firewall Wizard, which will automatically configure your NAT and Firewall settings.
Reserve a conversion slot
After you've finished setup, and your machine is empty and ready to go, you can now attempt to reserve a conversion slot. This is done by running the conversion script, and pushing 'enter' when prompted for the reservation ID.
Export the data
You can now run the conversion script on the DONOR machine, This exports all the data that needs conversion to the conversion service, and creates a compressed, encrypted, archive of everything that can be moved across without modification
Depending on the age of the donor machine, it is possible that the curl command will fail due to the inability of the server to verify the TLS certificate. If running the following curl on the donor machine results in no activity at the bash prompt, try running again with TLS verification disabled like this:
When this is finished, it will be processed on the conversion service and, when complete, will be returned to the NEW server.
At this point, your NEW machine should now have all the settings, users, and configuration of the DONOR machine. You can now start testing it and moving users across when you're comfortable.