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 team.

*I once described the difference between Linux and BSD’s being akin to entering into a conversation with someone speaking broad Scotts, or an angry Scoucer. It all starts off okay – and then you realise half the words don’t work, and trying to gain context on those you do have is equally failing.

** 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.

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: