Archive:FreePBX Distribution: Difference between revisions

From ThinkServer
Saved progress, major rework for FreePBX
→‎Configuring the FreePBX installation: Added time server setup, network configuration, password warning and completing the installation sections, made buttons to click bold.
Line 19: Line 19:
== Configuring the FreePBX installation ==
== Configuring the FreePBX installation ==


We will be using a dedicated computer with an empty hard drive. This guide will show you all the main options that need to be changed - there are other options if you wish to customise the installation but this is the bare minimum that I will be using to install the system.
We will be using a dedicated computer with an empty hard drive. This will be a custom installation so that we can configure the system before it is installed. This guide will show you all the main options that need to be changed - there are other options if you wish to customise the installation but this is what I will be using to install the system.


=== Setting the date, time and time zone ===
=== Setting the date, time and time zone ===


# Click 'DATE & TIME' to select the correct time zone and set the date & time.
# Click '''DATE & TIME''' to select the correct time zone and set the date & time.
# In the 'Region:' box, type or select 'Europe'.
# In the 'Region:' box, type or select 'Europe'.
# In the 'City:' box, change 'Amsterdam' by typing of selecting 'London'.
# In the 'City:' box, change 'Amsterdam' by typing of selecting 'London'.
# If you are already connected to a network, ensure that the 'Network Time' switch is 'On'. This is important as this server will be used to set the times on the phones and needs accurate time to function correctly.
# If you are already connected to a network, ensure that the 'Network Time' switch is 'On'. This is important as this server will be used to set the times on the phones and needs accurate time to function correctly.
# We will configure the time servers to use ones closer to us in the UK. Click the cog icon next to the 'On' switch.
# We will change the CentOS NTP servers to UK servers. Double click on each address and change the <code>centos</code> to <code>uk</code>. For example, change <code>0.centos.pool.ntp.org</code> to <code>0.uk.pool.ntp.org</code>. Do this for servers 0-3.
# We will add the main server IP address as a source too. This is typed in the box and then click '+'.
# Click 'OK'
# Click 'Done'
# Click 'Done'


=== Setting the keyboard layout ===
=== Setting the keyboard layout ===


# Click 'KEYBOARD'
# Click '''KEYBOARD'''.
# Click the '+' button to add a new keyboard layout. We must add the new keyboard layout before removing the one we don't want.
# Click the '+' button to add a new keyboard layout. We must add the new keyboard layout before removing the one we don't want.
# Type 'UK' in the search box.
# Type 'UK' in the search box.
Line 43: Line 47:
=== Setting language support ===
=== Setting language support ===


# Click 'LANGUAGE SUPPORT'
# Click '''LANGUAGE SUPPORT'''.
# Tick 'English (United Kingdom).
# Tick 'English (United Kingdom).
#* Unfortunately, we cannot unselect 'English (United States)'.
#* Unfortunately, we cannot unselect 'English (United States)'.
Line 52: Line 56:
As this is a new install, we will be configuring FreePBX to use the whole drive. We would like to use the BtrFS file system so this is slightly different to usual.
As this is a new install, we will be configuring FreePBX to use the whole drive. We would like to use the BtrFS file system so this is slightly different to usual.


# Click 'INSTALLATION DESTINATION'.
# Click '''INSTALLATION DESTINATION'''.
# Check that the hard drive we want to use has a tick on it.
# Check that the hard drive we want to use has a tick on it.
# Under 'Partitioning', select 'I will configure partitioning'.
# Under 'Partitioning', select 'I will configure partitioning'.
Line 66: Line 70:
I have no use for kdump so will be disabling it.
I have no use for kdump so will be disabling it.


# Click 'KDUMP'.
# Click '''KDUMP'''.
# Untick the 'Enable kdump' box.
# Untick the 'Enable kdump' box.
# Click 'Done'
=== Setting the network hostname ===
The rest of the network settings should be OK unless you have something custom to configure. We will just be changing the hostname.
# Click '''NETWORK AND HOSTNAME'''.
# In the hostname box, replace 'freepbx.sangoma.local' to the hostname of your network - in our case <code>asterisk.freddythechick.net</code>.
# Click 'Apply'
# Click 'Done'
# Click 'Done'


Line 80: Line 93:
The installation will start. While the installation continues, we need to set the root password. This will not stop the installation while you are setting this up but must be done before the installation is finished.
The installation will start. While the installation continues, we need to set the root password. This will not stop the installation while you are setting this up but must be done before the installation is finished.


# Click 'ROOT PASSWORD'.
# Click '''ROOT PASSWORD'''.
# Type a password for the root user in the 'Root Password:' box.
# Type a password for the root user in the 'Root Password:' box.
# Retype the password in the 'Confirm:' box.
# Retype the password in the 'Confirm:' box.
# Click 'Done'.
# Click 'Done'.


