Posts tagged: google voice

Cyber Monday 2016: The Return of the Lean, Mean Asterisk Machine


We promised to deliver the Incredible PBX™ ISO build environment this week, but that didn’t really have much sex appeal for Cyber Monday. Instead, today we’re introducing the product that tops the 2016 Wish List from Nerd Vittles readers: a stripped down, lean and mean version of Incredible PBX 13 with just the operating system platform, the latest version of Asterisk® 13, and an uncluttered Incredible GUI with the basic collection of FreePBX® GPL modules… and No Gotchas.

Who would want such a thing? Well, lots of folks apparently. Developers and system integrators prefer a clean slate when they’re rolling out systems for new customers. And we want to provide a mix of solutions that meet everyone’s requirements. The three dozen Incredible PBX applications for Asterisk still can be added on an as needed basis. Or, if you change your mind and decide you’re missing all of those preconfigured, free applications, just run the Incredible PBX installer again and switch tutorials. As they say in the hood, “Different strokes for different folks.”

The silver lining in the one week delay of the ISO Build Environment rollout means that next week you’ll have all the pieces as well as the templates needed to create two versions of Incredible PBX instead of one… plus some important bug fixes. And speaking of bugs, there was a Big One in the 11/29/2015 ISO that prevented installation of Incredible PBX Full Enchilada. This has been fixed in the 12/01/2015 release:

Initially, we had planned to roll out a separate ISO for Incredible PBX Lean. But that seemed kind of silly. After all, the beauty of an ISO is being able to present a menu of choices and then let the person installing the software make a selection that best meets their needs. So there’s an updated ISO on SourceForge that now lets you choose between the Full Enchilada and the Lean & Mean version of Incredible PBX 13. Last week’s tutorial will walk you through the Full Enchilada setup. Today we’ll cover what’s necessary to install and deploy the Lean & Mean version. And, yes, you can burn the new ISO to either a DVD-ROM or a 1GB or larger USB thumb drive.

Introducing the Incredible PBX 13.2 Lean Platform

Overview. The Incredible PBX Lean installation process couldn’t be easier. Download IncrediblePBX13.2.iso from SourceForge. Burn the ISO to a DVD-ROM or USB thumb drive. Four different methods are outlined below. Need some great hardware for under $200? Read our tutorial. Or, if you have an old PC lying around, that’ll work, too. Boot up the dedicated machine on which you want to install Incredible PBX. Highlight the Lean & Mean option on the ISO installation menu and press the ENTER key. Choose your time zone, create a really secure root password, and have a coffee break. When Scientific Linux 6.7 has been installed, your server will reboot. Accept the Incredible PBX license agreement and press the ENTER key. Go to lunch and, when you return, you should be good to go. Finish reading this tutorial to add the finishing touches and secure your server.

Let us take a moment to explain the Incredible PBX installation process using this ISO. We don’t hide stuff in our ISO or play games with your security. We don’t give ourselves or our application any secret permissions. There are just two steps to an Incredible PBX ISO install. When the install begins, it loads pure Scientific Linux 6.7 onto your server,1 not some homegrown concoction using proprietary repositories. Your server then reboots. After restarting, the very latest copy of the Incredible PBX 13-12 installer is downloaded and run. You’ll find the source code for the Incredible PBX installer in your /root directory after the install is completed: IncrediblePBX13-12L.sh. You’ll also find some other helpful scripts in /root including the optional (free) Incredible Fax installer. If you ever have a question about what was installed on your server, feel free to examine the source code of our installers or post a note on the PIAF Forum. It’s unencrypted GPL2 code. You’re free to use it, enhance it, and share it. Try that with Sangoma. It’s your choice!

Incredible PBX 13.2 ISO Installation Guide

Downloading the Incredible PBX 13.2 ISO. On the machine you’ll be using to create your installation media, download IncrediblePBX13.2.iso from SourceForge.

Burning a DVD-ROM from the ISO. If your server platform doesn’t have USB support, then burn the ISO to a DVD using a Mac or Windows machine.

Creating a USB Flash Drive Installer. If your server platform has USB ports, you have three ways to move the Incredible PBX 13.2 ISO to a 1GB or larger flash drive. You can use a Windows PC, a Mac, or a Linux machine to create the USB thumb drive installer.

Creating a USB Flash Drive Installer with a Windows PC. In order to create a USB thumb drive using an ISO image, you’ll first need to install Rufus. It’s free. Once you’ve installed it, insert a blank USB thumb drive and run Rufus. Make your settings look like what’s shown above. Be very careful in choosing your Device. You don’t want to accidentally erase the wrong drive on your Windows machine. The correct choice is the USB thumb drive you just inserted. Don’t guess!! Step 2 is choosing the IncrediblePBX13.2.iso file that you downloaded from SourceForge. Step 3 is clicking Start. The ISOHybrid Window will be presented. Step 4 is changing the default setting to “Write in DD image mode.” Step 5 is pressing OK. In a few minutes, your ISO image transfer to the USB flash drive will be finished. Give it 15 seconds just to be safe. Then remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server.

Creating a USB Flash Drive Installer with a Mac. To create a USB thumb drive using an ISO image on a Mac, first insert the USB thumb drive and partition it with a single MS-DOS partition using Disk Utility. Next, open a Terminal window and issue the command: diskutil list. Review the device names and find the one that matches the size of your thumb drive. It will be something like /dev/disk9. Again, be careful. You don’t want to accidentally erase the wrong drive on your Mac! Next, change to the directory into which you downloaded IncrediblePBX13.2.iso, e.g. cd Desktop. Now issue the following commands substituting the actual device name for /dev/disk9 below:

diskutil unmountDisk /dev/disk9
sudo dd if=IncrediblePBX13.2.iso bs=1m of=/dev/disk9
sudo sync
diskutil eject /dev/disk9

When the install completes, remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server. NOTE: There will be no feedback during the dd step above. It can take 15 minutes or more depending upon the horsepower of your Mac. Be patient!

Creating a USB Flash Drive Installer on a Linux machine. To create a USB thumb drive using an ISO image on a Linux machine, first log into your server as root. Insert a blank USB thumb drive. From the CLI, decipher the device name of your thumb drive: fdisk -l. The device name will be something like /dev/sdb. Be careful. You don’t want to accidentally erase the wrong drive on your Linux server! Change to the directory into which you downloaded IncrediblePBX13.2.iso, e.g. cd /root. To transfer the ISO to your thumb drive, issue the following commands replacing /dev/sdb with the actual device name for your thumb drive in lines 1 and 3 below:

dd if=IncrediblePBX13.2.iso bs=4M of=/dev/sdb
sync
udisks --detach /dev/sdb

When the install completes, remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server. NOTE: There will be no feedback during the dd step above. It can take 5 to 15 minutes depending upon the horsepower of your Linux machine.

Kicking Off the Incredible PBX 13 Lean Install. Now we’re ready to install Incredible PBX 13 Lean on your dedicated server platform. Simply insert the DVD-ROM or USB thumb drive in your server-to-be and boot. During the POST boot process, press the function key that displays a Boot Device Menu and choose your DVD-ROM drive or USB device. When the Incredible PBX 13 installation menu displays, choose the second option for the Lean & Mean Install and press ENTER. Choose your time zone, create a really secure root password, and have a coffee break. When Scientific Linux 6.7 has been installed, your server will reboot. Accept the Incredible PBX license agreement and press the ENTER key. Go to lunch and, when you return, you should be good to go. When the installation finishes, reboot your server and log in as root to apply the last minute updates for Incredible PBX.

To complete the install, perform the following from the Linux CLI while logged in as root:

  • Change your root password if it’s insecure: passwd
  • Set your Incredible GUI admin password: /root/admin-pw-change
  • Set your web apps admin password: htpasswd /etc/pbx/wwwpasswd admin
  • Set your correct time zone: /root/timezone-setup
  • Add WhiteList entries to firewall if needed: /root/add-ip or /root/add-fqdn
  • Store PortKnocker credentials in a safe place: cat /root/knock.FAQ
  • *** THE REMAINING FEATURES ARE OPTIONAL ADDITIONS ***
  • Login to your NeoRouter VPN server: /root/nrclientcmd
  • To enable free faxing: /root/incrediblefax11.sh
  • Set admin password for AvantFax: /root/avantfax-pw-change
  • To enable PPTP VPN: /root/pptp-install
  • To enable Google Voice OAUTH authentication: http://nerd.bz/1JaO4ij (1b.)
  • To install FCC RoboCall BlackList: http://nerdvittles.com/?p=15412

Managing Your Server with Incredible PBX Web-Based Tools

Most of your time initially configuring and managing your server will be spent using the web-based tools provided with Incredible PBX. Because most of the apps have been removed in the Lean version of Incredible PBX, the Kennonsoft Menu layer has been removed from the install. Using any modern browser, go to the IP address of your server as shown in the status display above. Choose Incredible GUI Administration. The default username is admin and the password is what you set during the final installation steps above. The Incredible PBX GUI’s Status will display with a clean slate. The only additions to the base install of the FreePBX GPL modules are a dozen preconfigured (but disabled) trunks from the leading trunk providers. This will save you some time, but you can delete any or all of them with a few mouse clicks. We’ve also removed module signature checking to streamline the addition of GPL modules from providers other than Sangoma®. We strongly recommend that you log into the Incredible GUI at least once a week and check the PBX in a Flash RSS News Feed for security alerts and bulletins.

Configuring Google Voice

