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