With the release of version 3 of PBX in a Flash™, it seemed only fitting to reintroduce our one-click wonder that takes advantage of the latest and greatest feature sets in both Asterisk® 11 and FreePBX® 2.11. Incredible PBX™ 11 gives you the best of all worlds plus all of the very best, preconfigured Asterisk applications we could find. And the installer together with all of the apps are pure open source so you can learn how to build a system like this for yourself if that happens to be your thing.
You’ll need two components to get started: a CentOS 6.5-compatible operating system and the latest PIAF-Green which includes Asterisk® 11 and FreePBX® 2.11. Once you have these components in place and before you make any additions to your server, download and run the Incredible PBX 11 installer. If you wish to add fax support, run the Incredible Fax 11 installer. It’s easy enough for a fifth grader! Five minutes later you’re ready to begin the VoIP adventure. It’s FREE!
So what’s included? Dozens of upgraded Asterisk Apps. 9-Layer Security. 20 Preconfigured VoIP Provider Trunks. One-Click Installers for Asterisk.everything. Certified Asterisk support. Google Voice connectivity with Asterisk Motif until May 15. (HINT: It’s time to start looking elsewhere!) Voice-enabled SMS messaging and script-based SMS message blasting. Incredible PBX Automatic Updates. And Incredible Fax™ 11 delivers free faxing with HylaFax™ and AvantFax®. Both the Incredible PBX and Incredible Fax installers now are GPL2-licensed so add all the tweaks you like. And you’re licensed to use our trademarks so long as you retain the original functionality of the Incredible PBX and Incredible Fax collection of applications.
The Incredible PBX 11 Inventory. For those that have never heard of The Incredible PBX, here’s the current 11.9 feature set in addition to the base install of PBX in a Flash with a CentOS 6.5-compatible OS, Asterisk 11, FreePBX 2.11, and Apache, SendMail, MySQL, PHP, phpMyAdmin, IPtables Linux firewall, Fail2Ban, and WebMin. Incredible Fax, NeoRouter and PPTP VPNs, and all sorts of backup solutions are still just one command away and may be installed using the scripts included with Incredible PBX 11 and PBX in a Flash. Type help-pbx and browse /root for dozens of one-click installation scripts.
- CallerID Superfecta (FreePBX Module adds Names to CID Numbers)
- CallWho for Asterisk (Dial 411)
- Digium Phone Support (install-digiphones)
- Preconfigured Email That Works with SendMail and Incredible Fax
- OSS Endpoint Manager
- Extensions (1 preconfigured with random password)
- Festival Server and Festival TTS for Asterisk (festival –server &)
- Flite TTS for Asterisk
- FreePBX Backups
- Google Dictionary by Phone (Dial 333)
- Google News by Phone (Dial 951)
- Google Stocks by Phone (Dial 950)
- Google Voice (FreePBX GV/Motif Module)
- Hotel-Style Wakeup Calls (FreePBX Module)
- Incredible Backups… and Restores (install-incredbackup2)
- ISN: FreeNum SIP Calling from Any Phone
- MeetMe Conference Bridge (just dial C-O-N-F)
- Mondo Full System Backups (install-diskbackup)
- Incredible Fax 11 (/root/incrediblefax11.sh)
- Incremental Daily Backups (install-dailybackup)
- Munin Reports (install-munin)
- NeoRouter VPN Client (nrclientcmd)
- NewsClips from Yahoo
- ODBC Database Support (Dial 222, 223)
- OpenFire Instant Messaging & Chat Server (install-openfire)
- New PBX in a Flash Registry (show-registry)
- PPTP VPN for PIAF (/root/install-pptp)
- Reminders by Phone and Web
- SAMBA Windows Networking (configure-samba)
- SMS Dictator with Google Voice (Dial S-M-S)
- Speech-to-Text Directory Assistance (Dial 411)
- Stealth AutoAttendant
- TFTP Server (setup-tftp)
- Tide Reports with xTide (Dial T-I-D-E)
- Travelin’ Man 2 & 3 (Secure, remote access)
- Trunks (Vitelity, Gtalk, SIPgate, IPkall, VoIP.ms, and more)
- Weather by ZIP Code
- Worldwide Weather by Phone (Dial 949)
- Wolfram Alpha by Phone (/root/wolfram)
And then there’s the Incredible Freebie! As they say, “Never look a gift horse in the mouth.” What began as a kludgey, dual-call, dual-provider Google Voice implementation to take advantage of Google’s free PSTN calling in the U.S. and Canada with Asterisk 1.4 and 1.6 is now a zippy-quick, Gtalk-based calling platform that rivals the best SIP-to-SIP calls on the planet. The Incredible PBX Google Voice implementation provides virtually instantaneous PSTN connections to almost anybody, anywhere. Trust us! Except for the price which is still free, you’ll never know you weren’t connected via Ma Bell’s overpriced long-distance lines and neither will the Little Mrs.
Creating the Base Linux Platform for PBX in a Flash
We’re not doing anything special here. In fact, you can build your base Linux platform for PBX in a Flash on a standalone server, on a virtual machine of your choice, or in the cloud using a provider such as Amazon or RentPBX. You can use CentOS 6.5, Scientific Linux 6.5, or the PIAF 6.5 OS. The easiest way is documented here because the ISO is the smallest to download and install. The results will be the same with the other Linux OS flavors documented above.
Start by downloading the 32-bit or 64-bit CentOS 6.5 minimal install ISO. You can do exactly the same thing using Scientific Linux if you prefer. The PIAF 22.214.171.124 OS images and torrents for VirtualBox are available on SourceForge. With the ISOs, go through the usual drill of preparing an installer from the ISO. Burn the ISO to a USB Thumb Drive or a CD/DVD using a Mac or Windows machine. With VirtualBox .ova images, you can build a virtual machine in under 2 minutes. So pick your favorite methodology and create your Linux platform on the hardware of your choice. If you want your drive partitions configured without LVM in the standard PIAF2 methodology, follow this tutorial.
IMPORTANT NOTE: Neither CentOS nor Scientific Linux installs with network connectivity enabled. This is one of the primary reasons that we previously have customized CentOS for use with PBX in a Flash. After performing a minimal OS install, log in as root and issue the following commands to prepare your server for PBX in a Flash:
sed -i 's|no|yes|' /etc/sysconfig/network-scripts/ifcfg-eth0
yum -y install wget nano
Creating a PBX in a Flash 126.96.36.199 Server
Now you’re ready to install PIAF-Green with Asterisk 11 and FreePBX 2.11. Just download the PIAF3 Installer and run it. It works exactly as it always has. The installer is plain text so feel free to customize it to meet your own requirements. If you need the complete PIAF installation tutorial, jump to this link.
tar zxvf piaf3-install.tar.gz
Installing Incredible PBX 11
The installation process is simple. Log into your server as root and issue the following commands:
chmod +x incrediblepbx11
When the installation finishes, you’ll be prompted whether to install Travelin’ Man 3 and Travelin’ Man 2. As documented below, Incredible PBX is designed for use behind a hardware-based firewall with no Internet port exposure. If you need phones at remote locations that are not behind your firewall, then you also need a way to protect your server from the bad guys since you’ll have to allow port 5060 and 10000-20000 UDP access to your server through the firewall. Travelin’ Man 3 does this by setting up a whitelist of safe Internet addresses and domains. Travelin’ Man 2 lets end-users take control by creating safe IP addresses using a web browser. If you don’t have external phones, you don’t need either of these resources so you can just cancel the rest of the Incredible PBX install by pressing Ctrl-C. Then restart Asterisk with this command: amportal restart.
A Few Words About Security. Thanks to its Zero Internet Footprint™ design, Incredible PBX is different. It remains the most secure Asterisk-based PBX around. What this means is The Incredible PBX has been engineered to sit safely behind a NAT-based, hardware firewall with no Internet port exposure to your actual server. For those needing remote telephone support, Incredible PBX optionally loads Travelin’ Man 2 and 3 for you so your IPtables Linux Firewall can be either self-managed by end-users or set up with predefined IP addresses and FQDNs for all of your remote sites. Read about this Asterisk SIP vulnerability. Then you’ll understand why WhiteList-based server security has become absolutely essential. WhiteList Security means only those devices with a registered IP address in your WhiteList can get to your server’s resources. To the NSA and everyone else, your server doesn’t even exist. Their only way to connect to you is with a POTS telephone and your published phone number. Can you hear me now?
For those with multiple servers to interconnect, we’ve provided one-click installers for not one but two VPN solutions: NeoRouter and PPTP. Suffice it to say, Incredible PBX has Security in Spades™: customized IPtables Linux Firewall, Fail2Ban tweaked for Asterisk security monitoring, FreePBX Extension Lockdown by IP address, randomized FreePBX extension passwords, Travelin’ Man 2 and 3 WhiteList Security, multiple VPN solutions for encrypted server-to-server communications, plus a bottom-up design focused on flawless operation behind a hardware-based firewall. You won’t find a more secure Personal Branch Exchange™ at any price.
Here’s the Incredible PBX 9-Layer Security Model:
- Hardware-based Firewall
- Randomized Extension Passwords
- IP-Address Lockdown for Extensions
- Travelin’ Man 2 User-Managed WhiteList
- Travelin’ Man 3 Administrator-Managed WhiteList
- NeoRouter VPN
- PPTP VPN
Prerequisites. For standalone hardware buffs, here’s what we recommend to get started properly:
- Broadband Internet connection
- $200 Dual-Core Atom PC, 4GB RAM, 60GB SSD (no moving parts!)
- dLink Router/Firewall. Low Cost: $35 WBR-2310 Best: DGL-4500 Latest: DIR-826-L
- 2 Dedicated Google Voice accounts (voice and fax)
We’ve shifted gears on our recommended Atom platform for PIAF3 after excellent results with both the single-core and dual-core Atom kits manufactured by Foxconn (pictured on the left below). That’s the dLink Gaming Router on the right. Seems kinda silly to spend twice as much for a machine that you can build yourself in under 5 minutes. Basically you remove four screws, insert a Phillips screwdriver in one of the holes and gently pry the cover away from the box. Then you pop off the back by inserting a small flat-blade screwdriver, remove four more screws, slide in a solid-state drive (SSD) and a 4GB stick of notebook computer RAM, and you’re done in a couple minutes. Replace the screws and the cover, and you have a perfect PIAF2 platform with terrific performance and no moving parts for about $200. The link above will take you to the PIAF Forum thread for these machines. They go on sale almost weekly. See the right column of Nerd Vittles (just below our tweets) for this week’s special at Amazon. The dual-core Atom box typically is under $150. It could easily handle an office with 50+ employees sitting on a bookshelf with an Internet connection (wired or wireless!). No noise. Very little heat. Low power requirements. Perfect!
Configuring Google Voice
If you plan to use Google Voice, be advised that, according to Google, it’s going away in less than 6 weeks on May 15. If you want to use it anyway, you’ll need a dedicated Google Voice account to support Incredible PBX 11. If you want to use the inbound fax capabilities of Incredible Fax 11, then you’ll need an additional Google Voice line that can be routed to the FAX custom destination using FreePBX. 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 11. 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!
Accessing The FreePBX 2.11 GUI
Using a web browser, you access the FreePBX GUI by pointing your browser to the IP address of Incredible PBX 11. Click on the Users tab. It will change to Admin. Now click the FreePBX Admin button. When prompted for a username, it’s maint. When prompted for the password, it’s whatever you set up as your maint password when you installed PBX in a Flash. If you forget it, you can always reset it by logging into your server as root and running passwd-master.
Configuring Google Voice Trunks in FreePBX. All trunk configurations now are managed within FreePBX, including Google Voice. This makes it easy to customize your Incredible PBX to meet your specific needs. If you plan to use Google Voice, here’s how to quickly configure one or more Google Voice trunks within FreePBX. After logging into FreePBX 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!
While you’re still in FreePBX, choose Applications, Extensions, and click on the 701 extension. Write down your extension and voicemail passwords. You’ll need them to configure a phone in a minute.
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.
Installing Incredible Fax 11
If you want the added convenience of having your Incredible PBX double as a free fax machine, run /root/incrediblefax11.sh after the Incredible PBX 11 install completes. Plug in your email address for delivery of incoming faxes and enter your home area code when prompted. For every other prompt, just press the Enter key. If you’d like to also add the optional OCR utility, just choose it when prompted. For complete documentation, see this Nerd Vittles article. Don’t forget that a REBOOT OF YOUR SERVER is required when the install is finished, or faxing won’t work! Then log in through the PIAF GUI as maint with your password. You’ll find the AvantFax GUI on the Admin menu.
Also be sure to set up a second, dedicated DID or Google Voice trunk if you want support for inbound faxing. Once the credentials are configured in FreePBX for the additional line, simply add an Inbound Route for this DID to point to the Custom Destination: Fax (Hylafax). This comes preconfigured with Incredible PBX 11.
Troubleshooting Audio and DTMF Problems
You can avoid one-way audio on calls and touchtones that don’t work with these simple settings in FreePBX: Settings -> Asterisk SIP Settings. Just plug in your public IP address and your private IP subnet. Then set ULAW as the only Audio Codec.
Configuring a Desktop Softphone
PBX in a Flash supports all kinds of telephones, but we’ll start with the easy (free) one today. You can move on to “real phones” once you’re smitten with the VoIP bug. For today, you’ll need to download a softphone to your desktop PC or Mac.
The easiest way to get started is to set up a YATE softphone on your Desktop computer. Versions are available at no cost for Macs, PCs, and Linux machines. Just download the appropriate one and install it from this link. Once installed, it’s a simple matter to plug in your extension credentials and start making calls. Run the application and choose Settings -> Accounts and click the New button. Fill in the blanks using the IP address of your server, 201 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 your first call. It’s that easy!
Taking Incredible PBX 11 for a Spin
The proof is in the pudding as they say. So let’s try two simple tests. First, let’s place an outbound call. Using the softphone, dial your 10-digit cellphone number. Google Voice or your other SIP trunk should transparently connect you. Answer the call and make sure you can send and receive voice on both phones. Second, from another phone, call the number that you’ve dedicated to The Incredible PBX. Your softphone should begin ringing shortly. The call will be answered by the Nerd Vittles sample IVR. You can explore all of the preconfigured options at your leisure.
Learn First. Explore Second. Even though the installation process has been completed, we strongly recommend you do some reading before you begin your VoIP adventure. VoIP PBX systems have become a favorite target of the hackers and crackers around the world and, unless you have an unlimited bank account, you need to take some time learning where the minefields are in today’s VoIP world. Start by reading our Primer on Asterisk Security. We’ve secured all of your passwords except your root password and your passwd-master password. We’re assuming you’ve put very secure passwords on those accounts as if your phone bill depended upon it. It does! There’s loads of additional documentation on the PBX in a Flash documentation web site.
Incredible PBX 11 Automatic Update Utility
Incredible PBX 11 includes an automatic update utility to assist in keeping your system current and secure. It runs each time you log into your server as root. The first ten updates are at no cost. You then can elect to continue the service by subscribing to the update service which is available for a modest $20 for the remainder of the calendar year. Whether you subscribe or not, new releases of PBX in a Flash and Incredible PBX will always be free! This simply is a way for us to recover our costs in providing a service that many of our users have asked for. We hope you like it.
Choosing VoIP Providers
Nothing beats free when it comes to long distance calls. But nothing lasts forever. And, in the VoIP World, redundancy is dirt cheap. So we strongly recommend you set up another account with Vitelity using our special link below. This gives your PBX a secondary way to communicate with every telephone in the world, and it also gets you a second real phone number for your new system… so that people can call you. Here’s how it works. You pay Vitelity a deposit for phone service. They then will bill you $3.99 a month for your new phone number. This $3.99 also covers the cost of unlimited inbound calls (two at a time) delivered to your PBX for the month. For outbound calls, you pay by the minute and the cost is determined by where you’re calling. If you’re in the U.S., outbound calls to anywhere in the U.S. are a little over a penny a minute. If you change your mind about Vitelity and want a refund of the balance in your account, all you have to do is ask. The trunks for Vitelity already are preconfigured with The Incredible PBX. Just insert your credentials using FreePBX and uncheck the Disable Trunk checkbox. Then add the Vitelity trunk as the third destination for your default outbound route. That’s it. Congratulations! You now have a totally redundant phone system.
Incredible PBX 11 includes preconfigured trunk setups for all of your favorite trunk providers. Just plug in your credentials and activate the trunks you need. In less than a minute, you’re done. Here’s the Incredible PBX Top 20 Trunk List with some reasons why these providers made our short list:
- AxVoice ($14.99/mo. Business Plan; $16.58/mo. Unlimited Calls to 45 Countries)
- CallCentric (Good International Calling Rates)
- DIDforSale (20 channels per DID; unlimited DID calls for $8.99/mo.)
- FlowRoute (Good International Calling Rates)
- Future-Nine (Supports CallerID Spoofing)
- Google Voice (Free DIDs and free U.S./Canada calling)
- IPkall (Free SIP/IAX DIDs)
- Les.net (Supports CallerID Spoofing; very low rates)
- LocalPhone (Dirt-cheap DIDs and calling rates worldwide; Free iNum DID)
- Simon Telephonics (Free SIP-to-GoogleVoice Gateway)
- SIPgate (Free residential DIDs sometimes)
- Skype (Free Skype-to-Skype calls worldwide)
- Teliax (Unlimited inbound DID $5/mo.)
- Vitelity (Our supporter and the Best in the Business!)
- VoIPms (CallerID spoofing; Free iNum calling; Very low rates)
- VoIPMyWay (Residential Unlimited: $15.50/mo. Business Unlimited: $40/mo.)
- VoIPStreet (Free DID)
Configuring Email Noticing in FreePBX
You’re going to want to be notified when updates are available for FreePBX, and you may also want notifications when new voicemails arrive. Everything already is set up for you except actually entering your email notification address. Using a web browser, open the FreePBX GUI by pointing your browser to the IP address of your Incredible PBX. Then click Administration and choose FreePBX. To set your email address for FreePBX updates, go to Admin -> Module Admin and click on the shield on the right margin. To configure emails to notify you of incoming voicemails, go to Applications -> Extensions -> 701 and scroll to the bottom of the screen. Then follow your nose. Be sure to reload FreePBX when prompted after saving your changes.
A Final Word About Security
In case you couldn’t tell, security matters to us, and it should matter to you. Not only is the safety of your system at stake but also your wallet and the safety of other folks’ systems. Unless you subscribe to the new Automatic Update Utility, our only means of alerting you to security issues which arise is through the RSS Feed that we maintain for the PBX in a Flash project. This feed is prominently displayed in the web GUI which you can access with any browser pointed to the IP address of your server. Check It Daily! Or add our RSS Feed to your favorite RSS Reader. We also recommend you follow @NerdUno on Twitter. We’ll keep you entertained and provide immediate notification of security problems that we hear about. Finally, visit the PIAF Forums regularly. You’ll be surprised what you can learn in 10 minutes of browsing. Be safe!
Kicking the Tires
NEWS FLASH: Google Speech Recognition was an integral part of several Incredible PBX apps including the 949 Weather Reports and 411 Phonebook Directory Lookups with AsteriDex. Google changed their API to now require a personal API key for further use of the service. Thanks to Lefteris Zafiris, the speech recognition engine has been restored to operation. For instructions on obtaining your own API key and for properly reconfiguring your system to support speech-to-text, see this thread on the PIAF Forum. Google’s API is for personal and development use only!
That’s enough tutorial for today. Let’s play. Using your new softphone, begin your adventure by dialing these extensions:
- D-E-M-O – Incredible PBX Demo (running on your PBX)
- T-I-D-E – Get today’s tides and lunar schedule for any U.S. port
- 4-1-1 – Phonebook lookup/dialer with AsteriDex
- C-O-N-F – Set up a MeetMe Conference on the fly (PIN: 1234)
- 1-2-3 – Schedule regular/recurring reminder (PW: 12345678)
- 2-2-2 – ODBC/Timeclock Lookup Demo (Empl No: 12345)
- 2-2-3 – ODBC/AsteriDex Lookup Demo (Code: AME)
- 3-3-3 – Look up a definition for any word or term
- 9-4-9 – Weather forecast for any city in the world
- 9-5-0 – Retrieve stock report by stock symbol
- 9-5-1 – Latest Google News headlines
- Dial *68 – Schedule a hotel-style wakeup call from any extension
Don’t forget to List Yourself in Directory Assistance so everyone can find you by dialing 411. And add your new number to the Do Not Call Registry to block telemarketing calls. Or just call 888-382-1222 from your new number.
Deals of the Week. A relatively new company called Copy.com is offering 20GB of free cloud storage with no restrictions on file size uploads (which are all too common with other free offers). Copy.com has free sync apps for Windows, Macs, and Linux systems. To take advantage of the offer, just click on our referral link here. We get 5GB of extra storage, too, which will assist with our disaster recovery plan.
Originally published: Thursday, April 3, 2014
Need help with Asterisk? Visit the PBX in a Flash Forum.
New Vitelity Special. Vitelity has generously offered a new discount for PBX in a Flash 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 and PBX in a Flash 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 PBX in a Flash 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 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 and any balance is fully refundable if you decide to discontinue service with Vitelity.
Some Recent Nerd Vittles Articles of Interest…