If you want to use Google Voice, you’ll need a dedicated Google Voice account to support Incredible PBX. If you want to use the inbound fax capabilities of Incredible Fax, then you’ll need an additional Google Voice line that can be routed to the FAX custom destination using the GUI. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We’ve tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with Incredible PBX. It’s free at least through 2013. Google Voice no longer is by invitation only so, if you’re in the U.S. or have a friend that is, head over to the Google Voice site and register.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work… in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it’s over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don’t skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you’d like in Settings, Voice Setting, Phones. But…

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That’s the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don’t see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you’re still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call ScreeningOFF
  • Call PresentationOFF
  • Caller ID (In)Display Caller’s Number
  • Caller ID (Out)Don’t Change Anything
  • Do Not DisturbOFF
  • Call Options (Enable Recording)OFF
  • Global Spam FilteringON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

Now you’re ready to set up your Google Voice trunk in the GUI. After logging in with your browser, click the Connectivity tab and choose Google Voice/Motif. To Add a new Google Voice account, just fill out the form. Do NOT check the third box or incoming calls will never ring!

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart.

If you have trouble getting Google Voice to work (especially if you have previously used your Google Voice account from a different IP address), try this Google Voice Reset Procedure. It usually fixes connectivity problems. If it still doesn’t work, enable Less Secure Apps using this Google tool.

Troubleshooting Audio and DTMF Problems

You can avoid one-way audio on calls and touchtones that don’t work with these simple settings in the GUI: Settings -> Asterisk SIP Settings. Just plug in your public IP address and your private IP subnet. Then set ULAW as the only Audio Codec.

A Few Words about the Incredible PBX Security Model for SL 6.7

Incredible PBX for Scientific Linux joins our previous builds as our most secure turnkey PBX implementation. As configured, it is protected by both Fail2Ban and a hardened configuration of the IPtables Linux firewall. The latest release also includes Port Knocker for simple, secure access from any remote computer or smartphone. You can get up to speed on how the technology works by reading the Nerd Vittles tutorial. Your Port Knocker credentials are stored in /root/knock.FAQ together with activation instructions for your server and mobile devices. The NeoRouter VPN client also is included for rock-solid, secure connectivity to remote users. Read our previous tutorial for setup instructions. As configured, nobody can access your PBX without your credentials AND an IP address that is either on your private network or that matches the IP address of your server or the PC from which you installed Incredible PBX. You can whitelist additional IP addresses by running the command-line utility /root/add-ip. You can remove whitelisted IP addresses by running /root/del-acct. Incredible PBX is preconfigured to let you connect to many of the leading SIP hosting providers without additional firewall tweaking. We always recommend you also add an extra layer of protection by running your server behind a hardware-based firewall with no Internet port exposure, but that’s your call. And it’s your phone bill. 😉

The IPtables firewall is a complex piece of software. If you need assistance with configuring it, visit the PIAF Forum for some friendly assistance.

Incredible Backup and Restore

We’re pleased to introduce our latest backup and restore utilities for Incredible PBX. Running /root/incrediblebackup will create a backup image of your server in /tmp. This backup image then can be copied to any other medium desired for storage. To restore it to another Incredible PBX server, simply copy the image to a server running Asterisk 13 and the same version of the Incredible PBX GUI. Then run /root/incrediblerestore. Doesn’t get much simpler than that.

Incredible PBX Automatic Update Utility

Every time you log into your server as root, Incredible PBX will ping the IncrediblePBX.com web site to determine whether one or more updates are available to bring your server up to current specs. We recommend you log in at least once a week just in case some new security vulnerability should come along. We originally had planned to make our fortune off update fees, but we changed our mind. So… contrary to the language in some of our builds, contributions to our projects are PURELY VOLUNTARY. You’ll get every update as it’s released whether you financially support our projects or not. Why haven’t we fixed the language? Good question. The short answer is it’s buried deep in the GUI image that would have to be regenerated from scratch. We’ll get to it one of these days. In the meantime, sleep soundly. No one will be breaking down your door for a donation.

We also encourage you to sign up for an account on the PIAF Forum and join the discussion. In addition to providing first-class, free support, we think you’ll enjoy the camaraderie. Enjoy!

Originally published: Monday, November 30, 2015


Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of users just like you. You won’t have to wait long for an answer to your question.



Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

  1. If you’re wondering what packages are installed with Scientific Linux 6.7, come back next week and download the entire Incredible PBX ISO build environment. All of the packages installed on your server are included in the build platform itself. Feel free to add to them or change them to your heart’s content. We don’t have a million dollar staff. That’s why we depend upon folks like you to offer suggestions and enhancements. In short, we treat Incredible PBX like a real open source project. Come join the fun! []

Free at Last: Incredible PBX 13.2 ISO Supporting DVD-ROM and USB Flash Drives


Leave it to Sangoma® and the Schmoozers1 to light a fire under us and encourage development of USB flash drive support for our Incredible PBX installer. When Sangoma is complaining about Gotchas, you’d best pay attention because nobody knows more about Gotchas than Sangoma. After all, this is the company that considers it a badge of honor to prohibit redistribution of the FreePBX® Distro ISO. You can’t make a copy, give it to friends, or pass it on to your colleagues at work. No, sir. That would violate the copyright law… according to Sangoma anyway. Never mind Sections 5 and 6 of the GPL and the 99% of their ISO that’s comprised of GPL code produced by others. Here’s a quick refresher for all you legal beagles…



So much for FOSS and open source development. And, thank you, Sangoma for reminding us that it’s 2015. The Incredible PBX 13 ISO was getting long in the tooth. It’s been on the street almost two months. So we’re pleased to accept the challenge and introduce the second-generation Incredible PBX 13.2 ISO. Like its predecessor, it’s 100% open source and GPL code. Perhaps now Sangoma will follow suit. And produce a legit GPL source repository for FreePBX 12 while you’re at it.

The new Incredible PBX 13.2 ISO can be burned to either a DVD-ROM or a 1GB or larger USB flash drive using a Mac, a Windows PC, or almost any Linux machine. And, unlike the FreePBX Distro, you’re more than welcome to share our code and the ISO with all of your friends and business associates. In fact, next week we’re releasing the entire Incredible PBX build platform for those of you that want to roll your own ISO. Share your enhancements and tweaks or make a customized ISO for just your company and pass it around. We’d be delighted. And our previous tutorial will even show you how to set up and maintain your own Cloud Repository for Incredible PBX. FREEDOM: THAT’S WHAT OPEN SOURCE IS ALL ABOUT!

All together now… No Gotchas! Dear Sangoma: Don’t SAY you love Freedom on freepbx.org and then DO just the opposite.

Introducing the Incredible PBX 13.2 ISO

Overview. The Incredible PBX installation process couldn’t be easier. Download IncrediblePBX13.2.iso from SourceForge. Burn the ISO to a DVD-ROM or USB thumb drive. Four different methods are outlined below. Need some great hardware for under $200? Read our tutorial. Or, if you have an old PC lying around, that’ll work, too. Boot up the dedicated machine on which you want to install Incredible PBX. Choose whether you prefer the Incredible PBX Whole Enchilada with 30+ applications for Asterisk or the Lean & Mean version which has its own separate tutorial here. Press the ENTER key. Choose your time zone, create a really secure root password, and have a coffee break. When Scientific Linux 6.7 has been installed, your server will reboot. Accept the Incredible PBX license agreement and press the ENTER key. Go to lunch and, when you return, you should be good to go. Finish reading this tutorial to add the finishing touches and secure your server. Then read the Incredible PBX Application Users Guide to learn all about the three dozen FREE applications for Asterisk® that are included in the build. DONE!

Let us take a moment to explain the Incredible PBX installation process using this ISO. We don’t hide stuff in our ISO or play games with your security. We don’t give ourselves or our application any secret permissions. There are just two steps to an Incredible PBX ISO install. When the install begins, it loads pure Scientific Linux 6.7 onto your server,2 not some homegrown concoction using proprietary repositories. Your server then reboots. After restarting, the very latest copy of the Incredible PBX 13-12 installer is downloaded and run (see the actual source code of the script below). You’ll find the source code for the Incredible PBX installer in your /root directory after the install is completed: IncrediblePBX13-12R.sh. You’ll also find some other helpful scripts in /root including the optional (free) Incredible Fax installer. If you ever have a question about what was installed on your server, feel free to examine the source code of our installers or post a note on the PIAF Forum. It’s unencrypted GPL2 code. You’re free to use it, enhance it, and share it. Try that with Sangoma. It’s your choice!

%post
###############################################################
#
# Post Script - this script runs on Incredible PBX server
# immediately after Scientific Linux 6.7 install finishes
#
###############################################################
/usr/sbin/ntpdate -su pool.ntp.org
rpm -e readahead
/bin/sed -i 's|rhgb quiet||' /boot/grub/grub.conf
/bin/echo "/tmp/firstboot" >> /etc/rc.d/rc.local
/bin/echo "#!/bin/bash" > /tmp/firstboot
/bin/echo " " >> /tmp/firstboot
/bin/echo "NETDN=`/bin/ping -c 1 incrediblepbx.com | /bin/grep incrediblepbx.com`" >> /tmp/firstboot
/bin/echo "if [[ -z $NETDN ]]; then" >> /tmp/firstboot
/bin/echo " read -p 'Network is down. Please fix. Then press RETURN to reboot and retry.'" >> /tmp/firstboot
/bin/echo " /sbin/reboot" >> /tmp/firstboot
/bin/echo " exit" >> /tmp/firstboot
/bin/echo "fi" >> /tmp/firstboot
/bin/echo "sed -i '/firstboot/d' /etc/rc.d/rc.local" >> /tmp/firstboot
/bin/echo "sed -i 's|NO_DM |NO_DM rhgb quiet|' /boot/grub/grub.conf" >> /tmp/firstboot
/bin/echo "cd /root" >> /tmp/firstboot
/bin/echo "wget http://incrediblepbx.com/incrediblepbx13-12.2-centos.tar.gz" >> /tmp/firstboot
/bin/echo "tar zxvf incrediblepbx13-12.2-centos.tar.gz" >> /tmp/firstboot
/bin/echo "rm -f incrediblepbx13-12.2-centos.tar.gz" >> /tmp/firstboot
/bin/echo "./Inc*" >> /tmp/firstboot
/bin/chmod +x /tmp/firstboot
eject
%end

