Home » Posts tagged 'asterisk' (Page 9)

Tag Archives: asterisk

The Most Versatile VoIP Provider: FREE PORTING

Morphing Incredible PBX into a PUBLIC-Facing Cloud PBX


We’ve previously documented how to change Incredible PBX 2021 and Incredible PBX 2020 into PUBLIC-facing PBXs. What that means is that authorized users could still connect to your PBX regardless of where they may be located without having to worry about whitelisting IP addresses. To suggest that the procedure was convoluted is a bit of an understatement. So today we offer a simplified solution that you can deploy in a couple of minutes. It lacks some of the safeguards of the earlier releases, but it remains secure so long as you don’t employ a readily decipherable FQDN for your PBX. The idea here is to block communications access to your PBX using its public IP address and allow access by those that know the fully-qualified domain name (FQDN) of your PBX. You can also restrict the extensions that are accessible. And SSH access to your PBX will be protected by assigning a random port number or by requiring public key authentication for access.

Prerequisites. To get started, you’ll obviously need a cloud-based Incredible PBX 2020 or 2021 platform running CentOS 7, Debian 10, or Raspbian. Next, you’ll need these items:

  1. Public IP Address of your server
  2. FQDN linked to the public IP address
  3. Random SSH port for SSH access to PBX
  4. List of secure extensions to enable for SIP URI access
  5. IP Addresses to WhiteList for Access to the Web GUI

1. Deciphering Public IP Address of Your PBX

After logging into your PBX as root, you can execute pbxstatus to decipher the public IP address of the PBX.

2. Obtaining an FQDN for Your PBX

Security through obscurity provides the critical layer of protection for your server so choose an FQDN carefully. sip.yourname.com provides little protection while f246g.yourname.com pretty much assures that nobody is going to guess your domain name. This is particularly important with SIP registrations because registered extensions on your PBX can obviously make phone calls that cost you money. If you don’t have your own domain, you can always obtain a free hostname from a service such as NoIP.com.

3. Securing SSH Access to Your PBX

Whatever you do, don’t leave SSH access via port 22 exposed on your PBX. In the time it took to create a new PBX on CloudAtCost, there were over 400 attempted logins to the default SSH port of the new server. The simplest (but least secure) method to avoid these script kiddie attacks is to change the port number for SSH access to your server. We suggest using the year you were born as the port number because it’s easy to remember. Edit /etc/ssh/sshd_config and uncomment the Port line replacing 22 with the port number you chose. Then restart SSH: systemctl restart sshd.

The preferable solution to secure SSH is to create and use SSH keys for access and set PasswordAuthentication no in /etc/ssh/sshd_config. Digital Ocean has an excellent tutorial to walk you through the setup process.

4. Choosing Extensions for SIP URI Public Access

With today’s PUBLIC design, exposing an extension for PUBLIC access means anyone in the world that knows the FQDN of your server and the extension number can do two things using any SIP client: (1) they can call you and (2) they can attempt to register to that extension and make calls on your trunks AND your nickel. So only expose extensions for public access if there is a need to connect or call from remote locations. For extensions you decide to expose, make certain that the passwords for these extensions are extremely secure, lengthy, and use numbers with both UPPER and lower case letters. Never use default extension passwords!

5. Whitelisting IP Addresses for Public Web Access

Without enumerating IP addresses for public web access, you won’t be able to connect to the web GUI of your PBX. Down the road, if you wish to add additional IP addresses, you can use /root/add-ip to add them via SSH.

Deploying New PUBLIC Firewall

To get started, log into your server as root and issue the following commands:

cd /tmp
wget http://incrediblepbx.com/newpublic.tar.gz
tar zxvf newpublic.tar.gz
rm -f newpublic.tar.gz

Next, edit /tmp/iptables.base and change the highlighted entries:


Change port 22 in the dport entry to the SSH port number you chose in Step 3, above.

Change 8.8.8.8, 8.8.4.4., and 1.1.1.1 to actual public IP addresses of desktop machines you wish to use to access the web GUI of your PBX. If you don’t need three entries, comment out the other entries with # at the beginning of each line.

Replace your-servers-IP-address with the actual IP address of your PBX from Step 1, above.

Save the file.

On Debian and Raspbian platforms, issue the following commands:

cd /etc/iptables
cp /tmp/iptables.base .
mv rules.v4 rules.v4.orig
cp iptables.base rules.v4

On CentOS platforms, issue the following commands:

