BigBlueButton: Installation Notes

Here’s a quick follow up to my previous post about my first steps with a BigBlueButton server installation. Like Jitisi, getting a basic BBB instance up and running in a VM is straight forward. There is a good description over here with lots of details that you should definitely read before giving it a go. Before you do, here’s a super abbreviation of it with some additional tips and tricks thrown in for good measure:

Ubuntu 16.04!?

To install BBB, you need a VM with at least 2 cores and 4 GB of memory so the basic setup requires a bit more hardware than a basic Jitsi install. One thing that I found a bit strange at first is that BBB currently still requires Ubuntu 16.04 LTS whose support ends in April 2021. There seems to be a BBB beta version that runs on Ubuntu 18.04 but perhaps they should wait for Ubuntu 20.04 and then have a go with that one? A bit strange to base the system on such an old OS software version as the software is actively developed. Fortunately, cloud providers (still) offer Ubuntu 16.04 as a base system.

The Single Command Goodness!

In the end, however, installing BBB boils down to a single command line:

wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-220 -s bbb.yourdomain.com -e yourname@email-domain.com -g

This command will install BBB on the server, the Greenlight web front end for user and room management and installs a Let’s encrypt certificate. Once the command is done, the BBB server is ready for use. And here are some things to think about after you’ve made the first steps:

Create an Admin Account

By default, the instance lets anyone register. If you want to keep it for private use, create an administrator account and then switch-off open registration in the web based user interface:

docker exec greenlight-v2 bundle exec rake user:create["admin","xyz@domain.de","ultrasecretpwd","admin"]

That’s all there is to it!

Block Incoming SIP Traffic

Next, one important thing is to block port 5060 for incoming traffic. BBB uses a SIP component that exposes its port to the outside world. It only takes a few minutes for bots to find the new server and bombarding it with SIP register and invite messages. It doesn’t hurt but creates some load. So here’s how to stop the SIP bots:

iptables -A INPUT -p udp --destination-port 5060 -j DROP

Disable Recordings

By default, BBB records all sessions. For privacy reasons that might not be desirable. The following two variables in the BBB properties file turns this off completely:

cd /usr/share/bbb-web/WEB-INF/classes
nano bigbluebutton.properties


# 1. Disallow the user to start/stop recording.
#    The following is TRUE by default

allowStartStopRecording=false

# 2. Disable background recording
#    Set from FALSE to TRUE

disableRecordingDefault=true

Then restart BBB:

sudo bbb-conf --restart

And that’s it, you are good to go then!

2 thoughts on “BigBlueButton: Installation Notes”

  1. Thx for the post!

    Really like to test BBB – but don’t know what to do, if I only want to test it at home? Don’t wanna link it to a website (so no let’s encrypt and dns entries needed).

    Any chance to run it with a VM at home (and only test it at home via IP Address)?

    1. Haven’t tried that. Perhaps you can put a domain name in /etc/hosts on your computer AND on the VM. Also, you then need to figure out if BBB also runs over plain http and if RTP encryption works. Also, you need to think about TCP/UDP port mapping to/from the VM. Seriously, I think its simpler to get a domain name and get things running in a VM at a cloud hoster with Letsencrypt certificates and real domain name.

Comments are closed.