Incredible PBX 13.2 ISO Installation Guide

Downloading the Incredible PBX 13.2 ISO. On the machine you’ll be using to create your installation media, download IncrediblePBX13.2.iso from SourceForge. Update: The 11/29/2015 version of the ISO had a bug that prevented proper installation of Incredible PBX Full Enchilada. The 12/01/2015 release fixed the problem.

Burning a DVD-ROM from the ISO. If your server platform doesn’t have USB support, then burn the ISO to a DVD using a Mac or Windows machine.

Creating a USB Flash Drive Installer. If your server platform has USB ports, you have three ways to move the Incredible PBX 13.2 ISO to a 1GB or larger flash drive. You can use a Windows PC, a Mac, or a Linux machine to create the USB thumb drive installer.

Creating a USB Flash Drive Installer with a Windows PC. In order to create a USB thumb drive using an ISO image, you’ll first need to install Rufus. It’s free. Once you’ve installed it, insert a blank USB thumb drive and run Rufus. Make your settings look like what’s shown above. Be very careful in choosing your Device. You don’t want to accidentally erase the wrong drive on your Windows machine. The correct choice is the USB thumb drive you just inserted. Don’t guess!! Step 2 is choosing the IncrediblePBX13.2.iso file that you downloaded from SourceForge. Step 3 is clicking Start. The ISOHybrid Window will be presented. Step 4 is changing the default setting to “Write in DD image mode.” Step 5 is pressing OK. In a few minutes, your ISO image transfer to the USB flash drive will be finished. Give it 15 seconds just to be safe. Then remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server.

Creating a USB Flash Drive Installer with a Mac. To create a USB thumb drive using an ISO image on a Mac, first insert the USB thumb drive and partition it with a single MS-DOS partition using Disk Utility. Next, open a Terminal window and issue the command: diskutil list. Review the device names and find the one that matches the size of your thumb drive. It will be something like /dev/disk9. Again, be careful. You don’t want to accidentally erase the wrong drive on your Mac! Next, change to the directory into which you downloaded IncrediblePBX13.2.iso, e.g. cd Desktop. Now issue the following commands substituting the actual device name for /dev/disk9 below:

diskutil unmountDisk /dev/disk9
sudo dd if=IncrediblePBX13.2.iso bs=1m of=/dev/disk9
sudo sync
diskutil eject /dev/disk9

When the install completes, remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server. NOTE: There will be no feedback during the dd step above. It can take 15 minutes or more depending upon the horsepower of your Mac. Be patient!

Creating a USB Flash Drive Installer on a Linux machine. To create a USB thumb drive using an ISO image on a Linux machine, first log into your server as root. Insert a blank USB thumb drive. From the CLI, decipher the device name of your thumb drive: fdisk -l. The device name will be something like /dev/sdb. Be careful. You don’t want to accidentally erase the wrong drive on your Linux server! Change to the directory into which you downloaded IncrediblePBX13.2.iso, e.g. cd /root. To transfer the ISO to your thumb drive, issue the following commands replacing /dev/sdb with the actual device name for your thumb drive in lines 1 and 3 below:

dd if=IncrediblePBX13.2.iso bs=4M of=/dev/sdb
sync
udisks --detach /dev/sdb

When the install completes, remove the USB thumb drive and you’re ready to begin the install on your dedicated Incredible PBX server. NOTE: There will be no feedback during the dd step above. It can take 5 to 15 minutes depending upon the horsepower of your Linux machine.

Kicking Off the Incredible PBX 13 Install. Now we’re ready to install Incredible PBX 13 on your dedicated server platform. Simply insert the DVD-ROM or USB thumb drive in your server-to-be and boot. During the POST boot process, press the function key that displays a Boot Device Menu and choose your DVD-ROM drive or USB device. When the Incredible PBX 13 installation menu displays, choose Basic Install and press ENTER. Choose your time zone, create a really secure root password, and have a coffee break. When Scientific Linux 6.7 has been installed, your server will reboot. Accept the Incredible PBX license agreement and press the ENTER key. Go to lunch and, when you return, you should be good to go. When the installation finishes, reboot your server and log in as root to apply the last minute updates for Incredible PBX.

To complete the install, perform the following from the Linux CLI while logged in as root:

  • Change your root password if it’s insecure: passwd
  • Set your Incredible GUI admin password: /root/admin-pw-change
  • Set your web apps admin password: htpasswd /etc/pbx/wwwpasswd admin
  • Set your correct time zone: /root/timezone-setup
  • Add WhiteList entries to firewall if needed: /root/add-ip or /root/add-fqdn
  • Store PortKnocker credentials in a safe place: cat /root/knock.FAQ
  • *** THE REMAINING FEATURES ARE OPTIONAL ADDITIONS ***
  • Login to your NeoRouter VPN server: /root/nrclientcmd
  • To enable free faxing: /root/incrediblefax11.sh
  • Set admin password for AvantFax: /root/avantfax-pw-change
  • To enable PPTP VPN: /root/pptp-install
  • To enable Google Voice OAUTH authentication: http://nerd.bz/1JaO4ij (1b.)
  • To remove GPL Module Signature Checking in GUI: http://nerd.bz/1fpwZJL
  • To install FCC RoboCall BlackList: http://nerdvittles.com/?p=15412
  • To upgrade Asterisk to current release3: /root/upgrade-asterisk-to-current
  • To upgrade all FreePBX GPL Modules: /var/lib/asterisk/bin/module_admin upgradeall && amportal a r

Managing Your Server with Incredible PBX Web-Based Tools

Most of your time initially configuring and managing your server will be spent using the web-based tools provided with Incredible PBX. Using any modern browser, go to the IP address of your server as shown in the status display above. This will bring up the Kennonsoft GUI that provides access to all of the web-based applications. Toggle between User and Admin apps by clicking on the blue tab in the lower left section of the display. This GUI also displays the latest security alerts and bug fixes from the PIAF RSS Feed. We recommend you check it at least once a week.

The other GUI to configure the FreePBX® GPL modules is accessed from the Admin menu in the Kennonsoft menus. Choose Incredible GUI Administration. The default username is admin and the password is what you set during the final installation steps above. Once the Incredible PBX GUI appears, edit extension 701 so you can figure out (or change) the randomized passwords that were set up for your 701 extension and voicemail account: Applications -> Extensions -> 701. If you’re behind a hardware-based firewall, verify the NAT setting is set to YES.

Setting Up a Soft Phone to Use with Incredible PBX

Now you’re ready to set up a telephone so that you can play with Incredible PBX. We recommend YateClient which is free. Download it from here. Run YateClient once you’ve installed it and enter the credentials for the 701 extension on Incredible PBX. You’ll need the IP address of your server plus your extension 701 password. Choose Settings -> Accounts and click the New button. Fill in the blanks using the IP address of your server, 701 for your account name, and whatever password you created for the extension. Click OK.

Once you are registered to extension 701, close the Account window. Then click on YATE’s Telephony Tab and place some test calls to the numerous apps that are preconfigured on Incredible PBX. Dial a few of these to get started:


DEMO - Allison's IVR Demo
947 - Weather by ZIP Code
951 - Yahoo News
*61 - Time of Day
*68 - Wakeup Call
TODAY - Today in History

Now you’re ready to connect to the telephones in the rest of the world. If you live in the U.S., the easiest way (at least for now) is to set up a free Google Voice account. Google has threatened to shut this down but as this is written, it still works. Upgrading your server for OAUTH authentication is covered here. Start at step #1b. The safer long-term solution is to choose several SIP providers and set up redundant trunks for your incoming and outbound calls. The PIAF Forum includes dozens of recommendations to get you started.

Configuring Google Voice

If you want to use Google Voice, you’ll need a dedicated Google Voice account to support Incredible PBX. If you want to use the inbound fax capabilities of Incredible Fax, then you’ll need an additional Google Voice line that can be routed to the FAX custom destination using the GUI. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We’ve tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with Incredible PBX. It’s free at least through 2013. Google Voice no longer is by invitation only so, if you’re in the U.S. or have a friend that is, head over to the Google Voice site and register.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work… in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it’s over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don’t skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you’d like in Settings, Voice Setting, Phones. But…

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That’s the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don’t see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you’re still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call ScreeningOFF
  • Call PresentationOFF
  • Caller ID (In)Display Caller’s Number
  • Caller ID (Out)Don’t Change Anything
  • Do Not DisturbOFF
  • Call Options (Enable Recording)OFF
  • Global Spam FilteringON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

Now you’re ready to set up your Google Voice trunk in the GUI. After logging in with your browser, click the Connectivity tab and choose Google Voice/Motif. To Add a new Google Voice account, just fill out the form. Do NOT check the third box or incoming calls will never ring!

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart.

If you have trouble getting Google Voice to work (especially if you have previously used your Google Voice account from a different IP address), try this Google Voice Reset Procedure. It usually fixes connectivity problems. If it still doesn’t work, enable Less Secure Apps using this Google tool.

Troubleshooting Audio and DTMF Problems

You can avoid one-way audio on calls and touchtones that don’t work with these simple settings in the GUI: Settings -> Asterisk SIP Settings. Just plug in your public IP address and your private IP subnet. Then set ULAW as the only Audio Codec.