cd /etc/sysconfig
cp /tmp/iptables.base .
mv iptables iptables.orig
cp iptables.base iptables

Using Incredible PBX PUBLIC with Asterisk

The first line of defense with this PUBLIC implementation is your FQDN. Second is the IPtables firewall setup above. And third is the Asterisk® extensions configuration in extensions_override_freepbx.conf. Here’s how to configure it. Edit /tmp/extensions_override_freepbx.base and change the highlighted entries:


If there are phone numbers assigned to your PBX that you want processed according to your Inbound Routing rules, duplicate the first highlighted line above and, for each trunk, replace 8881234567 with your actual DID numbers.

In exten => _.,1 line, replace your-servers-IP-address with the actual IP address of your PBX from Step 1, above.

In exten => _.,10 line, replace your-servers-FQDN with the actual FQDN assigned to your PBX from Step 2, above.

Scroll down in the file to the following section:



Comment out undesired default extensions. Place a semicolon at the beginning of the lines.

For any extensions you wish to add, insert a new line in the following format replacing both 7000 entries with the desired extension number:

exten => 7000,13,Dial(local/7000@from-internal)

Save the file and then execute the following commands to complete the PUBLIC setup:

cd /etc/asterisk
cp /tmp/extensions_override_freepbx.base .
mv extensions_override_freepbx.conf extensions_override_freepbx.orig
cp extensions_override_freepbx.base extensions_override_freepbx.conf
fwconsole restart
asterisk -rx "dialplan reload"
iptables-restart
sed -i 's|-A INPUT|-I INPUT|' /root/add-ip
sed -i 's|-A INPUT|-I INPUT|' /root/add-fqdn

Calling an Incredible PBX PUBLIC Extension

Any extensions that you have whitelisted in the blue section above can be called from anywhere using any SIP client. Simply enter the SIP URI for the extension in the following format: SIP/extension@your-servers-FQDN

CAUTION: If a caller attempts to call any extension on your PUBLIC server from an extension on another Asterisk server to which the caller is registered, the call will fail if there is a matching extension number on the PUBLIC server and the two servers are not registered to each other. So remember to use unique extension numbers on your PUBLIC server if you expect callers from other Asterisk servers.

Registering Incredible PBX PUBLIC Extension

If you wish to login to a whitelisted extension using a SIP client, enter the extension and password of the extension. For the server address, enter the FQDN of your server. If it’s a PJsip extension, add :5061 to the end of the FQDN.

Switching Back to Incredible PBX Default

Should you change your mind and decide to switch back to the default Incredible PBX setup, it’s simple to do so. Here are the steps.

sed -i 's|Port|#Port|' /etc/ssh/sshd_config
cd /etc/asterisk
cp -p extensions_override_freepbx.orig extensions_override_freepbx.conf
cd /root
cd /etc/sysconfig
cp -p iptables.orig iptables
cd /root
cd /etc/iptables
cp -p rules.v4.orig rules.v4
asterisk -rx "dialplan reload"
iptables-restart
systemctl restart sshd

Originally published: Monday, August 16, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
 



Amazon’s Alexa Now Available for Incredible PBX



Loyal readers already know that voice recognition applications occupy a special place in the Incredible PBX® toolchest. Over 8 years ago, we introduced Wolfram Alpha integrating the world’s largest almanac into Asterisk®. And today we’re pleased to add Amazon’s Alexa to the Incredible PBX fold for our latest Incredible PBX 2021 for Debian, Raspberry Pi and CentOS 7 builds. Just dial 5555 and tell Alexa what you’d like to know or do. If you’ve been sleeping under a rock these past few years, Alexa provides not only a thesaurus but also current news and weather, cooking tips and recipes, calendars, movie showtimes and data, Amazon purchasing, shopping lists, reminders, maps, music.everything, home automation control to turn on your lights, lock your doors and adjust your thermostat, sports scores and scheduling, grocery shopping, and almost anything else you can imagine asking for. And our special tip of the hat goes to Russell Grokett for his creativity in bringing the Alexa platform to the Asterisk community. Here’s a simple graphic showing the call flow in a typical Alexa call from any SIP phone connected to Incredible PBX:

Before we get started, let me offer a few words of caution. You’ll need to be a careful reader and follow the instructions below carefully to get Alexa working. Amazon uses OAuth 2 authentication which is secure (and tedious) by design. The good news is you only have to go through this setup exercise once after which Alexa will be available at any time without further tweaking. We’ve made some changes in Russell Grokett’s original design to hopefully simplify the OAuth procedure and to adjust some of the configuration to correctly interface with newer releases of the open source components including sox which handles the audio translations between Asterisk and Alexa. All of the code is licensed pursuant to GNU GPLv3.