This will be an internet facing machine so it is '''HIGHLY RECOMMENDED''' to type a password that fills the strength bar so that it says '''Strong'''. Use a combination of uppercase letters, lowercase letters, numbers and symbols and make the password as long as you can possibly remember. Do not use common words that may be in the dictionary or names. If you do, you will be warned with a yellow bar at the bottom and will be asked to click 'Done' again. It is '''HIGHLY RECOMMENDED''' to use a different password if you are warned of this as you will be at risk of attack.
=== Completing the installation ===
You will now be back at the installation screen - grab a cup of coffee and wait for the installation to finish.
Once the installation is finished, it will say 'SangomaOS 7.8 is now successfully installed and ready to use! Go ahead and reboot to start using it!'. Click the 'Reboot' button and the machine will reboot to the FreePBX terminal.


== First time run of the web interface ==
== First time run of the web interface ==

Revision as of 17:43, 21 March 2021

FreeBPX Distribution is a fully fledged VoIP server allowing complete customisation to your needs and works with most setups. It is an appliance, with a complete Linux setup and web manager to allow easy administration.

We have implemented FreePBX 15 (SNG7-PBX-64bit-2011-5) and Asterisk 17. This is the latest version of Asterisk and is a LTS release so will be supported well into the future with fixes (slated to be supported until 2024). This is a complete distribution and so needs to be installed on a machine. We will be setting this up on a separate computer rather than the main server.

Prerequisites

  • Download the latest FreePBX ISO image. This is currently FreePBX 15 available here directly or at this website.
  • This will need burning to a CD or writing to a USB stick. We use a USB stick and Rufus under windows to write it to a USB stick (use DD mode). This guide will cover the USB method but the CD method is very similar.

Booting the installation system

  1. Insert the USB stick into the computer.
  2. Power on the machine.
  3. Press the key to bring up the boot device menu.
  4. Select the USB stick that is inserted.
  5. When the boot menu appears, select 'FreePBX 15 Advanced Installation'.
  6. Next, select 'Advanced Installation with Normal Video'.
  7. Next, select 'Advanced Install with Asterisk 17 via Standard Video'. The system will now boot to the Linux installer.

Configuring the FreePBX installation

We will be using a dedicated computer with an empty hard drive. This will be a custom installation so that we can configure the system before it is installed. This guide will show you all the main options that need to be changed - there are other options if you wish to customise the installation but this is what I will be using to install the system.

Setting the date, time and time zone

  1. Click DATE & TIME to select the correct time zone and set the date & time.
  2. In the 'Region:' box, type or select 'Europe'.
  3. In the 'City:' box, change 'Amsterdam' by typing of selecting 'London'.
  4. If you are already connected to a network, ensure that the 'Network Time' switch is 'On'. This is important as this server will be used to set the times on the phones and needs accurate time to function correctly.
  5. We will configure the time servers to use ones closer to us in the UK. Click the cog icon next to the 'On' switch.
  6. We will change the CentOS NTP servers to UK servers. Double click on each address and change the centos to uk. For example, change 0.centos.pool.ntp.org to 0.uk.pool.ntp.org. Do this for servers 0-3.
  7. We will add the main server IP address as a source too. This is typed in the box and then click '+'.
  8. Click 'OK'
  9. Click 'Done'

Setting the keyboard layout

  1. Click KEYBOARD.
  2. Click the '+' button to add a new keyboard layout. We must add the new keyboard layout before removing the one we don't want.
  3. Type 'UK' in the search box.
  4. Click 'English (UK)'.
  5. Click 'Add'.
  6. Select 'English (US)' from the list.
  7. Click the '-' button to remove this layout.
  8. You may test the layout in the box on the right. I usually check that the '£' and '#' symbols come up when I press these keys.
  9. Click 'Done'.

Setting language support

  1. Click LANGUAGE SUPPORT.
  2. Tick 'English (United Kingdom).
    • Unfortunately, we cannot unselect 'English (United States)'.
  3. Click 'Done'

Setting the hard drive partitioning

As this is a new install, we will be configuring FreePBX to use the whole drive. We would like to use the BtrFS file system so this is slightly different to usual.

  1. Click INSTALLATION DESTINATION.
  2. Check that the hard drive we want to use has a tick on it.
  3. Under 'Partitioning', select 'I will configure partitioning'.
  4. Click 'Done'.
  5. Under 'New mount point will use the following partitioning scheme', change 'LVM' to 'Btrfs'.
  6. If there are already any partitions on the disk, you will have to select each one and click '-' on each one until the disk is empty.
  7. We want to use the whole drive. At the top of the list, click 'Click here to create them automatically'. This will automatically create the correct partitions using the whole drive.
  8. Click 'Done'.
  9. A list of what will be done during the installation will appear which you can review. If you are happy, click 'Accept Changes'.

Disable kdump

I have no use for kdump so will be disabling it.

  1. Click KDUMP.
  2. Untick the 'Enable kdump' box.
  3. Click 'Done'

Setting the network hostname