A Few Words about the Incredible PBX Security Model for SL 6.7

Incredible PBX for Scientific Linux joins our previous builds as our most secure turnkey PBX implementation. As configured, it is protected by both Fail2Ban and a hardened configuration of the IPtables Linux firewall. The latest release also includes Port Knocker for simple, secure access from any remote computer or smartphone. You can get up to speed on how the technology works by reading the Nerd Vittles tutorial. Your Port Knocker credentials are stored in /root/knock.FAQ together with activation instructions for your server and mobile devices. The NeoRouter VPN client also is included for rock-solid, secure connectivity to remote users. Read our previous tutorial for setup instructions. As configured, nobody can access your PBX without your credentials AND an IP address that is either on your private network or that matches the IP address of your server or the PC from which you installed Incredible PBX. You can whitelist additional IP addresses by running the command-line utility /root/add-ip. You can remove whitelisted IP addresses by running /root/del-acct. Incredible PBX is preconfigured to let you connect to many of the leading SIP hosting providers without additional firewall tweaking. We always recommend you also add an extra layer of protection by running your server behind a hardware-based firewall with no Internet port exposure, but that’s your call. And it’s your phone bill. 😉

The IPtables firewall is a complex piece of software. If you need assistance with configuring it, visit the PIAF Forum for some friendly assistance.

Incredible Backup and Restore

We’re pleased to introduce our latest backup and restore utilities for Incredible PBX. Running /root/incrediblebackup will create a backup image of your server in /tmp. This backup image then can be copied to any other medium desired for storage. To restore it to another Incredible PBX server, simply copy the image to a server running Asterisk 13 and the same version of the Incredible PBX GUI. Then run /root/incrediblerestore. Doesn’t get much simpler than that.

Incredible PBX Automatic Update Utility

Every time you log into your server as root, Incredible PBX will ping the IncrediblePBX.com web site to determine whether one or more updates are available to bring your server up to current specs. We recommend you log in at least once a week just in case some new security vulnerability should come along. We originally had planned to make our fortune off update fees, but we changed our mind. So… contrary to the language in some of our builds, contributions to our projects are PURELY VOLUNTARY. You’ll get every update as it’s released whether you financially support our projects or not. Why haven’t we fixed the language? Good question. The short answer is it’s buried deep in the GUI image that would have to be regenerated from scratch. We’ll get to it one of these days. In the meantime, sleep soundly. No one will be breaking down your door for a donation.

We also encourage you to sign up for an account on the PIAF Forum and join the discussion. In addition to providing first-class, free support, we think you’ll enjoy the camaraderie.

Incredible PBX Application Users Guide

Your next stop ought to be learning about the three dozen applications included in Incredible PBX. We’ve put together this tutorial to get you started. Enjoy!

Originally published: Sunday, November 22, 2015


Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of users just like you. You won’t have to wait long for an answer to your question.



Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

  1. Sangoma and the Schmoozers: What a great name for a band! Maybe that’s fitting since they’ve chosen to treat their ISO almost like a music CD. []
  2. If you’re wondering what packages are installed with Scientific Linux 6.7, come back next week and download the entire Incredible PBX ISO build environment. All of the packages installed on your server are included in the build platform itself. Feel free to add to them or change them to your heart’s content. We don’t have a million dollar staff. That’s why we depend upon folks like you to offer suggestions and enhancements. In short, we treat Incredible PBX like a real open source project. Come join the fun! []
  3. This is unnecessary when you first install Incredible PBX because it automatically installs the latest version of Asterisk 13. []

Sleep Well: Deploy Certified Incredible PBX Builds for Mission Critical Systems

2015 marks the year we finally settled upon an Asterisk® platform that was not only feature rich but also easy to deploy and maintain. Incredible PBX™ began as an add-on feature set for PBX in a Flash™. But we really wanted a pure open source platform that was built from the ground up. So we introduced a number of stand-alone installers that could be deployed using existing Linux platforms: CentOS, Ubuntu, Debian, Raspbian, and even FreePBX® Distro’s SHMZ. These continue to be our “best sellers” even though we give them away. With the exception of SHMZ, the beauty of the other stand-alone installers is you can use them anywhere whether it’s a Raspberry Pi® or in the Cloud1 with RentPBX or Digital Ocean or Wable. But there were some that preferred either dedicated hardware or in-house virtual machine platforms such as VirtualBox and Proxmox. For these platforms, a two-step OS and Incredible PBX install procedure was a hassle. So we introduced an ISO build of Incredible PBX with a superset of Scientific Linux 6.7 preconfigured. And finally we added snapshot images for VirtualBox and Proxmox. What used to take hours has been reduced to less than 30 seconds on the Proxmox 4 KVM platform. With Incredible PBX, it’s all about choice and the FREEDOM to choose with NoGotchas!

Along the way, we experimented with a number of other hardware platforms, and we even tried several other management GUI’s for Asterisk. But there comes a time when you have to sharpen your focus and produce a product that is something other than experimental. And that’s why we are pleased to introduce the new Certified Incredible PBX Builds. These are robust unified communications solutions that we not only test regularly but also use ourselves. Yes, we eat our own dog food.

So where do you begin? We documented a simple, 3-Step Decision Tree to guide you through the process of choosing a GPL platform and VoIP communications solution that’s right for you. You can take it for a spin here or read the complete tutorial.

  
  

The more difficult question is deciding how to host your Unified Communications server. Do you want to maintain it yourself, or do you prefer that someone else maintain either the hardware or software or both? We can’t really answer that for you without a great deal of additional information. What we can tell you is that experimentation is a wonderful thing, and you’ll learn an awful lot in the process. Take advantage of the PIAF Forum. There are hundreds of VoIP experts and 10,000+ members to help with your new adventure. Building systems with Incredible PBX is a process that, in the worst case, takes under an hour. And, in the best case, it takes under 30 seconds. So our advice is try several Cloud approaches and, if you have some old hardware lying around the house, try that option as well. We would hasten to add that we don’t recommend running your phone system on old hardware permanently. If you choose the stand-alone server route, invest $200 and get our recommended Intel® NUC or invest $100 and put a Raspberry Pi 2 platform into production. Both are easy to back up and restore. If you’re a dedicated iMac user with processing power and RAM to spare, then the VirtualBox solution really is a no-brainer. It doesn’t cost you a dime, and you’ll never know your phone system is operating as a virtual machine.

The Incredible PBX Gold Standard

We get emails all the time that go something like this. “Cut the crap. You’re the expert. Just tell me the platform that you use and would recommend.” Fair enough. Here you go. We experiment on Cloud-based servers almost daily. We have a virtual machine at RentPBX that has run non-stop for years without a hiccup. Use our $15/month coupon code if you sign up: NOGOTCHAS. We build and tear down systems at Digital Ocean and CloudAtCost and Wable almost daily. These three have the added advantage of letting you take snapshots of your virtual machines. Snapshots can be restored in minutes. While CloudAtCost is a good sandbox, don’t even think about using it in production!

The system we recommend for SOHO and small businesses is $200 dedicated hardware, an Intel NUC. The software is Incredible PBX 13 ISO. The server is powerful, quiet, tiny, and easy to back up using Clonezilla and an external USB drive. Our production machine doesn’t change much for months at a time. Once configured, yours probably won’t either. Don’t go update crazy! Apply updates and upgrades only when something doesn’t work or you need a new feature. If it ain’t broke…

A Few Words About Incredible PBX Applications for Asterisk

Asterisk is a complex telephony platform. Don’t expect to learn it all in a day. We’ve been at it for 10 years, and there’s still much that we don’t know. On top of Asterisk, we’ve added over three dozen Asterisk applications. And, yes, there is documentation. Spend a little time with the tutorial, and it will improve your appreciation for Asterisk 1000%.

A Few Words About Google Voice OAUTH Authentication

We have been a strong proponent of Google Voice for many years. Why? Because in the United States, you can make limitless calls to the U.S. and Canada for free. Faxes work, too. Just don’t put all of your eggs in the Google Voice basket. It does break, and Google regularly “improves” things. Thus far, we’ve always managed to get things going again thanks to some very talented telephony gurus around the globe. The one component of Google Voice that Google continues to threaten to shut down is the use of plain text passwords for authentication. With Incredible PBX, you can do something about that by implementing OAUTH authentication on your server. We’ve written a simple tutorial to guide you through implementation and use of OAUTH 2.0 with Google Voice. Please read it before your Google Voice trunks suddenly drop dead.

A Few Words About Security and Firewalls

If you have a phone system that is exposed to the Internet, the bad guys are going to attempt to make calls on your nickel forever. No firewall means sooner or later you’re going to get hit with a very expensive phone bill. Some of the horror stories include charges of over $100,000 in a single month.

Incredible PBX includes a sophisticated firewall that is locked down to private networks, preferred (by us) VoIP providers, and the IP addresses of your desktop computer and your server. Don’t disable it!

We do not recommend using Incredible PBX on the Amazon EC2 platform for the simple reason that Amazon treats all customers as part of the same private LAN. This defeats the security provided by the Incredible PBX firewall and leaves your extension and trunk passwords as your only line of defense. Yes, there are bad guys using Amazon. You’ve been warned.

If you opt to host your own dedicated server for Incredible PBX, we strongly recommend that you place the server behind a hardware-based firewall in addition to the IPtables firewall provided as part of every Incredible PBX build. Two firewalls are almost always better than one. It’s one more nut to crack for the bad guys.

