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.
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.
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 Screening – OFF
- Call Presentation – OFF
- Caller ID (In) – Display Caller’s Number
- Caller ID (Out) – Don’t Change Anything
- Do Not Disturb – OFF
- Call Options (Enable Recording) – OFF
- Global Spam Filtering – ON
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 PBX in a Flash and Incredible PBX users. 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. And, when you use our special link to sign up, the Nerd Vittles, PBX in a Flash, and Incredible PBX projects get a few shekels down the road 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. Do not use this 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…
- 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! [↩]