Prerequisites. Before you begin, you’ll need a working Incredible PBX 2020 platform running CentOS 7, or Incredible PBX 2021 running Debian 10, or the latest Incredible PBX release for Raspbian preferably running on a Raspberry Pi 4 with at least 2GB of RAM.

Overview. There are four steps in today’s installation procedure. First, we will download and install a number of open source components on Incredible PBX by running a simple script. Second, you’ll need to sign up for both an Amazon account if you don’t already have one AND an Amazon Developer Account. Third, we’ll create an Alexa Voice Service application and set up the Alexa Security Profile for the application. Finally, using the credentials obtained during this setup process, we’ll configure the components on your PBX to talk to Alexa. Be advised that the Amazon license we will be using authorizes only private, non-commercial use. Today’s design does not meet Amazon’s terms for commercial and/or public use!

1. Installing Alexa Basics for Incredible PBX

Log into your server as root and issue the following commands to download and install the basic components to support Alexa integration into Incredible PBX:

cd /
wget http://incrediblepbx.com/incredible-alexa.tar.gz
tar zxvf incredible-alexa.tar.gz
rm -f incredible-alexa.tar.gz
./install-alexa

2. Creating an Amazon and Amazon Developer Account

If you don’t already have one, you can create an Amazon account at amazon.com. Write down your email address and password. You’ll need them in the following steps. Next, navigate to the Amazon Developer Portal and set up a free account using your Amazon credentials.

3. Creating Voice Service Application & Security Profile

After creating your Amazon developer account, we’re ready to create a product and security profile. Begin by logging into the AVS Dashboard. Click GET STARTED to begin.

Click PRODUCTS. Then click ADD NEW PRODUCT. Fill in form as shown below. Click NEXT.

  • Product Name: IncrediblePBX
  • Product ID: IncrediblePBX
  • Product Type: Application with Alexa built-in
  • Product Category: Communications
  • Brief Product Description: Alexa for Incredible PBX
  • User Interaction: Hands-free
  • Distribute Commercially: NO
  • Children’s Product: NO

In LWA Security Profile dialog, click CREATE NEW PROFILE. Fill in template. Then NEXT.

  • Security Profile Name: IncrediblePBX
  • Security Profile Description: Incredible PBX security profile

In the second LWA Security Profile dialog, copy your Security Profile ID, Client ID, and Client Secret to a text file so that you can use them in the following steps.

In the Allowed return URLs field, create two entries clicking ADD button after entering each:

  • http://localhost
  • https://actual-Incredible-PBX-IP-address:5000/code

Check the I Agree checkbox and then click FINISH.

Your Product should now appear as successfully configured in Alexa Voice Service overview.

Next, navigate to: https://developer.amazon.com/lwa/sp/overview.html.

Click Select a Security Profile and choose your IncrediblePBX profile. Click CONFIRM.

In the Consent Screen dialog, enter the following and then click SAVE.

  • Consent Privacy Notice URL: http://dummyurl.com
  • Consent Logo Image: leave blank

Verify your ClientID and Secret that you wrote down above.

Cut-and-paste the following as a single line of code into your favorite text editor. Or you can simply edit /root/Alexa-URL which contains the same code.
https://www.amazon.com/ap/oa?client_id=YOURCLIENTID&scope=alexa%3Aall&scope_data=%7B%22alexa%3Aall%22%3A%7B%22productID%22%3A%22IncrediblePBX%22,%22productInstanceAttributes%22%3A%7B%22deviceSerialNumber%22%3A%2212345%22%7D%7D%7D&response_type=code&redirect_uri=http%3A%2F%2Flocalhost

Replace YOURCLIENTID in the above code substituting your actual Alexa Client ID.

Next, select the entire block of code that now includes your actual Client ID and paste it into the Address URL of your favorite browser. You should be prompted for your Amazon user credentials. Once you sign in, click ALLOW. You then should see an Unable to Connect error message. This is fine. What we actually need is the Token which now is shown immediately after code= in the Address URL of your browser. Copy everything after code= up to the &.

http://localhost/?code=YOURTOKEN&scope=alexa%3Aall

With YOURTOKEN, Client ID, and Client Secret in hand, proceed to the next section.