Finally, a word about the new FreePBX Firewall. Don’t. Good network practices suggest that a firewall should be as separated from your applications as possible. The IPtables firewall used by Incredible PBX is only accessible through SSH or the console with root login. It also requires root permissions for any type of modification to its setup. The FreePBX firewall is an integral component of FreePBX and is accessible through the FreePBX GUI itself using the standard FreePBX admin credentials. In addition, during the first week, a vulnerability was reported which resulted in a root vulnerability. What’s puzzling about that is the fact that FreePBX itself traditionally has not operated with root permissions which suggests that other changes have been made in the GUI so that the user account separation between the asterisk user account and the root user account has now been compromised, a very dangerous new development. If this is ever explained, we will pass it on.


A Few Words About Module Repositories

FreePBX 12 GPL modules are an integral component of Incredible PBX. Why don’t we use “pure” FreePBX 12? The short answer is Sangoma® has integrated a hidden module repository into FreePBX 12. It is comprised of modified FreePBX 12 modules that are not provided on any publicly-accessible web site. Yes, FreePBX 12 GPL modules are available through their GIT repository, but these modules differ from the ones that actually make FreePBX 12 work properly (see next section). As a result, we have chosen to build and use a public module repository for FreePBX 12 GPL modules included in Incredible PBX. For further details, see this Nerd Vittles article. To access our public repository of FreePBX 12 GPL modules, go here.

A Few Words About Module Signatures

With FreePBX 12, Sangoma also has chosen to bar use of competitor’s commercial modules within the product. In addition, Sangoma has implemented a module signature scheme which results in nasty security alerts whenever a compatible FreePBX module is included in the GUI that was not produced or approved for inclusion by Sangoma giving the impression that your server has been compromised. As a result, we have chosen to disable module signature checking by default with Incredible PBX. As changes are made within the GUI, the nasty warnings reappear. We have included the gui-fix script to again disable signature checking. A permanent fix which eliminates signature checking permanently is available here.

A Few Words About Asterisk Upgrades

When you install Incredible PBX, you automatically get the latest and greatest version of Asterisk. Depending upon the installer used, you get either Asterisk 11 or 13. Both versions of Asterisk get regular upgrades provided by Digium®. As with updates, our recommendation is to not apply upgrades unless you actually need a new feature or your existing server is experiencing problems related to the version of Asterisk you are running. We have provided an upgrade utility to make the upgrade process painless. It will NOT move you from Asterisk 11 to 13. It only moves you to the latest release in the version of Asterisk you already have installed.2 In the case of Asterisk 13, the upgrade utility will preserve Google Voice OAUTH authentication if you have previously applied the Asterisk 13 patch as documented above. To upgrade your server, log in as root and issue the following commands:

cd /root
wget http://incrediblepbx.com/upgrade-asterisk-to-current.tar.gz
tar zxvf upgrade-asterisk-to-current.tar.gz
rm -f upgrade-asterisk-to-current.tar.gz
./upgrade-asterisk-to-current

A Few Words About Backups

There are two kinds of administrators in the world: those that make regular backups and those that don’t. Only the first category of administrators generally keep their jobs. Whether you do this for a living or for fun, you are strongly encouraged to make regular backups of your server. There are two types of backups: full system backups and incremental backups using the incrediblebackup script. You need both. For dedicated servers, we recommend you obtain the free Clonezilla application for full system backups. Used in conjunction with an external USB drive, it provides excellent results. For those using Incredible PBX in a virtualized environment, we recommend you use the snapshot utility included on your platform to make periodic backups. Backups should always be stored in a location separate from that of your server or virtual machine.

Originally published: Monday, October 26, 2015


Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of users just like you. You won’t have to wait long for an answer to your question.



Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

  1. Some of our links refer users to service providers when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee or advertising revenue from some of these providers to help cover the costs of our blog. We never recommend particular products solely to generate commissions. However, when pricing is comparable or availability is favorable, we support these providers because they support us. []
  2. Some of the FreePBX Distro cheerleaders have touted the beauty of their NagWare noting that you can move back and forth between Asterisk 11 and 13. The question is why would anyone ever want to move back to Asterisk 11 after migrating to Asterisk 13. So we’re talking about a one-time reinstall followed by a restore using Incredible Backup and Restore from your Asterisk 11 server. Can you say lunch break? []

The SOHO Dream Machine: A Unified Communications Platform for Under $200

Remember when you could buy an awesome server for under $200? Thanks to Intel® and Yogi Berra, it’s déjà vu all over again! Years ago we discovered a machine called the Acer Revo that could be had for about $200. It met all of the Unified Communications requirements that a home office or small office could dream of, but then they doubled in price. That led us to the Raspberry Pi 2. While it met the basic needs for most SOHO environments, it involved a bit more hardware tinkering than many folks were comfortable with. And it’s overall performance was something less than robust.

Say what you will about Intel hardware. They may not get things quite right out of the starting gate. But give them a little time, and issues get addressed and fixed. And you end up with incredible hardware at a terrific price. So it is with the $119 third-generation Intel NUC DN2820FYKH. Slip in a 4GB stick of RAM and an economical SSD drive to complement the built-in WiFi and Bluetooth, and you’ve got an amazing hardware platform that takes up 4″ x 4″ of real estate in your office. While its 2.4 GHz Celeron dual-core processor isn’t exactly a screamer compared to some Intel chips, it’s an energy-efficient rocketship compared to the Raspberry Pi 2. Intel VT-x virtualization support1 also is included. The average BOGOMIPS rating of the current Raspberry Pi is 96. The Intel NUC’s BOGOMIPS average is 5332! In Plain English, it would take 55 Raspberry Pi 2’s to match the processing power of one Intel NUC.

Performance, of course, is only half of the equation. There’s also price. Let’s be completely fair and spec out the Raspberry Pi with one-quarter of the RAM and disk storage of the Intel NUC. Cost of the board itself ($41+) + case ($10) + power adapter ($10) + 32GB microSD Type 10 card ($20) + WiFi Dongle ($10) comes to at least $90. Here’s what our Intel NUC set us back on Amazon2 with quadruple the RAM and disk storage, basically the cost of 2 RasPi setups. The FreePBX® Phone System 50 with similar specs starts at $579 and takes up a healthy chunk of your office space. With Incredible PBX and the Intel NUC, you not only save on space, but it’s also about a third of the cost of the FreePBX alternative. For power users, you’re probably wondering whether you can scale up from Celeron-based system. The answer is ABSOLUTELY. The Core i5 model with 16GB of RAM and a 250GB SSD drive runs about $500. And, of course, Incredible PBX imposes no artificial limitations on user accounts or number of simultaneous calls regardless of the hardware platform you choose. No Gotchas!

Initial Setup of the Intel NUC Platform

Once you receive your hardware, the first step is installation of the memory card and SATA drive. HINT: You’d be crazy not to use an SSD drive. They’re dirt cheap and FAST! Start your adventure by reviewing the User’s Guide from Intel. As you can see below, it walks you through the hardware installation process which takes about 10 minutes.

Download (PDF, 625KB)

The most important step comes next. Until you get the BIOS upgraded on the hardware, it will NOT boot. Visit the Download Page for the Intel NUC and grab the latest BIOS Update from here. The only piece you need is FY0051.BIO. Copy it to a DOS-formatted USB flash drive using any desktop computer. Once you’ve done that, insert the flash drive into the front slot on the Intel NUC, plug in a USB keyboard, HDMI monitor, USB DVD drive, and network cable. Turn on the machine. Press F7 after the beep. Follow the instructions to upgrade the BIOS and identify the firmware file you copied to your flash drive. Agree to the license and let the firmware update proceed. It takes about 10 minutes.

While you’re waiting, burn the Incredible PBX 13 ISO to a DVD to use with an external USB DVD drive and your Intel NUC. Tutorial is here.

Once the BIOS has been upgraded, your Intel NUC will reboot. You must change a few BIOS settings to complete the hardware setup, or nothing will work. After the machine reboots, press F2 to access Intel’s new Visual BIOS. First, enable the Legacy Boot Procedure, not UEFI (as shown above). Next, make certain that booting from the DVD drive has priority. And, last but not least, set the correct date and time for the computer. Without accurate time, Asterisk will not compile, and you’ll have to repeat the drill! Once you’ve made these changes, save your settings by pressing F10. Your machine will again reboot. Hardware setup is complete. To install Incredible PBX, reboot and press F10 for the boot menu. Pick your USB DVD drive.

If you don’t happen to have one, LG’s tiny USB-powered DVD Writer is the best $25 you will ever spend.

And, if you really want to splurge, take the plunge with this awesome 10″ HDMI (and everything else) monitor:

Installing Incredible PBX 13 on the Intel NUC

Choose the Basic Install, set your time zone, and create a very secure root password. It takes about 20 minutes to install the Scientific Linux 6.7 platform. After a reboot, press Enter to accept the Incredible PBX license agreement and complete the install. We initially were concerned that RedHat-based platforms would not load on the Intel NUC since they are not mentioned in the Intel compatibility chart. Not to worry. SL 6.7 works fine. This may very well be because of the latest BIOS upgrade. In any case, you can follow along in our Incredible PBX 13 ISO tutorial for the details. Adding free fax support with Incredible Fax is equally easy. Just run the Hylafax/AvantFax installer: /root/installfax11.sh. If you want to enable encrypted OAUTH2 authentication for your Google Voice accounts, follow this tutorial beginning at step #1b. When you get everything humming along, check out our tutorial for the three dozen Incredible Apps that are bundled with Incredible PBX.

Finally, tidy up the status display to accomodate the Intel NUC’s generous RAM and Disk sizes:

sed -i 's|$OSrelease|<> Sci Linux 6.7 <>|' /usr/local/sbin/status

