FreePBX 13. No longer beta
What is FreePBX? This is one of the options for controlling the engine of modern IP telephony - Asterisk. No matter how integrators love this “add-on,” it is certainly it that is the leader in IP PBX installations.
Yes, in some places full of holes, not always clear, with a curve of Russification, but free. FreePBX allows you to raise a telephone server in an organization for almost any enikey in a matter of hours, and already in the default configuration provides features that will suit almost all companies. Another thing is if you suddenly lack the functionality of the web interface, and you decide to add some unique feature ...
Crutches, the impossibility of a normal debug - here FreePBX will appear in all its glory.
Nevertheless, back in March, you had the opportunity to test the Alpha version, beta in June, and today I would like to quickly inspect the final and stable FreePBX 13.
shmooze company was confidently moving its product towards commercialization during 2012 - 2013. Free modules suddenly became paid (end point manager, for example), more and more commercial modules were added to their distribution, and after the purchase by Sangoma the approach did not change, but became even tougher.
And what does the logo say on the main page of the project? "Free means Freedom" Not free, but free;)
At some point, the management decided to share FreePBX only as part of its FreePBX Distro, but later tempered its ardor. Today you can build Linux OC + Asterisk + FreePBX yourself, or install a ready-made ISO image of the system directly on the server.
So, what is included in the latest available image 10.13.66-6:
FreePBX 13
SHMZ OS 6.6 (CentOS)
Asterisk 11 or 13 (other versions are not supported)
DAHDI 2.10
The system is installed as usual, in a few clicks. Remember to select --no raid if you have multiple hard drives installed. For example, we periodically practice installing the system on a 60 GB SSD, and recording conversations on a neighboring and large HDD.
Upon completion of the installation of packages when connected to the network, FreePBX will automatically update its packages to the latest versions from Sangoma repositories.
After installation, the address is assigned automatically (if a DHCP server is raised on the network, of course). We look it in the console or dhiza DHCP.
We get to the server, set the administrator login / password and see a new, rubber system interface.
And here is the first innovation that meets us - is to block access to the Admin - System Admin section before registering the system on the Sangoma portal. Neither change the IP address, nor view the list of those who fell into Fail2Ban, change TimeZone. DNS and more.
However, registration is quite short, and you can get your login and password in advance here - portal.schmoozecom.com
As a bonus, you can activate paid Extension Routes and Sysadmin Pro modules for free.
Russification
System interface: Settings - Advanced settings - Show language - YES
Voice phrases in the PBX, execute commands in the console:
mkdir -p / var / lib / asterisk / sounds / ru /
then
wget -q --no-check-certificate github.com / pbxware / asterisk-sounds / tarball / master -O- \ | tar xzv --strip-components 1 -C / var / lib / asterisk / sounds / ru / the
main phrases will load, and then
wget -q --no-check-certificate github.com/pbxware/asterisk-sounds-additional/tarball / master -O- \ | tar xzv --strip-components 1 -C / var / lib / asterisk / sounds / ru /
at this moment an extended package of phrases will be loaded, more than 700 in total, which covers almost all actions with an asterisk.
In the FreePBX interface, go to Admin - Sound Languages - Custom languages. Click the Add button.
Language Code = ru
Description = Russian
Submit.
Now, in Global language, Russian will be selected by default. (at least this is what happened on the test machine, however, you can choose Russian and click Submit additionally)
Interface FreePBX 13
The web interface of the system has been slightly redesigned; it cannot be said that this is a revolutionary change, but rather really useful changes.
For example, the users screen is divided into tabs (by connection type), and a button for quickly adding users is added.
And yes, now you can configure your office PBX using a tablet or smartphone, the menu and the width will automatically adjust to your screen.
Fwconsole commands
Free PBX 13 adds the ability to manage PBXs via the Linux command line using fwconsole
Amportal will be “killed” completely in FreePBX 14
You can see the list of commands below (or drive into the fwconsole list server)
Fwconsole command list
bi This command is used to import extensions and dids
bulkimport This command is used to import extensions and dids
chown Change ownership of files
context Shows the specified context from the dialplan
cx Shows the specified context from the dialplan
dbug Stream files for debugging
debug Stream files for debugging
externalip Get External IP
extip Get External IP
help Displays help for a command
list Lists commands
m Run a mysql Query:
ma Module Administration
module admin module Administration
motd Prints MOTD
mysql Run a mysql Query:
r Reload Configs
reload Reload Configs
restart Start Asterisk and run other needed FreePBX commands sysadmin Sysadmin functions trunks Enable and start other needed FreePBX commands
session Manage Session
set View and update settings
setting View and update settings
sounds Sound Language Prompts
start start asterisk and run other needed FreePBX commands
stop Stop disable trunks from the command line unlock Unlock Session userman User Manager util Common utilities
bulkimport This command is used to import extensions and dids
chown Change ownership of files
context Shows the specified context from the dialplan
cx Shows the specified context from the dialplan
dbug Stream files for debugging
debug Stream files for debugging
externalip Get External IP
extip Get External IP
help Displays help for a command
list Lists commands
m Run a mysql Query:
ma Module Administration
module admin module Administration
motd Prints MOTD
mysql Run a mysql Query:
r Reload Configs
reload Reload Configs
restart Start Asterisk and run other needed FreePBX commands sysadmin Sysadmin functions trunks Enable and start other needed FreePBX commands
session Manage Session
set View and update settings
setting View and update settings
sounds Sound Language Prompts
start start asterisk and run other needed FreePBX commands
stop Stop disable trunks from the command line unlock Unlock Session userman User Manager util Common utilities
Mix settings via web interface and Linux console commands. However, it can be useful if you forgot the password for web administration or want to re-read the configs.
Paid module update system
Another fly in the ointment for FreePBX users.
Most of the sold system modules were available according to the scheme: buying a license for 25 years and 1 year of free version upgrade, that is, patches and functional updates. You use the year, and then pay some amount to the developers, supporting the further development of the module. Or do not pay and work with the version that you already have.
Everything seems to be clear and beautiful, if it weren’t for one thing, there was no extension mechanism in FreePBX, and therefore they have been providing updates for free all this time. Now there is, and you can extend the modules directly from the GUI.
Firewall
The new Sangoma Smart Firewall module is already included in the new FreePBX. To activate it, go to Connectivity - Firewall and click Enable. Of course, iptables gurus can do wonders, but is this the target audience of FreePBX?
You can go through the simplest auto-configurator and set up default protection, but you can dig a little deeper and configure firewall more correctly.
Four submenus: About. Services, Status, Zones.
About - shows information about open ports, the launch status of
Services - allows you to open / close a service for the previously created
Status network zone - a list of those that are blacklisted, as well as a list of registered SIP devices.
Zone - network zones you can trust. Indicated with a mask.
Conclusion
FreePBX 13 - the product is quite fresh, I won’t be surprised if the next six months we see a large number of completions and improvements.
Just today, I ran into a problem with a broken Digium board and I needed a firmware update.
solution for those who are interested
The following was
displayed in the console: wcaxx 0000: 03: 00.0: Existing firmware file dahdi-fw-a4b.bin is version b0019, but we require d001e.
How to "repair"?
from here pull the firmware that she needs downloads.digium.com/pub/telephony/firmware/releases \
unpack let's say in / tmp, unpack the file 1 file dahdi-fw-a4b.bin
then go to / lib / firmware do the old mv dahdi- file fw-a4b.bin dahdi-fw-a4b.bin_back
then the previously downloaded file In my case, downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4b-d001e.tar.gz
copy from / tmp to / lib / firmware server after that reboot
as it starts to look in dmesg so that everything is ok.
[root @ kh ~] # dmesg | grep -i dahdi
dahdi: Version: 2.10.2
dahdi: Telephony Interface Registered on major 196
wcaxx 0000: 03: 00.0: firmware: requesting dahdi-fw-a4b.bin
wcaxx 0000: 03: 00.0: Found dahdi-fw-a4b.bin (version: d001e) Preparing for flash
wcaxx 0000: 03: 00.0: Uploading dahdi-fw-a4b.bin. This can take up to 30 seconds.
dahdi_transcode: Loaded.
INFO-xpp: FEATURE: with sync_tick () from DAHDI
dahdi_devices pci: 0000: 03: 00.0: local span 1 is already assigned span 1
displayed in the console: wcaxx 0000: 03: 00.0: Existing firmware file dahdi-fw-a4b.bin is version b0019, but we require d001e.
How to "repair"?
from here pull the firmware that she needs downloads.digium.com/pub/telephony/firmware/releases \
unpack let's say in / tmp, unpack the file 1 file dahdi-fw-a4b.bin
then go to / lib / firmware do the old mv dahdi- file fw-a4b.bin dahdi-fw-a4b.bin_back
then the previously downloaded file In my case, downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4b-d001e.tar.gz
copy from / tmp to / lib / firmware server after that reboot
as it starts to look in dmesg so that everything is ok.
[root @ kh ~] # dmesg | grep -i dahdi
dahdi: Version: 2.10.2
dahdi: Telephony Interface Registered on major 196
wcaxx 0000: 03: 00.0: firmware: requesting dahdi-fw-a4b.bin
wcaxx 0000: 03: 00.0: Found dahdi-fw-a4b.bin (version: d001e) Preparing for flash
wcaxx 0000: 03: 00.0: Uploading dahdi-fw-a4b.bin. This can take up to 30 seconds.
dahdi_transcode: Loaded.
INFO-xpp: FEATURE: with sync_tick () from DAHDI
dahdi_devices pci: 0000: 03: 00.0: local span 1 is already assigned span 1
FreePBX 12 + Asterisk 11 + chansip. What could be better?