4. Activating Alexa in Incredible PBX

Log into Incredible PBX as root and navigate to the /root directory. Make a copy of grant-token.sh in case you make a mistake. Now edit grant_token.sh. Replace YOURTOKEN with your actual Token. Replace YOURCLIENTID with your actual Alexa Client ID. Replace YOURCLIENTSECRET with your actual Alexa Client Secret. Save the file and then run the script: ./grant_token.sh.

The script will return a JSON message that includes both an access_token and a refresh_token. It will be a very long single string that you should cut-and-paste and save for a rainy day. The string can be parsed in an editor so that it looks something like this:



Access tokens expire every hour, but this refresh token never expires. We’ll use the refresh token to generate a new access token whenever Alexa is run from an Asterisk extension. So cut-and-paste the very long refresh_token and save it with your Client ID and Client Secret.

Next, change to the /var/lib/asterisk/agi-bin directory and make a copy of token.pl in case you make a mistake. Then edit token.pl and scroll to the my $post line (line 16). Replace YOUR_REFRESH_TOKEN with the refresh_token from above. Replace YOUR_CLIENT_ID with your actual Client ID. And replace YOUR_CLIENT_SECRET with your Client Secret.
Save the file.

TIP: If you decide to install Alexa on more than one of your PBXs, the setup process only takes a couple minutes. Complete Step #1 as documented above. Then copy the my $post line from token.pl that includes your credentials and replace the my $post line of token.pl script in your second PBX. Done.

Now you’re ready to try things out. From the command line, issue the command: ./token.pl

List the results like this: cat /tmp/token.resp

There should be no errors and the results should look something like this:


IMPORTANT: Don’t forget this step or future queries from Asterisk will fail since our test generated files with root permissions only: rm -f /tmp/token*

Now we’re all set to use Alexa from your PBX. From an extension on your PBX, dial 5555. When prompted, say "What’s the weather for today?" After receiving the response from Alexa, you can either hang up or say another query.

We’ve documented some Alexa queries and skills in this thread on the VoIP-Info.org Forum.

If you have problems getting all the pieces to work, check over the steps again. You may also wish to consult the original documentation. Ignore references to differing file locations.
 

Republished: Tuesday, August 3, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
 



Moving from Incredible PBX 2020 to 2021 on the Raspberry Pi



Many have clamored for an upgrade path from Incredible PBX 2020 on the Raspberry Pi to take advantage of the stability that Asterisk® 18 offers. Today we’re pleased to introduce a quick-and-easy upgrade script that moves your platform to Incredible PBX 2021 and handles everything for you. After running the script, you’ll have the latest release of Asterisk 18 and the latest modules for FreePBX® 15 plus all of the other goodies that make Incredible PBX 2021 the VoIP community’s swiss army knife of choice.

If you’re new to the VoIP world, you can begin your adventure by installing Incredible PBX 2020 for the Raspberry Pi. Our tutorial will walk you through the simple setup process. When you’re finished, you’ll have a fully functional PBX featuring Asterisk 16, FreePBX 15, and literally dozens of utilities to make the setup of your PBX a walk in the park.



Whether you’re new to Incredible PBX or an old-timer, the next step is critically important. You need a clean backup of your microSD card that you’ve tested and verified that it actually works. There are many ways to make backup images, but here’s the one that we’ve always found to be failsafe. Purchase the $8 USB-to-microSD adapter pictured above and buy a spare microSD card as large or larger than the one you’re using with Incredible PBX 2020. With your PBX running, insert the new microSD card into the adapter and then plug it into one of the blue USB slots on your Raspberry Pi. While logged into your server as root, identify the backup microSD card, usually sda (fdisk -l). Using the sd entry you deciphered, format the microSD card: mkfs.vfat /dev/sda1 && mkfs.ext4 /dev/sda2. Then issue the following command to clone the primary microSD card: rpi-clone -f sda.

Once the backup finishes, shutdown your PBX with the halt command. Insert the new microSD card and reboot the RasPi to make sure everything got backed up successfully. Put your old microSD card in a safe place just in case something goes wrong during the upgrade.

After logging back into your PBX as root, issue the following commands to kick off the upgrade to Incredible PBX 2021. When the upgrade finishes, reboot your PBX and verify that everything still functions as advertised. Enjoy!

cd /root
wget http://incrediblepbx.com/2021-raspi-upgrade.tar.gz
tar zxvf 2021-raspi-upgrade.tar.gz
rm -f 2021-raspi-upgrade.tar.gz
./upgrade-to-incrediblepbx2021