Setting Up WiFi Connectivity on the Intel NUC

You probably noticed that two private IP addresses are listed on the status display shown above. The first is the wired network connection. The second is either the wireless network connection or the NeoRouter VPN address depending upon how you’ve set up your server. Incredible PBX can be run using either the eth0 or wlan0 interface. You really don’t want both, and we’ll show you how to turn one of them off. Here’s how to activate WiFi on your server. Follow the steps carefully and don’t be intimidated that you’re venturing down into the network weeds. It’s a number of steps but nothing difficult.

WARNING: We strongly recommend installing Incredible Fax before you enable WiFi connectivity to avoid problems. Trust us on this one. We learned the hard way, and you can only run the Incredible Fax installer once!

1. Install wpa_supplicant to manage WiFi access: yum -y install wpa_supplicant

2. Download and install the latest WiFi driver. Just cut-and-paste the code below while logged in as root:

cd /root
wget --no-check-certificate https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-7260-ucode-25.30.14.0.tgz
tar zxvf iwlwifi-7260-ucode-25.30.14.0.tgz
cd iwlwifi-7260-ucode-25.30.14.0
cp iwlwifi-7260-14.ucode /lib/firmware/.
reboot

3. Edit /etc/sysconfig/wpa_supplicant. Modify line 3 to look like this: INTERFACES="-iwlan0"

4. Edit /etc/wpa_supplicant/wpa_supplicant.conf. Insert the following lines at the end of the file after replacing the ssid and psk entries below with the actual name and password needed to access your WiFi network:

update_config=1
network={
 ssid="yourSSID"
 psk="yourSSIDpassword"
 key_mgmt=WPA-PSK
 scan_ssid=1
}

5. Edit /etc/sysconfig/network-scripts/ifcfg-wlan0. Change ONBOOT=no to ONBOOT=yes

6. Edit /etc/sysconfig/network. Add CRDA_DOMAIN=US

7. Edit /etc/sysconfig/knockd. Add OPTIONS="-i wlan0"

8. Set up a couple services to start on bootup (default=off):

chkconfig messagebus on
chkconfig wpa_supplicant on

9. Edit /etc/rc.local. Add the following lines immediately above the iptables-restart line in the file:

/sbin/ifup wlan0
/usr/local/sbin/amportal kill
/usr/local/sbin/amportal start
/etc/init.d/knockd restart

For those that are curious, step #9 is necessary because the system attempts to start these services before the wireless network is properly configured. And they fail. So… we simply restart them at the end of the boot procedure.

10. Reboot to bring everything on line properly. Check status for results.

11. We have observed interference issues between the wired and wireless networks occasionally. For that reason, once you have verified that your wireless network is functioning properly, we strongly recommend disabling eth0. Edit /etc/sysconfig/network-scripts/ifcfg-eth0. Change ONBOOT=yes to ONBOOT=no. Then reboot your server, and the interference problems disappear.

12. Down the road, if you’d prefer to use the wired network, just undo the settings in steps 5 – 9 and 11. Then reboot.

Deploying a Mobile Office with the Intel NUC

Some are probably wondering why you’d ever need WiFi with a Unified Communications platform. One reason for those that travel regularly is that you might want your PBX to ride along with you. Still others might want to use the Intel NUC for demonstrations at events such as this week’s AstriCon in Orlando. Using the Mobile HotSpot feature on your smartphone, WiFi access is easy even when there’s no local WiFi connection. Once configured, there’s no need for a keyboard or monitor with the Intel NUC. You can use Putty or SSH to access the server. While the Intel NUC is now a 12 volt device, you may not want to wrestle with building the necessary cable to connect it directly to a vehicle. An easier solution is to install an inexpensive power inverter and then use the standard power brick that came with the Intel NUC. The inVERT 100 Watt Portable Power Inverter does the trick for $35, or you might prefer this 150-watt BESTEK inverter from Amazon for $19. Don’t forget to adjust your SmartHost setting to accommodate your cellphone carrier’s SMTP host! Better yet, use gMail as your SMTP Relay host and never have to worry about it again. Then add the following line to your /etc/rc.local startup file with your email address, and your DHCP address will be sent to you whenever and wherever your server boots up:

echo "`cat /etc/hostip`" | mail -s "Intel NUC is UP" yourname@youremailserver.net

Enjoy your new Unified Communications System…



Originally published: Monday, October 12, 2015






Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

  1. We’ll have much more to say about virtualization soon as Proxmox has just introduced Proxmox VE 4.0 with support for KVM and Linux Containers. Stay tuned! []
  2. Some of our links refer users to Amazon or other service providers when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee from these providers to help cover the costs of our blog. We never recommend particular products solely to generate commissions. However, when pricing is comparable or availability is favorable, we support these providers because they support us. []

Introducing the Incredible PBX 13 ISO: A Turnkey Asterisk 13 Server for Everyman

11/22/2015: The Incredible PBX 13 ISO has been updated to support USB Flash installers. Click here for the latest tutorial.

We’ve spent much of 2015 developing a new GPL VoIP platform for virtually every Linux flavor in the universe with Incredible PBX installers for CentOS, Ubuntu, Debian, and Raspbian for the Raspberry Pi. Along the way we introduced the first turnkey aggregations for Asterisk® 13, an incredible new platform that’s been under development for several years. Until now, we’ve left the initial deployment of the operating system platform up to you. There were two principal reasons for shifting to this two-step install. First, there was the sale of CentOS to RedHat which set off red flags as to whether RedHat would now raise legal objections to bundling a superset of GPL applications with the base CentOS install, something which the original CentOS developers swore they would never do. Second, we didn’t want to get in the operating system business with maintenance of an independent repository to address security issues and to avoid legal issues from the RedHat folks.

But we heard from more than a few that the two-step process could be tedious especially for those that were new to Linux. Luckily, there’s another derivative of RHEL called Scientific Linux. As the name implies, it is used and was developed primarily to support the worldwide scientific community. Many have contributed to the Scientific Linux build over the years, but its principal sponsor is Fermi Lab which is managed by the Fermi Research Alliance LLC for the U.S. Department of Energy Office of Science. As a National Laboratory funded by the federal government, Fermi Lab’s work products including Scientific Linux constitute U.S. Government Works. As such, in addition to its GPL license, Scientific Linux can be used by others to create derivative works. That’s a long-winded explanation of why we’re now comfortable getting back into the ISO business and building an incredibly powerful unified communications system atop the Scientific Linux GNU platform. For those that have dealt with Asterisk aggregations over the past 10 years, this design is nothing particularly new. What is unique is the mix of features in the Incredible PBX aggregation. We begin with a preconfigured Asterisk 13 platform. Then we’ve added a large collection of FreePBX® GPL modules to create the web-based Incredible GUI for management of your server. Finally, we’ve integrated over three dozen applications for Asterisk as well as a preconfigured, functioning firewall to give you a rock-solid, secure UC VoIP platform with an unrivaled feature set for your home office or small business.

Installing Incredible PBX 13 with Scientific Linux 6.7

The installation procedure with the Incredible PBX 13 ISO couldn’t be easier. Start by downloading the 32-bit ISO from SourceForge to your desktop computer. The file name is IncrediblePBX13.iso. If you prefer a torrent, that’s available as well. The file name is IncrediblePBX13-12.2-SL67-ISO.torrent. After completing the download, if you’ll be using dedicated hardware for your platform, burn the ISO to a DVD using a Mac or Windows machine. Then boot your hardware from the device you just created. If you’re using a virtual machine such as VirtualBox, then designate the ISO as the VM boot device. Then start the virtual machine to begin the install.

When the installation begins, choose your time zone and create a very secure root password. After about 5 minutes, the Scientific Linux platform will be in place and your system will reboot. Agree to the Incredible PBX license agreement and press ENTER to complete the install. After one more reboot, you’ll be in business. Log in as root with your new password. After the Automatic Update Utility brings your system current, press ENTER after reviewing the status display for errors. To install Incredible Fax, issue this command and accept all the defaults by pressing ENTER: /root/incrediblefax11.sh
If you prefer secure OAUTH2 authentication for your Google Voice accounts, follow this tutorial beginning at step #1b.

UPDATE: Today’s build of Incredible PBX is now available in the RentPBX Cloud with your choice of Asterisk 11 or 13 in the following locales: Seattle, Los Angeles, Mountain View, Dallas, Chicago, Atlanta, Tampa, Miami, Ashburn/Washington D.C., New Jersey, Montreal, Toronto, Berlin, and Northern U.K. Use coupon code NOGOTCHAS for $15/month pricing.

To complete the install, perform the following from the Linux CLI while logged in as root:

  • Change your root password if it’s insecure: passwd
  • Set your FreePBX admin password: /root/admin-pw-change
  • Set your web apps admin password: htpasswd /etc/pbx/wwwpasswd admin
  • Set your admin password for AvantFax: /root/avantfax-pw-change
  • Set your correct time zone: /root/timezone-setup
  • Add WhiteList entries to firewall if needed: /root/add-ip or /root/add-fqdn
  • Store PortKnocker credentials in a safe place: cat /root/knock.FAQ
  • Login to your NeoRouter VPN server if desired: /root/nrclientcmd

Managing Your Server with Incredible PBX Web-Based Tools

Most of your time initially configuring and managing your server will be spent using the web-based tools provided with Incredible PBX. Using any modern browser, go to the IP address of your server as shown in the status display above. This will bring up the Kennonsoft GUI that provides access to all of the web-based applications. Toggle between User and Admin apps by clicking on the blue tab in the lower left section of the display. This GUI also displays the latest security alerts and bug fixes from the PIAF RSS Feed. We recommend you check it at least once a week.

