By default, fusionpbx web GUI communicates with various parts of freeswitch using an event socket (implemented through the module mod_event_socket) on 127.0.0.1 port 8021. Unfortunately in pfsense, the loopback address is somehow disabled, therefore if you are using pfsense you have to change this to use the specific IP address of your server instead. You have to do this in two places. One is System-Settings, and the other is Advanced-XML Editor-Autoload_configs/event_socket.conf.xml (param name="listen-ip" - change the value). After saving these two changes and restarting freeswitch it will work.
I also ran into some problems with modules in the pfsense version of fusionpbx. The modules section of fusionpbx defined a module called hash. I had to edit this by replacing each instance of the word hash to limit. so mod_hash became mod_limit.
This was preventing javascripts from running. However, javascripts were also prevented from running because of a fault loading spidermonkey (it cannot be made to load as it claims to be missing library files which are present) and accordingly, if you need javascript support the current release of freeswitch for pfsense is not going to work for you. If you can use LUA instead then you should be ok. Unfortunately the only way to upgrade freeswitch on pfsense is to recompile a new copy, which can't be done on pfsense because the necessary files are missing and can't be loaded, so you need to have a freebsd install that matches the pfsense install and compile it there and transfer the files over - too complicated for me at this point.
So for now, this is where I leave pfsense. I will return to Centos as I need the javascript support at this point in time. The other reasons I am leaving pfsense at this time are:
- I can't find an easy way to back up the harddrive image as the unix applications I know how to use (eg. gparted and partimage) are not available in freebsd and if I install tinycore linux on the same system and run them from there instead, I still can't access the pfsense harddrive area because it is running ufs which apparently isn't supported in linux. Someone with a better understanding of freebsd probably doesn't have this problem.
- I was struggling to get the phone system to work the way I wanted it - with pfsense 1.2.3 you have to have two network cards. Fusionpbx binds to the WAN card, so I wanted to have the LAN card with nothing plugged into it and to have all the phones connected on the WAN side. ie. fusionpbx would be a node on the private LAN but connected only by the WAN card. I couldn't get the phones to register with it when setup this way - probably because I wasn't fully understanding the firewall functionality in pfsense.
- I probably could have got this to work with a bit more research, but I concluded that because I could only do the web gui administration from the LAN card side of pfsense, and I wanted to be able to do remote support of it, I needed to get OpenVPN working so I could use that to reach the LAN side of pfsense from the WAN side. But I didn't get OpenVPN working yet.
I don't think any of these problems are insurmountable, but at this time I don't have the time available to research and play to overcome them. Therefore I'm returning to Centos based FusionPBX for now as I know that will work as I use that in my test environment still.
This blog records the steps for setting up a fusionpbx (using Freeswitch) and will give tips for people who have come from a Trixbox/Asterisk background.
FusionPBX for ex-Trixbox users
This blog is intended to be read in sequential order as it is a series of steps that I followed to build a fully functioning fusionpbx phone system. However you might just need to find out how to do a particular thing so you might want to use the search box below to find that specific step. Please give feedback - if you know a better way to do something share it!
Showing posts with label pfsense. Show all posts
Showing posts with label pfsense. Show all posts
Tuesday, September 21
Monday, August 23
Did I make the right decision?
At the start of this process I decided to use the Centos ISO for installing FusionPBX. Well, I'm beginning to question this decision now for the following reasons:
1. although I can update the FusionPBX code very easily with a single button to press, I cannot update the Freeswitch version without learning how to compile updates from git. This is because there are no updates available for FusionPBX using a package manager in Centos at this time.
2. There are permission issues in the Centos image - as you will have already seen earlier in my blog - I've fixed some of them but I suspect that there are others as there are still some things that don't work right.
3. It seems that Centos is not the most efficient OS and takes more memory to function well than something like FreeBSD does.
So I'm looking to change to FreeBSD. Actually to be more precise, I'm looking to change to pfsense because this runs on FreeBSD and actually uses an even more stripped down version of FreeBSD so that it runs with less memory. Doing this apparently solves all the problems I've identified above. I'm going to start by trying pfsense 1.2.3 not pfsense 2 as I understand it isn't quite working well with version 2 yet.
UPDATE: Well, I've installed pfsense a few days back (using the download here: http://www.pfsense.org/index.php?option=com_content&task=view&id=58&Itemid=46) and loaded fusionpbx on top of it (using these instructions: http://wiki.fusionpbx.com/index.php/PfSense_Install#pfSense_1.2.3_or_pfSense_2.0). I'm still fiddling with the setup a little and experimenting with it and when I'm happy I'll post more details. For now the update is that it seems to be good, although I think I may have a permission problem right now that I need to overcome and document. One of the nice benefits that there seems to be is that pfsense appears to come already setup with OpenVPN which means that once I have that up and running remote administration should be very straightforward in theory, though I haven't tried it yet.
Warning: I have been informed that there is a problem running fusionpbx on an embedded version of pfsense - apparently due to the file system used by pfsense, some data is lost when the machine is rebooted and this impacts the operation of fusionpbx. This issue apparently does not apply to pfsense installed on a harddrive though.
My conclusions may not suit you. You need to work out what is important to you and to test it yourself!
1. although I can update the FusionPBX code very easily with a single button to press, I cannot update the Freeswitch version without learning how to compile updates from git. This is because there are no updates available for FusionPBX using a package manager in Centos at this time.
2. There are permission issues in the Centos image - as you will have already seen earlier in my blog - I've fixed some of them but I suspect that there are others as there are still some things that don't work right.
3. It seems that Centos is not the most efficient OS and takes more memory to function well than something like FreeBSD does.
So I'm looking to change to FreeBSD. Actually to be more precise, I'm looking to change to pfsense because this runs on FreeBSD and actually uses an even more stripped down version of FreeBSD so that it runs with less memory. Doing this apparently solves all the problems I've identified above. I'm going to start by trying pfsense 1.2.3 not pfsense 2 as I understand it isn't quite working well with version 2 yet.
UPDATE: Well, I've installed pfsense a few days back (using the download here: http://www.pfsense.org/index.php?option=com_content&task=view&id=58&Itemid=46) and loaded fusionpbx on top of it (using these instructions: http://wiki.fusionpbx.com/index.php/PfSense_Install#pfSense_1.2.3_or_pfSense_2.0). I'm still fiddling with the setup a little and experimenting with it and when I'm happy I'll post more details. For now the update is that it seems to be good, although I think I may have a permission problem right now that I need to overcome and document. One of the nice benefits that there seems to be is that pfsense appears to come already setup with OpenVPN which means that once I have that up and running remote administration should be very straightforward in theory, though I haven't tried it yet.
Warning: I have been informed that there is a problem running fusionpbx on an embedded version of pfsense - apparently due to the file system used by pfsense, some data is lost when the machine is rebooted and this impacts the operation of fusionpbx. This issue apparently does not apply to pfsense installed on a harddrive though.
My conclusions may not suit you. You need to work out what is important to you and to test it yourself!
Subscribe to:
Posts (Atom)