The rest of the network settings should be OK unless you have something custom to configure. We will just be changing the hostname.

  1. Click NETWORK AND HOSTNAME.
  2. In the hostname box, replace 'freepbx.sangoma.local' to the hostname of your network - in our case asterisk.freddythechick.net.
  3. Click 'Apply'
  4. Click 'Done'

Starting the installation

  1. If there is any problems preventing installation, there will be a yellow bar at the bottom of the screen saying where the problem is and the section that has the problem will have a yellow exclamation mark. These sections will need fixing before you can continue.
  2. I have added a picture of what the screen should look like for reference once everything is configured.
  3. If you are happy with all of the settings, click 'Begin Installation'.

Entering a root password

The installation will start. While the installation continues, we need to set the root password. This will not stop the installation while you are setting this up but must be done before the installation is finished.

  1. Click ROOT PASSWORD.
  2. Type a password for the root user in the 'Root Password:' box.
  3. Retype the password in the 'Confirm:' box.
  4. Click 'Done'.

This will be an internet facing machine so it is HIGHLY RECOMMENDED to type a password that fills the strength bar so that it says Strong. Use a combination of uppercase letters, lowercase letters, numbers and symbols and make the password as long as you can possibly remember. Do not use common words that may be in the dictionary or names. If you do, you will be warned with a yellow bar at the bottom and will be asked to click 'Done' again. It is HIGHLY RECOMMENDED to use a different password if you are warned of this as you will be at risk of attack.

Completing the installation

You will now be back at the installation screen - grab a cup of coffee and wait for the installation to finish.

Once the installation is finished, it will say 'SangomaOS 7.8 is now successfully installed and ready to use! Go ahead and reboot to start using it!'. Click the 'Reboot' button and the machine will reboot to the FreePBX terminal.

First time run of the web interface

Updating the server

Updating the distribution

The latest version of AsteriskNOW! available from the website is not the latest version of the distribution. The distribution must be updated manually to get up to the latest version.

We will start off on the 6.12.65 track. As of 31st December 2015, this has reached its End of Life. We will be upgrading to the 10.13.66 track which is the latest. To look for the latest version, the website is http://wiki.freepbx.org/display/PPS/FreePBX-Distro-10.13.66

  1. Login to your system as root with SSH or go to the Virtual Machine Manager, open the machine and login.
  2. Type cd ~. This will take you to the home directory where we can download.
  3. Type mkdir upgradescripts then cd upgradescripts. This will make a new directory and take you into the new directory.
  4. Type wget https://upgrades.freepbxdistro.org/stable/10.13.66/upgrade-10.13.66-1.sh. This will download the script to update the distribution to the new track. You can also download this from this server by typing wget http://192.168.0.24/hpserver/images/2/24/Upgrade-10.13.66-1.sh then rename it to lowercase by typing mv Upgrade-10.13.66-1.sh upgrade-10.13.66-1.sh.
  5. Type chmod +x upgrade-10.13.66-1.sh. This changes the permissions so we can execute the file.
  6. Type ./upgrade-10.13.66-1.sh to run the script.
  7. While the script is running, you may see some errors. These are normal and as long as the script runs through to the end, you can safely ignore these.
  8. When the script is finished, it will say REBOOT YOUR BOX NOW. Follow these instructions and type reboot.
    Once the machine has rebooted, we will need to update to the latest version of the track (At the time of writing, it was 10.12.66-10, we will use this as an example. Use the latest version available at http://wiki.freepbx.org/display/PPS/FreePBX-Distro-10.13.66).
  9. Login in again as root.
    We did a lot of the legwork in the last example so it makes it easier this time round.
  10. You should already be in the home directory so type cd upgradescripts to move to the upgradescript folder we made earlier.
  11. Look on the FreePBX site, then with the lastest script, type wget https://upgrades.freepbxdistro.org/stable/10.13.66/upgrade-10.13.66-10.sh, changing the last part to whatever the latest version is.
  12. Type chmod +x upgrade-10.13.66-10.sh to make the script executable.
  13. Type cd /. This will take us to the root directory. Due to the way this script works, you must run it from the top root directory.
  14. Type ./root/upgradescripts/upgrade-10.13.66-10.sh to run the script.
  15. Once again, errors that don't stop the script are normal and can be ignored.
  16. Once you have reached REBOOT YOUR BOX NOW, reboot the machine by typing reboot.

NOTE

It is a good idea to keep an eye on the FreePBX website for updates from time to time. You can use the second half of the tutorial to do the minor updates at any time, substituting the example script version for the latest.

General updates

As with any Linux distribution, from time to time there are updates to the system. We will show you how to check these and install them.

  1. Login to the system as root
  2. Type yum update
  3. After downloading from the internet, a list may be shown showing the latest updates available. If No Packages marked for Update is shown, there are no updates available right now and you can continue to the next step.
  4. Type y to accept the changes. The updates will then be downloaded and installed. Some packages take a long time to install and the system will look like it has hung. Be patient, they will eventually install.
  5. It is recommended that once the update is finished, you reboot the machine so that any updates downloaded get used. Type reboot

Updating FreePBX modules