The other GUI to configure the FreePBX® GPL modules is accessed from the Admin menu in the Kennonsoft menus. Choose Incredible GUI Administration. The default username is admin and the password is what you set during the final installation steps above. Once the Incredible PBX GUI appears, edit extension 701 so you can figure out (or change) the randomized passwords that were set up for your 701 extension and voicemail account: Applications -> Extensions -> 701. If you’re behind a hardware-based firewall, verify the NAT setting is set to YES.

Setting Up a Soft Phone to Use with Incredible PBX

Now you’re ready to set up a telephone so that you can play with Incredible PBX. We recommend YateClient which is free. Download it from here. Run YateClient once you’ve installed it and enter the credentials for the 701 extension on Incredible PBX. You’ll need the IP address of your server plus your extension 701 password. Choose Settings -> Accounts and click the New button. Fill in the blanks using the IP address of your server, 701 for your account name, and whatever password you created for the extension. Click OK.

Once you are registered to extension 701, close the Account window. Then click on YATE’s Telephony Tab and place some test calls to the numerous apps that are preconfigured on Incredible PBX. Dial a few of these to get started:


DEMO - Allison's IVR Demo
947 - Weather by ZIP Code
951 - Yahoo News
*61 - Time of Day
*68 - Wakeup Call
TODAY - Today in History

Now you’re ready to connect to the telephones in the rest of the world. If you live in the U.S., the easiest way (at least for now) is to set up a free Google Voice account. Google has threatened to shut this down but as this is written, it still works. Upgrading your server for OAUTH authentication is covered here. Start at step #1b. The safer long-term solution is to choose several SIP providers and set up redundant trunks for your incoming and outbound calls. The PIAF Forum includes dozens of recommendations to get you started.

Configuring Google Voice

If you want to use Google Voice, you’ll need a dedicated Google Voice account to support Incredible PBX. If you want to use the inbound fax capabilities of Incredible Fax, then you’ll need an additional Google Voice line that can be routed to the FAX custom destination using the GUI. The more obscure the username (with some embedded numbers), the better off you will be. This will keep folks from bombarding you with unsolicited Gtalk chat messages, and who knows what nefarious scheme will be discovered using Google messaging six months from now. So keep this account a secret!

We’ve tested this extensively using an existing Gmail account, and inbound calling is just not reliable. The reason seems to be that Google always chooses Gmail chat as the inbound call destination if there are multiple registrations from the same IP address. So, be reasonable. Do it our way! Set up a dedicated Gmail and Google Voice account, and use it exclusively with Incredible PBX. It’s free at least through 2013. Google Voice no longer is by invitation only so, if you’re in the U.S. or have a friend that is, head over to the Google Voice site and register.

You must choose a telephone number (aka DID) for your new account, or Google Voice calling will not work… in either direction. Google used to permit outbound Gtalk calls using a fake CallerID, but that obviously led to abuse so it’s over! You also have to tie your Google Voice account to at least one working phone number as part of the initial setup process. Your cellphone number will work just fine. Don’t skip this step either. Just enter the provided 2-digit confirmation code when you tell Google to place the test call to the phone number you entered. Once the number is registered, you can disable it if you’d like in Settings, Voice Setting, Phones. But…

IMPORTANT: Be sure to enable the Google Chat option as one of your phone destinations in Settings, Voice Setting, Phones. That’s the destination we need for The Incredible PBX to work its magic! Otherwise, all inbound and outbound calls will fail. If you don’t see this option, you may need to call up Gmail and enable Google Chat there first. Then go back to the Google Voice Settings.

While you’re still in Google Voice Settings, click on the Calls tab. Make sure your settings match these:

  • Call ScreeningOFF
  • Call PresentationOFF
  • Caller ID (In)Display Caller’s Number
  • Caller ID (Out)Don’t Change Anything
  • Do Not DisturbOFF
  • Call Options (Enable Recording)OFF
  • Global Spam FilteringON

Click Save Changes once you adjust your settings. Under the Voicemail tab, plug in your email address so you get notified of new voicemails. Down the road, receipt of a Google Voice voicemail will be a big hint that something has come unglued on your PBX.

One final word of caution is in order regardless of your choice of providers: Do NOT use special characters in any provider passwords, or nothing will work!

Now you’re ready to set up your Google Voice trunk in the GUI. After logging in with your browser, click the Connectivity tab and choose Google Voice/Motif. To Add a new Google Voice account, just fill out the form. Do NOT check the third box or incoming calls will never ring!

IMPORTANT LAST STEP: Google Voice will not work unless you restart Asterisk from the Linux command line at this juncture. Using SSH, log into your server as root and issue the following command: amportal restart.

If you have trouble getting Google Voice to work (especially if you have previously used your Google Voice account from a different IP address), try this Google Voice Reset Procedure. It usually fixes connectivity problems. If it still doesn’t work, enable Less Secure Apps using this Google tool.

Troubleshooting Audio and DTMF Problems

You can avoid one-way audio on calls and touchtones that don’t work with these simple settings in the GUI: Settings -> Asterisk SIP Settings. Just plug in your public IP address and your private IP subnet. Then set ULAW as the only Audio Codec.

A Few Words about the Incredible PBX Security Model for SL 6.7

Incredible PBX for Scientific Linux joins our previous builds as our most secure turnkey PBX implementation. As configured, it is protected by both Fail2Ban and a hardened configuration of the IPtables Linux firewall. The latest release also includes Port Knocker for simple, secure access from any remote computer or smartphone. You can get up to speed on how the technology works by reading the Nerd Vittles tutorial. Your Port Knocker credentials are stored in /root/knock.FAQ together with activation instructions for your server and mobile devices. The NeoRouter VPN client also is included for rock-solid, secure connectivity to remote users. Read our previous tutorial for setup instructions. As configured, nobody can access your PBX without your credentials AND an IP address that is either on your private network or that matches the IP address of your server or the PC from which you installed Incredible PBX. You can whitelist additional IP addresses by running the command-line utility /root/add-ip. You can remove whitelisted IP addresses by running /root/del-acct. Incredible PBX is preconfigured to let you connect to many of the leading SIP hosting providers without additional firewall tweaking. We always recommend you also add an extra layer of protection by running your server behind a hardware-based firewall with no Internet port exposure, but that’s your call. And it’s your phone bill. 😉

The IPtables firewall is a complex piece of software. If you need assistance with configuring it, visit the PIAF Forum for some friendly assistance.

Incredible Backup and Restore

We’re pleased to introduce our latest backup and restore utilities for Incredible PBX. Running /root/incrediblebackup will create a backup image of your server in /tmp. This backup image then can be copied to any other medium desired for storage. To restore it to another Incredible PBX server, simply copy the image to a server running Asterisk 13 and the same version of the Incredible PBX GUI. Then run /root/incrediblerestore. Doesn’t get much simpler than that.

Incredible PBX Automatic Update Utility

Every time you log into your server as root, Incredible PBX will ping the IncrediblePBX.com web site to determine whether one or more updates are available to bring your server up to current specs. We recommend you log in at least once a week just in case some new security vulnerability should come along.

In the meantime, we encourage you to sign up for an account on the PIAF Forum and join the discussion. In addition to providing first-class, free support, we think you’ll enjoy the camaraderie.

Incredible PBX Application Users Guide

Your next stop ought to be learning about the three dozen applications included in Incredible PBX. We’ve put together this tutorial to get you started. Enjoy!

And, to our friends at Google, thank you!

Originally published: Sunday, September 27, 2015


Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Unlike some forums, ours is extremely friendly and is supported by literally hundreds of Asterisk gurus and thousands of users just like you. You won’t have to wait long for an answer to your question.






Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

The Return of the 5-Minute PBX: Incredible PBX (Certified Edition) for VirtualBox

Today we’re paying a fresh visit to our favorite virtual machine platform and introducing a turnkey unified communications server for home, SOHO, and small business use. Unlike last week’s platform that required a $35 investment in a Raspberry Pi 2, this week’s offering requires zero hardware investment. And you still get the same software collection at the same great price, totally free… as in beer. The VirtualBox® platform runs atop any Windows PC, Mac, Linux desktop, or Solaris machine and uses a small portion of the desktop computer’s available resources. Other than that, everything works just as if you were running your PBX on standalone hardware.

Today’s release is built atop the new Scientific Linux™ 6.7 platform and features the latest LTS release of Asterisk® 13 and a terrific collection of GPL modules from FreePBX® 12. It also is our first opportunity to showcase one of our new Certified Incredible PBX™ builds. Certification is a new process that involves rigorous testing of the entire Incredible PBX platform to verify that every component is not only reliable but also works in harmony with the rest of the pieces of the unified communications suite. You’ll find all of them here. Think of Incredible PBX as the glue stick that assembles all the necessary VoIP components and holds them together seamlessly. As with all Incredible PBX builds, you also get the full complement of goodies including dozens of text-to-speech apps, voice recognition and dialing, SMS messaging, free fax support, reminders and wakeup calls, and SECURITY! The other major advantage of Incredible PBX on the VirtualBox platform is a turnkey install in less than 5 minutes! Just choose the Windows PC, Mac, Linux desktop, or Solaris machine and off you go.

Is VirtualBox merely a sandbox for experimentation? Absolutely not. With any of the beefier desktop computers available today, running Incredible PBX as a 24/7 VirtualBox image is every bit as feature rich with stellar performance that’s equivalent to using dedicated hardware. And there are some added advantages. Obviously, deploying a turnkey VoIP platform in under 5 minutes is a major plus. But, unlike using a dedicated Linux platform, you also get the ability to take snapshots of your system and do full backups in minutes instead of the hours required to bring down dedicated hardware, load a different backup application using a different operating system, perform a backup, and then reboot your VoIP server. And your backups won’t just run on the one server on which the backup was performed. You can restore the backup to any other computer that can run VirtualBox. For any of you that came from a network management background, you know what a big deal that really is. And there’s one more bonus. With Incredible Backup and Restore, you can move your image to dedicated hardware running the same operating system with Asterisk 13 and the same GUI platform in minutes.

