BigBlueButton_Debian_Squeeze, version 1
parent
bda2cc9774
commit
3a25788ea2
158
BigBlueButton_Debian_Squeeze.md
Normal file
158
BigBlueButton_Debian_Squeeze.md
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
How to install BigBlueButton on Debian Squeeze
|
||||||
|
==============================================
|
||||||
|
|
||||||
|
This small tutorial is to give a step by step procedure to install a
|
||||||
|
BigBlueButton 0.71a server on Debian Squeeze 32bit. I based it on the
|
||||||
|
[official
|
||||||
|
tutorial](http://code.google.com/p/bigbluebutton/wiki/InstallationBigBlueButtonDebian)
|
||||||
|
which is clearly over complicated (compiled things from source), have
|
||||||
|
some bogus instructions (ie. add Ubuntu’s multiverse to a debian
|
||||||
|
server), etc.
|
||||||
|
|
||||||
|
1. Install
|
||||||
|
----------
|
||||||
|
|
||||||
|
This is the procedure I followed which, I think, is much easier :
|
||||||
|
|
||||||
|
- Add repositories with their keys
|
||||||
|
# bigbluebutton repository key
|
||||||
|
wget http://ubuntu.bigbluebutton.org/bigbluebutton.asc -O- | apt-key add -
|
||||||
|
# Freeswitch PPA key
|
||||||
|
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 451AE93C
|
||||||
|
echo -e "deb http://ubuntu.bigbluebutton.org/lucid/ bigbluebutton-lucid main\ndeb http://ppa.launchpad.net/freeswitch-drivers/freeswitch-nightly-drivers/ubuntu lucid main" > /etc/apt/sources.list.d/bigbluebutton.list
|
||||||
|
aptitude update
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
|
||||||
|
- Install pre-requisites with necessary workaround for packaging bugs
|
||||||
|
:
|
||||||
|
- Install sudo
|
||||||
|
All script are Ubuntufied so you will have to install sudo or
|
||||||
|
some scripts (bbb-conf) won’t work correctly.
|
||||||
|
aptitude install sudo
|
||||||
|
|
||||||
|
- Install libmpfr
|
||||||
|
libmpfr has been superseded by
|
||||||
|
[libmpfr4](http://packages.qa.debian.org/m/mpfr/news/20110223T163917Z.html)
|
||||||
|
and so is no longer available in Debian Squeeze. swftools
|
||||||
|
depends on it but the version in Lenny is a little bit too old
|
||||||
|
(2.3.1), so instead of compiling the source and making a new
|
||||||
|
package, as indicated in the official how to, we’ll just resolve
|
||||||
|
the dependencies by using the one from ubuntu :
|
||||||
|
aptitude install libgmp3c2
|
||||||
|
wget http://ubuntu.mirror.cambrium.nl/ubuntu//pool/main/m/mpfr/libmpfr1ldbl_2.4.2-3ubuntu1_i386.deb
|
||||||
|
dpkg -i libmpfr1ldbl_2.4.2-3ubuntu1_i386.deb
|
||||||
|
|
||||||
|
- Another workaround to avoid errors later on :
|
||||||
|
mkdir -p /var/www/nginx-default/
|
||||||
|
touch /var/www/nginx-default/50x.html
|
||||||
|
- Now you can install BigBlueButton
|
||||||
|
aptitude install bbb-freeswitch-config bbb-client bigbluebutton
|
||||||
|
|
||||||
|
- Configure BigBlueButton and start it :
|
||||||
|
bbb-conf --clean
|
||||||
|
bbb-conf --check
|
||||||
|
bbb-conf --setip YOUR_IP
|
||||||
|
|
||||||
|
You can now go to http://YOUR\_IP and try the demo.
|
||||||
|
|
||||||
|
2. Tips and tricks
|
||||||
|
------------------
|
||||||
|
|
||||||
|
BigBlueButton is a fantastic tool that works incredibly well, but it is
|
||||||
|
still quite young, and is not yet very flexible in term of
|
||||||
|
configuration. So here are some tips that I collected, hoping they will
|
||||||
|
save you some hours of hair pulling.
|
||||||
|
|
||||||
|
### 2.1. Firewall setup
|
||||||
|
|
||||||
|
BigBlueButton require to open 3 ports : 80, 1935, 9123. You can also
|
||||||
|
open only port 80 and so tunnel everything through it, but you will most
|
||||||
|
likely get bitten by [this
|
||||||
|
bug](http://code.google.com/p/bigbluebutton/issues/detail?id=785) which
|
||||||
|
is a [known Linux/Mac Adobe Flash
|
||||||
|
bug](https://bugs.adobe.com/jira/browse/FP-4797) . Basically you will be
|
||||||
|
connected, and you will be able to do things but the session will
|
||||||
|
re-initalise every 20-30 seconds. This bug doesn’t affect Windows users
|
||||||
|
and is supposed to be solved in Flashplayer 11.0.1.3 beta for Linux and
|
||||||
|
Mac.
|
||||||
|
|
||||||
|
### 2.2. Redmine integration
|
||||||
|
|
||||||
|
BigBlueButton does not provide any administration GUI beside the demo,
|
||||||
|
it is up to you to use their API, to create meetings. As we are already
|
||||||
|
using Redmine I tried Redmine’s BigBlueButton plugin. :
|
||||||
|
|
||||||
|
cd /usr/local/share/redmine
|
||||||
|
ruby script/plugin install http://github.com/amartel/redmine_bbb.git
|
||||||
|
|
||||||
|
|
||||||
|
After restarting your Redmine instance, you will have a new plugin
|
||||||
|
available in Administration ->Plugins. Then you need to give users
|
||||||
|
BigBlueButton roles (create, join, moderate). Finally you need to go to
|
||||||
|
a project settings and activate the BigBlueButton module to enable the
|
||||||
|
“create meeting” link on the overview page.
|
||||||
|
|
||||||
|
### 2.3. Put BigBlueButton server behind a firewall or on a VPN
|
||||||
|
|
||||||
|
If you put your BigBlueButton server on a VPN or behind a firewall and
|
||||||
|
you want to configure a public access, the configuration can be very
|
||||||
|
tricky. Here is an example config providing that you have the following
|
||||||
|
topology :
|
||||||
|
|
||||||
|
WEB <=> Redmine/Web Server <=> BigBlueButton server
|
||||||
|
ExtIP : bigbluebutton.mydomain.com IP : 192.168.1.10
|
||||||
|
|
||||||
|
BigBlueButton requires to have an IP that resolves to the same name as
|
||||||
|
configured so either you can put a record in an internal DNS or add the
|
||||||
|
following to its /etc/hosts :
|
||||||
|
|
||||||
|
vi /etc/hosts
|
||||||
|
-> 192.168.1.10 bigbluebutton.mydomain.com
|
||||||
|
bbb-conf --setip bigbluebutton.mydomain.com
|
||||||
|
|
||||||
|
It will throw a message that the IP does not match but this is ok.
|
||||||
|
|
||||||
|
# IP does not match:
|
||||||
|
# IP from ifconfig: 192.168.1.10
|
||||||
|
# /etc/nginx/sites-available/bigbluebutton: bigbluebutton.mydomain.com
|
||||||
|
|
||||||
|
On the Redmine/Web server :
|
||||||
|
|
||||||
|
- Forward port 9123 to BigBlueButton’s server port 9123
|
||||||
|
- Forward port 1935 to BigBlueButton’s server port 1935
|
||||||
|
- Configure a new vhost called bigbluebutton.mydomain.com that does a
|
||||||
|
proxy pass to 192.168.1.10
|
||||||
|
- DO NOT TRY to put it on a subfolder (ie. mydomain.com/bbb) if you
|
||||||
|
don’t want to have to modify lots of bigblubutton’s source code.
|
||||||
|
|
||||||
|
In Redmine ->Administration ->Plugins ->BigBlueButton put
|
||||||
|
the following (no trailing slash or else you will hit 403 errors) :
|
||||||
|
|
||||||
|
- BigBlueButton server = http://bigbluebutton.mydomain.com
|
||||||
|
- Internal address = http://192.168.1.10
|
||||||
|
- salt : the salt you will find in
|
||||||
|
/var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
|
||||||
|
in beans.dynamicConferenceService.securitySalt
|
||||||
|
|
||||||
|
As we have an internal VPN with its own DNS, I do not know if you
|
||||||
|
require to add BigBlueButton’s IP to the web servers /etc/hosts file as
|
||||||
|
well.
|
||||||
|
|
||||||
|
Beware that BigBlueButton’s configuration is extremely sensitive, a
|
||||||
|
slight change in the above and it might not work. If you encounter any
|
||||||
|
issue with the above do not hesitate to ping us on
|
||||||
|
[IRC,](http://www.personalized-software.ie/support#chat) to [send us an
|
||||||
|
email](http://www.personalized-software.ie/contactus) or to contact the
|
||||||
|
[bigbluebutton crew.](http://bigbluebutton.org/)
|
||||||
|
|
||||||
|
### 2.4. End meeting after every participants logged out
|
||||||
|
|
||||||
|
You can do this easily by modifying the configuration :
|
||||||
|
|
||||||
|
vi /var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
|
||||||
|
-> beans.dynamicConferenceService.minutesElapsedBeforeMeetingExpiration=0
|
||||||
|
|
||||||
|
I found during my testing that the delay before the meeting is actually
|
||||||
|
closed can vary from a few seconds to a few minutes, but it does work.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user