FreePBX 2.5 Powerful Telephony Solutions was written to help system administrators build, configure, and maintain an enterprise class PBX using the Asterisk and FreePBX open source software packages. This book covers the complete process of going from a bare metal server to a completely configured PBX with extensions, voicemail, least cost routing, digital receptionists, and dozens of other features.
Each chapter of the book discusses a specific feature set of FreePBX. The chapters contain step-by-step set up instructions for configuring each feature alongside screenshots of the FreePBX interface. Chapters that cover the installation of Asterisk and FreePBX as well as securing the PBX once it is built, are also included.
In Chapter 1: Installing FreePBX, we discuss the base requirements for a Linux operating system that will run Asterisk and FreePBX. We step through configuring Apache and MySQL, and then proceed to download and install Asterisk and FreePBX under both CentOS and Ubuntu.
In Chapter 2: Module Maintenance, we introduce the modularized structure of FreePBX and the online FreePBX module repository. Instructions for installing, updating, and removing modules are provided.
In Chapter 3: Devices and Extensions, we cover the concept of extensions within FreePBX. We discuss both the operational modes for extensions, as well as the various types of endpoints that FreePBX makes available. Instructions are provided for configuring extensions, users and devices, as well as voicemail boxes.
In Chapter 4: Trunks, we introduce the concept of trunking as a method of connecting our PBX to the outside world. Instructions are provided for setting up each type of trunk that FreePBX supports. We also discuss methods for checking the status of configured trunks to make sure that nothing has failed.
In Chapter 5: Basic Call Targets, we explain the concept of directing inbound calls to call targets. Usage instructions are provided for sending calls to a termination target, an extension, or a voicemail box. Step-by-step instructions are provided for configuring ring groups, conferences, day night modes, and phonebook directories.
In Chapter 6: Advanced Call Targets, we provide step-by-step instructions for configuring queues, time conditions, time groups, and IVRs (digital receptionists).
In Chapter 7: Call Routing, we discuss directing inbound calls to the call targets created in Chapters 5 and 6. We also discuss routing outbound calls over specific trunks, and setting up outbound routes to achieve least cost routing.
In Chapter 8: Recording Calls, we delve into the call recording features of FreePBX. Instructions are provided for setting up permanent or selective call recording for specific extensions, conferences, or queues.
In Chapter 9: Personalizing Your PBX, we introduce some FreePBX features that allow us to make our PBX on our own. Step-by-step instructions are provided for configuring custom music on hold, voice prompts, feature codes, applications, and destinations. We discuss how to set up FreePBX to call back inbound callers and how to provide dial tone to external callers who are not calling from an extension on the PBX. We also cover how to configure FreePBX to check additional sources for caller ID information if none is provided, and how to configure PIN sets to password protect various FreePBX features.
In Chapter 10: System Protection, Backup and Restoration, we cover the concept of ensuring that our PBX is protected against failure. We discuss backing and restoring our FreePBX configuration data in case our PBX does encounter a failure.
In Chapter 11: Security and Access Control, we provide steps that should be taken to secure our PBX against malicious users and unauthorized access. Instructions for updating the operating system, updating Asterisk, securing MySQL, securing remote access, and configuring FreePBX administrator accounts are provided.
In Appendix A: FreePBX Modules, we provide a listing of all modules available for installation from the online repository and their functions.
In Appendix B: Feature Codes, we list all of the default feature codes and their actions.
In Appendix C: Voicemail.conf Options, we provide options that affect the behavior of a mailbox and the way the voicemail messages are received and processed.
In Appendix D: Common Trunk Configurations, we provide the trunk configuration settings for common VoIP providers.
This book assumes a basic knowledge of Linux and telephony, though neither is strictly required. All commands that need to be run are provided and concepts that need to be understood are explained.
This book requires a server that is capable of running Linux, Asterisk, and FreePBX. The hardware requirements for the server will depend upon how many calls the PBX will be routing, and which actions callers can perform once they reach the PBX (for example, a PBX that records every call will require more resources than one that does not). The server should not have any operating system on it to start with. Recommended installation options are provided for both CentOS and Ubuntu.
This book is written for systems administrators who want to get started with Asterisk and FreePBX. This book is perfect for administrators who want to reduce costs by replacing a proprietary PBX with a PBX that runs on open source packages, or an administrator who needs their PBX to do more than it currently does. Anyone who wants to build a stable, feature rich PBX will find this book useful.
In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.
Code words in text are shown as follows: "Replace newpassword
with the password you would like to set for the MySQL root user."
A block of code is set as follows:
#!/bin/bash # Change this path to reflect your backup storage # location (default is /var/lib/asterisk/backups) BACKUPS=/var/lib/asterisk/backups
Any command-line input or output is written as follows:
sed -i "s/Port 22/Port 38000/" /etc/ssh/sshd_config
/etc/init.d/ssh restart
New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "In order to set up a backup, click on the Tools tab at the top of the navigation menu on the left".
Note
Tips and tricks appear like this.
Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.
To send us general feedback, simply send an email to <[email protected]>
, and mention the book title via the subject of your message.
If there is a book that you need and would like to see us publish, please send us a note in the SUGGEST A TITLE form on www.packtpub.com or email <[email protected]>
.
If there is a topic that you have expertise in and you are interested in either writing or contributing to a book on, see our author guide on www.packtpub.com/authors.
Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.
Visit http://www.packtpub.com/files/code/4725_Code.zip to directly download the example code.
The downloadable files contain instructions on how to use them.
Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration, and help us to improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/support, selecting your book, clicking on the let us know link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata added to any list of existing errata. Any existing errata can be viewed by selecting your title from http://www.packtpub.com/support.
Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works, in any form, on the Internet, please provide us with the location address or web site name immediately so that we can pursue a remedy.
Please contact us at <[email protected]>
with a link to the suspected pirated material.
We appreciate your help in protecting our authors, and our ability to bring you valuable content.
You can contact us at <[email protected]>
if you are having a problem with any aspect of the book, and we will do our best to address it.