pfsense wizard & BlueJeans
"I wonder if I can fudge the wizard?" - this is not an archaic questionably legal practice - but instead, me making changes to the pfsense wizard to include the ports required for including BlueJeans and Wifi-Calling into its VoIP configuration.
// The Problem
Well - yes, apparently you can firstly. I am an iptables, once ipchains kind of guy, and increasingly… kicking and screaming… firewalld. Now I am working with pfSense here - and that is a BSD of some description - specifically FreeBSD… so this is ipfw* equally QoS/Traffic Shaping is being done with what appears to be a bit bucket approach. SO, rather than having to manual enter things when I run the wizard to ensure they stay where I need them - maybe I should mess with the scripting. Decision made.
I make heavy use of BlueJeans video conferencing with work. It's great. Mainly it's great because it works well - but other quick wins are:
- It is super low friction to get people involved (send an URL to someone with a browser/connection/camera/mic;
- It doesn't require software installation to use;
- There are local clients available, and Linux is supported.
- Meeting room configurations exist, and the implementations we have work well;
- It is not / has not been bought by Microsoft;
Ensuring nothing in the homestead steals away available resources from this would be ace, this or the hard/soft SIP phones - and while we are at it - let's stick a green light on WiFi-Calling as well, as that is ace**.
// Addressing the Problem
You probably already have SSH with keys only installed on the host - so dive in and open the following after backing it up (cp is unlikely to bite you):
vi /etc/inc/wizardapp.inc
Now note that this says VI. Now for Linux users, that is going to be VIM usually - but no. Here, in 2019 this is VI - with the funny cursor keys, del cancelling input mode, and ALL of the joys you had forgotten about.
/* asterisk server / same as vonage */
$voiplist['Asterisk'] = array();
$voiplist['Asterisk'][] = array('Asterisk', 'udp', '5060', '5069', 'both');
$voiplist['Asterisk'][] = array('Asterisk', 'udp', '10000', '20000', 'both');
Having found this I worked through the following. Having had a moment to think about this - writing it out in an editor, writing this first even, copying and pasting would have made life a lot easier… but you live and you learn right? So yes - I replace that with this:
/* asterisk server / same as vonage */
$voiplist['Asterisk'] = array();
$voiplist['Asterisk'][] = array('Asterisk1', 'udp', '5060', '5069', 'both');
$voiplist['Asterisk'][] = array('Asterisk2', 'udp', '10000', '20000', 'both');
$voiplist['Asterisk'][] = array('Asterisk3', 'tcp', '1720', '1720', 'both');
$voiplist['Asterisk'][] = array('Asterisk4', 'tcp', '5000', '5999', 'both');
$voiplist['Asterisk'][] = array('Asterisk5', 'udp', '5000', '5999', 'both');
$voiplist['Asterisk'][] = array('Asterisk7', 'udp', '500', '500', 'both');
$voiplist['Asterisk'][] = array('Asterisk8', 'udp', '4500', '4500', 'both');
Then while running the Firewall > Traffic Shaper > Wizards that I require there - when selecting VoIP provider I selected 'Asterisk / Vonage' from the drop down - and continued through the rest of the choices to completion.
It may not be ideal, it may not be the right way to do things - but it works.
Go
*I once described the difference between Linux and BSD's
** There is a separate bucket for facetime that pfsense will configure, but it is a high priority… their VoIP trumps everything. I would like BlueJeans included in that.