From time to time, you may wish to upgrade Asterisk 18 to the latest release. Here’s a script that will do it for you:

cd /root
wget http://incrediblepbx.com/upgrade-asterisk18-raspi.tar.gz
tar zxvf upgrade-asterisk18-raspi.tar.gz
rm -f upgrade-asterisk18-raspi.tar.gz
./upgrade-asterisk18

Originally published: Friday, June 18, 2021  Updated: Friday, July 23, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 



Adding the Linux XFCE GUI to Incredible PBX 2021


One of the most requested add-ons for Incredible PBX® is a graphical user interface for Linux. And today we’ll show you the quick and easy way to add XFCE 4 to your Debian 10 platform. What it gets you is simple access to a number of Linux applications and utilities which only run inside a GUI. These include the Firefox browser, LibreOffice with Microsoft Office compatibility, ImageMagick, media players, a FileManager GUI, and Linux utilities such as TimeShift and gparted.

None of these applications will run inside of SSH. So you’ll need an app such as VNC which is included with most cloud platforms by simply clicking on the Console option inside the cloud server’s management portal. To install XFCE on your Incredible PBX 2021 Debian platform, log in as root using SSH or Putty and issue the following commands:

apt-get update
apt-get install task-xfce-desktop
reboot

Once your server has rebooted, click on the Console icon in your cloud management portal or in VMware ESXi portal and login with your root credentials when prompted:



Double-click on the Home folder icon and the Home menu for the root user will open:


Icons at the bottom of the display allow you to minimize open windows as well as access the terminal emulator, file manager, web browser, application finder, and your root directory.

At the top of the display, you’ll find tabs for all of your open windows including Applications which provides access to all of the installed GUI applications:


CrownCloud & RackNerd Setup for Remote VNC Access

If you’re running Incredible PBX 2021 on CrownCloud or RackNerd or any other provider using the SolusVM Control Panel, here are the steps for remote VNC access. First, login to your Control Panel and click on the VNC Access button. Write down the IP address, port number, and password for remote VNC access. Next, install the appropriate VNC Viewer for your desktop computer from RealVNC. Open the VNC Viewer app on your desktop and enter the IP address followed by a colon and the port number that you wrote down above. When prompted for your password, enter the VNC password assigned by your provider. You then will get a login screen to enter your root username and root password for Incredible PBX 2021. NOTE: The public IP address of your desktop computer must be whitelisted in IPtables using the All-Access option 0 with add-ip or add-fqdn in the /root folder of your server.

Vultr & Digital Ocean Setup for Remote VNC Access

If you’re running Incredible PBX 2021 on Vultr, Digital Ocean, and most other platforms including VMware, here are the additional steps to gain remote VNC access to your server’s public IP address or VMware’s private IP address. Issue the following commands after logging into your server as root:

apt-get -y install xorg lxde-core tightvncserver
reboot

Once your server has rebooted, log back in as root. First, set an 8-character VNC access password: tightvncserver :1

Next, edit the xstartup config file: nano ~/.vnc/xstartup

Uncomment the x-window-manager line. Immediately below that line, add the two new entries below and save the file:

x-window-manager &
lxterminal &
/usr/bin/lxsession -s LXDE &

Finally, stop and restart tightvncserver:

tightvncserver -kill :1
vncserver :1 -geometry 1024x768 -depth 16 -pixelformat rgb565

With VMware ESXi, substitute the following vncserver startup command:

vncserver :1 -geometry 800x600 -depth 16 -pixelformat rgb565

Now install the appropriate VNC Viewer for your desktop computer from RealVNC. Open the VNC Viewer app on your desktop and enter the IP address followed by :1. Enter your root credentials when prompted.

With VMware, you also can access VNC through the VMware ESXi Console by simply entering your root credentials.

NOTE: The public IP address of your desktop computer must be whitelisted in IPtables using the All-Access option 0 with add-ip or add-fqdn in the /root folder of your server.

Originally published: Friday, June 11, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 



Moving from Incredible PBX 2020 (CentOS) to 2021 (Debian)



If you’re still shackled to CentOS 7 with Incredible PBX 2020, the time has come to put the horse and buggy out to pasture. RedHat has become an unreliable partner upon whom your entire PBX depends. When RedHat abruptly reneged on LTS support for CentOS 8, the writing was on the wall. They could do much the same thing with CentOS 7. Rather than waiting for the other shoe to drop, we introduced Incredible PBX 2021 and migrated to Debian 10. Now it’s your turn, and today we’ll guide you to a much more stable platform moving forward.

