BigblueButton
关于Bigbluebutton
BigblueButton是开源的用于在线学习的Web会议系统。通过web浏览器使每个学生都有机会获得高品质的在线学习体验。Bigbluebutton实现了音频,视频,演示(与白板标记)的实时共享,可以轮询演示,发送表情,聊天和演示者的桌面共享的功能。它支持超过35中语言,并支持JAWS屏幕阅读。
Bigbluebutton的会话用户有两种:观众和支持人。观众(通常为学生)可以聊天,发送表情,发送/接收音频和视频。支持人可以使用所有的功能,对观众静音/取消静音,锁定观众。目前支持人可以上传幻灯片,Microsoft office Word 文档 ,pdf文档,图片等演示文档,并可以在文档上添加注释,以及共享他的桌面,其他观众都可以看到。
Bigbluebutton的安装
目前最新的Bigbluebutton的版本为1.0
1、对于BigBlueButton 1.0服务器的先决条件是
· Ubuntu的14.04 64位server版(桌面版也可)
· 4GB内存(8 GB更好)
· 四核2.6GHZ的CPU(或更快)
· TCP80,1935,9123端口都可以访问(没被占用)
· UDP端口16384 – 32768可访问
· 端口80是不被其他应用占用
· 可用磁盘空间500G(或更多)用于记录
· 100兆位/秒的带宽
· 专用(裸机)的硬件(未虚拟化)
如果你安装Bigbluebutton为了开发学习,那么在虚拟环境上(虚拟机)安装也是可以的。这样的话你并不需要500G的磁盘空间,50G就够了。但是,如果你打算在生产中运行Bigbluebutton,建议你在专用的服务器上安装。
对于用户来说,我们建议(最低)1.0兆位/秒的下载速度和0.5兆位/秒上传速度。
除了确保您的服务器满足上述要求一些检查。首先,服务器的区域必须是en_US.UTF-8。为了验证,输入以下命令
$ cat/etc/default/locale
LANG="en_US.UTF-8"
如果你没有看到LANG="en_US.UTF-8",然后输入以下命令。
$ sudo apt-getinstall language-pack-en
$ sudoupdate-locale LANG=en_US.UTF-8
然后注销并重新登录到你的ssh会话(这将重新加载配置)。运行cat/etc/default/locale
一次,并验证只能看到一行LANG="en_US.UTF-8"
。注意:如果你看到一个额外的行LC_ALL=en_US.UTF-8
,然后删除设置LC_ALL
,然后再继续。
检查你的服务器运行的是64位。
$ uname -m
x86_64
检查你的Ubuntu版本的Ubuntu是14.04。
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.X LTS"
Bigbluebutton 1.0的设计、开发、安装都是在Ubuntu 14.04 64位系统进行的。换句话说,并没有在其他Ubuntu的版本上测试Bigbluebutton1.0.
2、安装Bigbluebutton 1.0
①更新你的服务器
你可以通过ssh登录到你的服务器(或直接登录)。首先,确保你的服务器/etc/apt/sources.list的文件中有“trusty multiverse”,你可以这样验证:$ grep "multiverse" /etc/apt/sources.list
如果输出结果像这样:deb http://archive.ubuntu.com/ubuntu trusty multiverse
要么
deb http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
如果你的网址是不同的,最重要的是你看到一个包含“multiverse
”的未加注释的链接。如果没有这样的结果,你可以执行下面的命令:
$ echo "deb http://us.archive.ubuntu.com/ubuntu/ trusty multiverse" | sudo tee -a /etc/apt/sources.list
在进一步讨论之前,做一个DIST升级,以确保你的服务器上的所有当前包是最新的。
$ sudo apt-get update
$ sudo apt-get dist-upgrade
在进行下一步骤之前,执行重新启动。Reboot
②更新LIbreOffice
Ubuntu14.04 默认安装的LibreOffice的版本为4.2.x。但是为了改善Libreoffice将Microsoft office文档转换为PDF的性能,需要更新LibreOffice,输入一下命令:
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:libreoffice/libreoffice-4-4
另外,执行$ sudo add-apt-repository -y ppa:ondrej/php
③为
Bigbluebutton
添加
key
需要添加
Bigbluebutton
包服务器的访问地址。首先,添加
Bigbluebutton
的
key
:
$ wget http://ubuntu.bigbluebutton.org/bigbluebutton.asc -O- | sudo apt-key add -
这个命令很可能第一次不能成功执行,不要放弃再执行一次!
接下来,添加BigBlueButton库URL。
$ echo "deb http://ubuntu.bigbluebutton.org/trusty-1-0/ bigbluebutton-trusty main" | sudo tee /etc/apt/sources.list.d/bigbluebutton.list
最后,更新软件包列表。
$ sudo apt-get update
④安装ffmpeg
Ffmpeg是BigBlueButton 1.0创建播放文件(音频,视频,和桌面共享组件)的组件。要安装的ffmpeg,创建一个名为install-ffmpeg.sh
将下面的脚本内容复制粘贴。
sudo apt-get install build-essential git-core checkinstall yasm texi2html libvorbis-dev libx11-dev libvpx-dev libxfixes-dev zlib1g-dev pkg-config netcat libncurses5-dev
FFMPEG_VERSION=2.3.3
cd /usr/local/src
if [ ! -d "/usr/local/src/ffmpeg-${FFMPEG_VERSION}" ]; then
sudo wget "http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2"
sudo tar -xjf "ffmpeg-${FFMPEG_VERSION}.tar.bz2"
fi
cd "ffmpeg-${FFMPEG_VERSION}"
sudo ./configure --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx
sudo make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:${FFMPEG_VERSION}" --backup=no --deldoc=yes --default
接下来给脚本添加可执行权限,并执行
$ chmod +x install-ffmpeg.sh
$ ./install-ffmpeg.sh
执行完之后,检查是否安装成功,输入ffmpeg –version,如果你看到一下内容,则安装成功:
$ ffmpeg -version
ffmpeg version 2.3.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Aug 18 2014 17:35:05 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx
libavutil 52. 92.100 / 52. 92.100
libavcodec 55. 69.100 / 55. 69.100
libavformat 55. 48.100 / 55. 48.100
libavdevice 55. 13.102 / 55. 13.102
libavfilter 4. 11.100 / 4. 11.100
libswscale 2. 6.100 / 2. 6.100
libswresample 0. 19.100 / 0. 19.100
⑤安装BigBluebutton
$ sudo apt-get install bigbluebutton
此命令安装所有 BigBlueButton的组件与它们的依赖。
键入“Y”,然后按回车安装。如果出现一个错误信息
...... Error: FreeSWITCH didn't start
你可以忽略它,你将在第9步做所有的BigBlueButton组件干净的重新启动。
ImageMagick的安全问题
Ubuntu14.04所包含ImageMagick的版本易受CVE-2016-3714的攻击,这可导致在远程执行代码。为了解决这个问题,请编辑该文件/etc/ImageMagick/policy.xml,并确保它具有以下内容:
<policymap>
<policydomain="coder"rights="none"pattern="EPHEMERAL"/>
<policydomain="coder"rights="none"pattern="URL"/>
<policydomain="coder"rights="none"pattern="HTTPS"/>
<policydomain="coder"rights="none"pattern="MVG"/>
<policydomain="coder"rights="none"pattern="MSL"/>
<policydomain="coder"rights="none"pattern="TEXT"/>
<policydomain="coder"rights="none"pattern="SHOW"/>
<policydomain="coder"rights="none"pattern="WIN"/>
<policydomain="coder"rights="none"pattern="PLT"/>
</policymap>
运行convert -list policy,以确认安全策略已经应用。
⑥安装API演示
这个步骤是可选的。
如果你想交互测试BigBlueButton服务器(而不是使用第三方集成),可以安装一组API演示。
$ sudo apt-get install bbb-demo
如果你想从你的BigBlueButton服务器的欢迎页面加入演示会议,你需要安装BBB-demo包。之后,如果你想删除的API演示,您可以输入命令
$ sudo apt-get purge bbb-demo
⑦安装客户端自检
此步骤是可选
BigBlueButton有一个自检实用程序,可以帮助诊断,可能会阻止用户启动BigBlueButton联网和配置问题。要安装客户端自检页:
$ sudo apt-get install bbb-check
这就是你看到相同的欢迎页面的客户端自检。
后来,如果你想删除客户端自检页,你可以输入命令
$ sudo apt-get purge bbb-check
⑧启用
WebRTC
音频技术
要启用WebRTC技术的音频,请执行下列操作
$ sudo bbb-conf --enablewebrtc
⑨进行一个干净的重新启动
输入命令:
$ sudo bbb-conf --clean
$ sudo bbb-conf --check
该--clean
选项将清除BigBlueButton所有的日志文件。该--check
选项将通过日志文件用grep查找错误。
下面是一个新的安装主机demo.bigbluebutton.org的服务器上的事例输出:
$ sudo bbb-conf --check
BigBlueButton Server 1.0.N (NNNN)
Kernel version: 3.13.0-85-generic
Distribution: Ubuntu 14.04.4 LTS (64-bit)
Memory: 7698 MB
/var/www/bigbluebutton/client/conf/config.xml (bbb-client)
Port test (tunnel): demo.bigbluebutton.org
Red5: demo.bigbluebutton.org
useWebrtcIfAvailable: true
/opt/freeswitch/conf/sip_profiles/external.xml (FreeSWITCH)
websocket port: 5066
WebRTC enabled: true
/etc/nginx/sites-available/bigbluebutton (nginx)
server name: demo.bigbluebutton.org
port: 80
port: 443 ssl
bbb-client dir: /var/www/bigbluebutton
/var/lib/tomcat7/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties (bbb-web)
bbb-web host: demo.bigbluebutton.org
/var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp (API demos)
url: demo.bigbluebutton.org
/var/www/bigbluebutton/check/conf/config.xml (client check)
client check: demo.bigbluebutton.org
/usr/share/red5/webapps/bigbluebutton/WEB-INF/red5-web.xml (red5)
voice conference: FreeSWITCH
capture video: true
capture desktop: true
/usr/local/bigbluebutton/core/scripts/bigbluebutton.yml (record and playback)
playback host: demo.bigbluebutton.org
** Potential problems described below **
# Warning: The API demos are installed and accessible from:
#
# https://demo.bigbluebutton.org/demo/demo1.jsp
#
# These API demos allow anyone to access your server without authentication
# to create/manage meetings and recordings. They are for testing purposes only.
# If you are running a production system, remove them by running:
#
# sudo apt-get purge bbb-demo
至此Bigbluebutton已经安装完成,接下来打开浏览器输入你的主机ip即可!测试一下吧!(建议使用火狐浏览器)。
源文档:http://docs.bigbluebutton.org/install/install.html。