Need to deploy VoIP servers at dozens of sites around the globe? Not a problem with VirtualBox. Just send a preconfigured VirtualBox image to each site and install VirtualBox on a local desktop computer. In 5 minutes, you have a functional VoIP server including interconnectivity to all of your other VoIP servers with a virtual private network already in place to provide secure VoIP connectivity between all of your sites.

Are there security compromises using the VirtualBox platform? Not at all. Incredible PBX still comes preconfigured with the Linux IPtables firewall that is locked down to a whitelist of local area networks, preferred providers, and your own IP addresses. You can expand the whitelist using the add-ip and add-fqdn scripts or use PortKnocker and Travelin’ Man 4 tools to let remote users gain instant access.

Getting Started. For today, we’ll provide a refresher course on loading VirtualBox and the new Incredible PBX virtual image. Then we want to spend a little time explaining the secret sauce that goes into building these images so that you can do it yourself either to migrate to a different network or to deploy at multiple sites. When we’re finished, you’ll know everything we’ve learned about deploying VirtualBox machines and, unlike Grandma, we won’t leave an important ingredient out of the recipe just to be sure you never forget how good Grandma’s cookies really were. So let’s get started.

Installing Oracle VM VirtualBox 5

Oracle’s virtual machine platform inherited from Sun is amazing. It’s not only free, but it’s pure GPL2 code. VirtualBox gives you a virtual machine platform that runs on top of any desktop operating system. In terms of limitations, we haven’t found any although VirtualBox 5 can be a little quirky on some platforms. If you have trouble with getting a clean status report with VirtualBox 5, just drop back to the final release of VirtualBox 4. We tested VirtualBox 4 on an Atom-based Windows 7 machine with 2GB of RAM, and it worked without a hiccup. So step #1 today is to download one or more of the VirtualBox installers from VirtualBox.org or Oracle.com. Our recommendation is to put all of the 100MB installers on a 4GB thumb drive.1 Then you’ll have everything in one place whenever and wherever you happen to need it. Once you’ve downloaded the software, simply install it onto your favorite desktop machine. Accept all of the default settings, and you’ll be good to go. And here’s a link to the latest Oracle VM VirtualBox User Manual.

Downloading the Incredible PBX Virtual Machine

A word of warning on the front end. The Incredible PBX image featuring Asterisk 13 for VirtualBox is huge, about 3GB! There are two ways to grab the .ova image. You can either download the image directly from here or from SourceForge. Or, for better performance, download the torrent and let multiple servers help you get the software quicker. Usually download times are cut by 70% or more. The MD5 checksum is 6037b8319ce9070270474889af76f86d.

Importing & Configuring the Incredible PBX Virtual Machine in VirtualBox

You only perform the import step one time. Once imported into VirtualBox, Incredible PBX is ready to use. There’s no further installation required, just like an OpenVZ template… only better. Double-click on the .ova file you downloaded to begin the procedure and load it into VirtualBox. When prompted, be sure to check the Reinitialize the Mac address of all network cards box and then click the Import button. Once the import is finished, you’ll see a new Incredible PBX virtual machine in your VM List on the VirtualBox Manager Window. We need to make a couple of one-time adjustments to the Incredible PBX VM configuration to account for differences in sound and network cards on different host machines.

Click on the Incredible PBX Virtual Machine in the VM List. Then click Settings -> Audio and check the Enable Audio option and choose your sound card. Save your setup by clicking the OK button. Next click Settings -> Network. For Adapter 1, check the Enable Network Adapter option. From the Attached to pull-down menu, choose Bridged Adapter. Then select your network card from the Name list. Then click OK. That’s all the configuration that is necessary for your Incredible PBX Virtual Machine. The rest is automagic.

Running Incredible PBX Virtual Machine in VirtualBox

Once you’ve imported and configured the Incredible PBX Virtual Machine, you’re ready to go. Highlight IncrediblePBX Virtual Machine in the VM List on the VirtualBox Manager Window and click the Start button. The SL67 OS boot procedure will begin just as if you had installed Incredible PBX on a standalone machine. You’ll see a couple of dialogue boxes pop up that explain the keystrokes to move back and forth between your host operating system desktop and your virtual machine. Remember, you still have full access to your desktop computer. Incredible PBX is merely running as a task in a VirtualBox window. Always gracefully halt Incredible PBX just as you would on a dedicated computer.

Here’s what you need to know. To work in the Incredible PBX Virtual Machine, just left-click your mouse while it is positioned inside the VM window. To return to your host operating system desktop, press the right Option key on Windows machines or the left Command key on any Mac. For other operating systems, read the dialogue boxes for instructions on moving around. To access the Linux CLI, login as root with the default password: password.

When logging in for the first time, Incredible PBX will go through some setup steps and then reboot. Login again to complete the setup. status will always provide a snapshot of your system. To shut down Incredible PBX gracefully, click in the VM window with your mouse, log in as root, and type: halt. Be sure to complete the following setup steps from the Linux CLI:

  • Change your root password: passwd
  • Set your FreePBX admin password: /root/admin-pw-change
  • Set your admin password and email address for AvantFax: /root/avantfax-pw-change
  • Set your web apps admin password: htpasswd /etc/pbx/wwwpasswd admin
  • Set your correct time zone: /root/timezone-setup
  • Add WhiteList entries to firewall if needed: /root/add-ip or /root/add-fqdn
  • Store PortKnocker credentials in a safe place: cat /root/knock.FAQ
  • Login to your NeoRouter VPN server if desired: /root/nrclientcmd

To access the Incredible PBX GUI with a browser, point to the IP address of your virtual machine and login as admin with admin password set above. We recommend that you log in to the Linux CLI at least once a week so that Incredible PBX updates get applied to your server regularly. This is critically important if you care about your phone bill.

Preparing Incredible PBX Virtual Machine for Migration

As the Linux operating systems have become more turnkey, one of the shortcuts that has been implemented on both the RedHat and Debian/Ubuntu platforms is storage of your network setup so that the server reboots more quickly. While that’s fine for rebooting on the same server, it’s a real problem if you attempt to move your setup to different hardware or a new network because eth0 will not load. That means no IP address! Here are two ways to assure that things will actually work after the move. Both assume that you will have a DHCP server at the new location just as you did at your existing site.

The Easy Way. If you have console access after the VM image is restored on the new platform (which means you don’t need a network IP address for the server in order to log in as root), then the easy way to prepare any of the Incredible PBX machines for relocation is to issue the following commands before you halt the system and make a VirtualBox backup:

touch /etc/update_hostconfig
touch /etc/update_serverconfig

Once you have halted the server, edit both the sound card and network card settings and disable both of them in VirtualBox Manager. Then choose File -> Export Appliance from the VirtualBox title bar and create a .ova backup image on your desktop. You now have an image that is similar to the Incredible PBX image that you originally downloaded, except it has all of your data and settings. All you have to do is repeat the install drill above at the new location using the .ova image you created and log in with whatever your current root password happens to be. You’ll get a two-pass automatic setup just as you did when you began today’s adventure.

The only drawback to this procedure is the fact that the extension 701 and default DISA passwords will be initialized when you first boot from your .ova image at the other location. Aside from that, you’ll have a clean platform with new SSH and DUNDI credentials as well as mostly sanitized log files.

The Hard Way. The other alternative is to manually prepare your existing system for migration before you shut it down. The primary reason for doing this would be to assure that you can log in with an SSH client at the other end as soon as the server is booted. The steps differ a bit depending upon whether you’re on the Ubuntu or Scientific Linux platform. But on both platforms you need to enter the IP address from which you will log in at the new site unless it is on one of the private LAN subnets that already is whitelisted in IPtables. Just issue the command /root/add-ip and choose 0 option to enable all services for the new IP address. Then…

On the Scientific Linux platform, issue the following commands:

touch /etc/update_hostconfig
touch /etc/update_serverconfig
rm -f /var/lib/dhcpd/*
rm -f /var/lib/dhclient/*
rm -f /etc/udev/rules.d/70*
halt

On the Ubuntu platform, issue the following commands:

touch /etc/update_hostconfig
touch /etc/update_serverconfig
rm -f /var/lib/dhcp/*
rm -f /etc/udev/rules.d/70*
halt

Once you have halted the server, edit both the sound card and network card settings and disable both of them in VirtualBox Manager. Then choose File -> Export Appliance from the VirtualBox title bar and create a .ova backup image on your desktop. Now you’re an expert. Enjoy!

Originally published: Monday, September 14, 2014


Support Issues. With any application as sophisticated as this one, you’re bound to have questions. Blog comments are a terrible place to handle support issues although we welcome general comments about our articles and software. If you have particular support issues, we encourage you to get actively involved in the PBX in a Flash Forums. It’s the best Asterisk tech support site in the business, and it’s all free! Please have a look and post your support questions there. Our forum is extremely friendly and is supported by literally hundreds of Asterisk gurus.



Need help with Asterisk? Visit the PBX in a Flash Forum.


 
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.


Some Recent Nerd Vittles Articles of Interest…

  1. Many of our purchase links refer users to Amazon when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee from Amazon to help cover the costs of our blog. We never recommend particular products solely to generate Amazon commissions. However, when pricing is comparable or availability is favorable, we support Amazon because Amazon supports us. []