Step 1. To get started, you’ll want to bring up a new Incredible PBX 2021 server on a platform of your choice. We recommend using one of the virtual machine platforms, all of which are documented on the Incredible PBX Wiki. The Vultr platform is especially well suited for Incredible PBX 2021 because a snapshot image is available which lets you bring up a functioning server in a couple of minutes.

Make note of your server’s public IP address (23.45.67.89 in example).

Step 2. The next step is to bring the FreePBX modules on your existing Incredible PBX 2020 up to the latest releases. After logging into your Incredible PBX 2020 server as root, issue the following commands:

fwconsole restart
rm -f /tmp/*
fwconsole ma upgradeall
fwconsole reload
/root/sig-fix
systemctl restart apache2
/root/sig-fix 

Verify that everything is functioning properly by logging into the FreePBX GUI as admin using your favorite web browser.

Make note of your Incredible PBX 2020 server’s public IP address (12.34.56.78 in example).

Whitelist 2021 server on 2020 server: /root/add-ip 2021pbx 23.45.67.89 then option 0

Step 3. Next, we need a good FreePBX backup of your Incredible PBX 2020 setup. While still logged into your Incredible PBX 2020 server as root, issue the following commands:

fwconsole stop
mysqldump -u root -ppassw0rd asterisk > /root/asteriskDB.sql
mysqldump -u root -ppassw0rd asteriskcdrdb > /root/asteriskCDR.sql
tar -zcf /root/snapshot.tar.gz /var/www/html/admin/modules \
 /var/spool/asterisk /var/lib/asterisk/agi-bin \
 /etc/asterisk/*custom.conf /var/lib/asterisk/astdb.sqlite3 \
 /root/asteriskDB.sql /root/asteriskCDR.sql

Step 4. Log into your 2021 server as root and issue the following commands substituting your Incredible PBX 2020’s actual IP address for 12.34.56.78 below:

cd /
scp root@12.34.56.78:/root/snapshot.tar.gz .
fwconsole stop
tar zxvf snapshot.tar.gz
rm snapshot.tar.gz
cd /root
mysql -u root -ppassw0rd asterisk < asteriskDB.sql
mysql -u root -ppassw0rd asteriskcdrdb < asteriskCDR.sql
mysql -u root -ppassw0rd asterisk -e "UPDATE freepbx_settings \
 SET value = 'Incredible PBX 2021' WHERE \
 freepbx_settings.keyword = 'DASHBOARD_FREEPBX_BRAND';"
chown -R asterisk:asterisk /var/lib/asterisk
chmod -R 755 /var/lib/asterisk
fwconsole start
fwconsole reload
fwconsole ma delete clearlytrunking
fwconsole ma delete sms
fwconsole ma delete webrtc
fwconsole ma delete ucp
fwconsole ma downloadinstall ucp
fwconsole ma downloadinstall webrtc
fwconsole ma downloadinstall sms
fwconsole ma downloadinstall clearlytrunking
fwconsole reload

That completes the migration to Debian 10 and Incredible PBX 2021. Keep in mind that you may need to tweak the directories in the tarball step above if you've made custom changes in your Incredible PBX 2020 setup. If you're also migrating Incredible Fax from your 2020 platform, see the Incredible PBX Wiki for step-by-step instructions. Enjoy!

Originally published: Tuesday, June 2, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 



Introducing Vultr Marketplace Featuring Incredible PBX 2021


One of our oldest open source supporters, Vultr, introduced their new Vultr Marketplace today featuring one-click installs for dozens of turnkey apps including Incredible PBX 2021. Vultr boasts a whopping 1.3 million users running applications in 17 different locations around the globe. And, today, it’s easier than ever. With the new Incredible PBX 2021 image, a user can choose a location and server size and simply click on the Incredible PBX 2021 application in the Vultr Marketplace instead of wrestling with Linux and a cumbersome install procedure. Within a matter of minutes, your PBX is ready to start making calls. If you use our referral code to sign up, our open source projects get $25 from Vultr, and you receive a $100 credit to kick the tires for up to a month. So… you have nothing to lose!

Here’s a snapshot of the applications that await you in the new Vultr Marketplace:


If you’ve never used Vultr, you owe it to yourself to take their cloud platform for a spin. The performance is legendary, and a $5 a month Cloud Compute platform can easily manage the calls for dozens of users. Add automatic backups for an additional 20% a month, and your platform is virtually indestructible. And you’ll never have to babysit on-premise hardware as well as Internet and power issues again. Read the Incredible PBX 2021 tutorial to get started.

Originally published: Tuesday, May 25, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 



Virtual Paradise: It’s Incredible PBX 2021 for VMware

Today we’re rounding out our Virtual Machine Trifecta with the introduction of Incredible PBX 2021 for VMware. If you haven’t already figured it out, virtual Machines are the future of server administration. Whether you prefer your own dedicated hardware or cloud-based resources managed by you or someone else, virtual platforms are the way to go. You get more bang for the buck out of your hardware by pooling resources for multiple tasks. VMware®, Proxmox®, and VirtualBox® make it easy. This latest VMware image provides the latest Asterisk® 18 and FreePBX® 15 components and now includes Incredible Fax featuring HylaFax and AvantFax. All are built from source, and the install only takes a few minutes.

Just download the VMware tarball image from SourceForge to your desktop. Fire up your browser and login to your VMware Web Console. With a few mouse clicks, you’ll have a Debian 10.9 platform in place with Incredible PBX® and Incredible Fax just a single keystroke away. It doesn’t get much easier. And, you get the very latest release of Asterisk 18 compiled from source code that you can actually examine, enhance, and share… just like the GPL license says.

Choosing a Virtual Machine Platform

Making the right deployment choice for your virtual machine platform depends upon a number of factors. We’ve already sung the praises of VirtualBox so we won’t repeat it here. Similarly, Proxmox has a loyal following, and we’ve got you covered there as well. VMware also is rock-solid and has been for decades. VMware typically runs on dedicated hardware. If you don’t have the funds for a hardware purchase to support your virtualization requirements, then VirtualBox on your desktop machine is a no-brainer. For many, however, some separation of the virtualization environment from your desktop computing environment is desirable. That choice is equally easy. VMware wins, hands down. Better yet, you can make snapshot backups of your virtual machines in seconds with a single button click. If you’ve wrestled with backups on standalone hardware with Linux, you’ll quickly appreciate the difference.

Getting Started with VMware ESXi

Many of you have VMware platforms already in place at work. For you, installing Incredible PBX 2021 is as simple as downloading the image to your desktop and importing it into your existing platform. Better yet, your system administrator can do it for you. If you’re new to VMware, here’s an easy way to get started, and the software won’t cost you a dime. VMware offers a couple of free products that will give you everything you need to run a robust VMware platform on relatively inexpensive hardware. The choice is up to you. See our previous tutorial for step-by-step instructions to install VMware ESXi and the vSphere Web Client.

Deploying the Incredible PBX Template

Deploying the Incredible PBX 2021 template only takes a few minutes, but first you need to download the Incredible PBX 2021 tarball from SourceForge onto your Desktop PC. Then untar the tar.gz file which will create the IncrediblePBX folder with the VMware image components.

Once the Incredible PBX template components are on your desktop, here are the install steps:

1. Using a browser, login to the VMware Web Console using the root account you set up when you installed ESXi. Choose File, Deploy OVF/OVA Template.

2. Drag-and-drop the IncrediblePBX folder from your Desktop PC onto the web console.

3. Click Next.

4. Give the new Virtual Machine a name: Incredible PBX 2021.

5. IMPORTANT: Choose Thin Provision option and click Next.

6. Review your entries and click Next to create the new Virtual Machine.

7. It only takes a few minutes to create the new Virtual Machine.

8. The Main Client window will redisplay and your new VM should now be shown in the left panel. (1) Click on it. (2) Then click the Green start icon. (3) Then click the Console Window icon.

9. When the VM’s Console Window opens, click in the window in the black area. Log into your virtual machine as root using the default password: password.

10. To complete the Incredible PBX 2020 setup, you will automatically be walked through the short installation procedure when you start the virtual machine. Following the automatic reboot, just log in a second time as root and the install will complete. We recommend using SSH for your second login so that your desktop PC gets whitelisted in the Incredible PBX firewall.

11. Set up the proper time zone for your server: /root/timezone-setup.

12. Choose an email delivery address for your faxes: ./avantfax-email-change.

That should be enough tutorial for today. Enjoy your new VMware platform.

Continue Reading: Configuring Extensions, Trunks & Routes

Don’t Miss: Incredible PBX Application User’s Guide covering the 31 Whole Enchilada apps

Originally published: Monday, May 17, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
 



Meet Proxmox: A Virtual Machine Platform for Asterisk



UPDATE: Read our latest Proxmox tutorial: It’s Incredible PBX for Proxmox 7.

More than a decade ago, we introduced the Proxmox virtual machine platform for Asterisk®. Five years later we took another look. Along the way, there have been a few hiccups. But, by and large, Proxmox has had a loyal following for many years. Today we’re pleased to provide an updated tutorial to deploy Proxmox 6.3 with Incredible PBX®. Yes, we know Proxmox 6.4 was released yesterday, but we haven’t had a chance to test it. And, we had a terrific hardware special that’s only available for a short while. We will update this tutorial once we’ve had a chance to run Proxmox 6.4 through its paces.

Why go the virtual machine route? First, you can build Incredible PBX VMs in about one minute. Second, you can make backups and snapshots of your system with the click of a few buttons in the Proxmox GUI. Third, the performance is almost identical to running Incredible PBX on standalone hardware. What’s not to like?

One of our pet peeves with Proxmox has always been the nag screens trying to get you to pay for support. Fortunately, John McLaren solved that with this tutorial. Aside from that, there’s not much not to like about Proxmox. So let’s get started.

This tutorial assumes you have a working Proxmox server. If you don’t and you’re a home or SOHO user, here’s a steal from Amazon that’s only available at the $475.15 price while the remaining inventory is available. It includes a quad-core Intel Core i5 processor with 16GB of RAM, a 512GB NVME SSD drive plus wired and wireless networking. We’ve tried it. It’s great. Installing the Proxmox server from a USB flash drive takes about 5 minutes. This Proxmox tutorial will walk you through building the Proxmox installer with a USB flash drive. Once you have it, plug in a network cable, plug in the flash drive, and turn on the machine while holding down the F7 key. When the drive list appears, choose the USB drive and the Proxmox installer will load. Set up your credentials and fully-qualified domain name and email address, and the rest is just watching the installer work its magic. If you’re tempted to go the Intel NUC route, be advised that Intel and Microsoft have made some BIOS changes which may or may not lead you into harm’s way. Our earlier tutorial has some tips if you run into a snag.

Configuring Proxmox for Incredible PBX VMs

There are three ways you can "talk" to your Proxmox server once it’s up and running: SSH, SFTP, and the Proxmox web GUI. We’ll be using all three. Make note of the IP address assigned to your server during the install procedure.

1. Log into your Proxmox server as root using SSH. Issue the commands in John McLaren’s tutorial to disable the nag screens and restart Proxmox.

2. Download the Debian 10.9 ISO and our Incredible PBX installer (vzdump*.vma.gz) for Proxmox from SourceForge to your desktop.

3. Log into SCP as root using your Proxmox credentials. Using SCP, copy the vzdump*.vma.gz installer to /var/lib/vz/dump on your Proxmox server

4. Using a web browser navigate to https://192.168.0.208:8006/ where 192.168.0.208 is the IP address assigned to your Proxmox server. Login as root using the same root credentials you used with SSH.

5. In the Proxmox GUI, navigate to Datacenter -> Local -> ISO Images -> Upload and upload the Debian 10 ISO from your desktop.

Your Proxmox server now is configured to let you build as many Incredible PBX 2021 virtual machines as you like.

Creating Your First Incredible PBX Virtual Machine



The easiest way to create Incredible PBX 2021 virtual machines is using the Proxmox web GUI. Navigate to Datacenter -> Local -> Backups -> Restore. When the dialog box appears, fill it in as shown below using a unique Proxmox Container Number for each VM (777 in the example). Be sure to tick the Unique box to assure that your VMs don’t step on each other. If you want to start up the VM after creating it, just tick the start up box. When you’re finished, click the Restore button.



In about a minute, your VM will be ready to Start if you didn’t tick the start up box. Once started, click the Console button to open the Incredible PBX console box just as if you had logged in with SSH. For username and password, use root and password. You then will be prompted to change all of your VM’s passwords. New SSH credentials also will be generated. Following the reboot, log back in again with your new root password and let the installer complete its setup. You now have a fully-operational Incredible PBX and Incredible Fax platform. Hop over to the Incredible PBX 2021 tutorial to set up extensions, trunks, and routes.

Originally published: Saturday, May 1, 2021



Need help with Asterisk? Visit the VoIP-info Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

BOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

The lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

VitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

Special Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.