Instal BigBlueButton (BBB) pada Ubuntu 16.04¶
Ada 2 metode dalam melakukan instalasi BBB:
- Manual, langkah demi langkah
- Otomatis, menggunakan skrip
Berikut pembahasannya
Manual¶
Persiapan¶
#!/bin/bash
set -eux
#
apt-get install -y language-pack-en
update-locale LANG=en_US.UTF-8
systemctl show-environment
free -h
cat /etc/lsb-release
uname -m
ip addr | grep inet6
uname -r
cat /proc/cpuinfo | awk '/^processor/{print $3}' | wc -l
Proses¶
#!/bin/bash
set -eux
#
grep "multiverse" /etc/apt/sources.list
#
add-apt-repository -y ppa:bigbluebutton/support
add-apt-repository -y ppa:rmescandon/yq
apt-get update
apt-get dist-upgrade
# repo MongoDB & NodeJS
wget -qO - https://www.mongodb.org/static/pgp/server-3.4.asc | apt-key add -
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.4.list
apt-get update
apt-get install -y mongodb-org curl
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
apt-get install -y nodejs
# repo BigBlueButton
wget https://ubuntu.bigbluebutton.org/repo/bigbluebutton.asc -O- | apt-key add -
echo "deb https://ubuntu.bigbluebutton.org/xenial-22/ bigbluebutton-xenial main" | tee /etc/apt/sources.list.d/bigbluebutton.list
apt-get update
apt-get install -y bigbluebutton
apt-get install -y bbb-html5
#
apt-get dist-upgrade
bbb-conf --restart
bbb-conf --check
bbb-conf --status
bbb-conf --secret
# demo
apt-get install -y bbb-demo
apt-get remove -y bbb-demo
Penyelesaian¶
#!/bin/bash
set -eux
# variable
INSTANCE_FQDN="sintas.proxsis.co.id"
SSL_EMAIL="[email protected]"
#
bbb-conf --setip $INSTANCE_FQDN
#
apt-get update
apt-get install -y software-properties-common
add-apt-repository -y universe
add-apt-repository -y ppa:certbot/certbot
apt-get install -y certbot
#
mkdir -p /etc/nginx/ssl
openssl dhparam -out /etc/nginx/ssl/dhp-4096.pem 4096
#
certbot --webroot -w /var/www/bigbluebutton-default/ -n --agree-tos -m $SSL_EMAIL -d $INSTANCE_FQDN certonly
nano /etc/nginx/sites-available/bigbluebutton
server {
server_name $INSTANCE_FQDN;
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/letsencrypt/live/$INSTANCE_FQDN/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/$INSTANCE_FQDN/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS:!AES256";
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/ssl/dhp-4096.pem;
nano /etc/bigbluebutton/nginx/sip.nginx
location /ws {
proxy_pass https://203.0.113.1:7443;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_read_timeout 6h;
proxy_send_timeout 6h;
client_body_timeout 6h;
send_timeout 6h;
}
nano /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties
#----------------------------------------------------
# This URL is where the BBB client is accessible. When a user successfully
# enters a name and password, she is redirected here to load the client.
bigbluebutton.web.serverURL=https://$INSTANCE_FQDN
nano /usr/share/red5/webapps/screenshare/WEB-INF/screenshare.properties
streamBaseUrl=rtmp://bigbluebutton.example.com/screenshare
jnlpUrl=https://$INSTANCE_FQDN/screenshare
jnlpFile=https://$INSTANCE_FQDN/screenshare/screenshare.jnlp
sed -e 's|http://|https://|g' -i /var/www/bigbluebutton/client/conf/config.xml
nano /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml
kurento:
wsUrl: wss://$INSTANCE_FQDN/bbb-webrtc-sfu
note:
enabled: true
url: https://bbb.example.com/pad
nano /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml
playback_protocol: https
bbb-conf --restart
nano /var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp
String BigBlueButtonURL = "https://bigbluebutton.example.com/bigbluebutton/";
Otomatis¶
Tahapaannya adalah sebagai berikut:
- Menyiapkan peladen TURN, dengan spesifikasi minimal 1c1gb
- Instalasi peladen BBB terhubung ke TURN, dengan spesifikasi minimal 4c8gb
Persiapan¶
# lihat terlebih dahulu panduan dan parameter yang dapat digunakan
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -h
Script for installing a BigBlueButton 2.2 (or later) server in about 15 minutes.
This script also supports installation of a coturn (TURN) server on a separate server.
USAGE:
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- [OPTIONS]
OPTIONS (install BigBlueButton):
-v <version> Install given version of BigBlueButton (e.g. 'xenial-220') (required)
-s <hostname> Configure server with <hostname>
-e <email> Email for Let's Encrypt certbot
-x Use Let's Encrypt certbot with manual dns challenges
-a Install BBB API demos
-g Install Greenlight
-c <hostname>:<secret> Configure with coturn server at <hostname> using <secret>
-m <link_path> Create a Symbolic link from /var/bigbluebutton to <link_path>
-p <host> Use apt-get proxy at <host>
-r <host> Use alternative apt repository (such as packages-eu.bigbluebutton.org)
-d Skip SSL certificates request (use provided certificates from mounted volume)
-h Print help
OPTIONS (install coturn only):
-c <hostname>:<secret> Setup a coturn server with <hostname> and <secret> (required)
-e <email> Configure email for Let's Encrypt certbot (required)
OPTIONS (install Let's Encrypt certificate only):
-s <hostname> Configure server with <hostname> (required)
-e <email> Configure email for Let's Encrypt certbot (required)
-l Install Let's Encrypt certificate (required)
-x Use Let's Encrypt certbot with manual dns challenges (optional)
EXAMPLES:
Sample options for setup a BigBlueButton server
-v xenial-220
-v xenial-220 -s bbb.example.com -e [email protected]
-v xenial-220 -s bbb.example.com -e [email protected] -g
-v xenial-220 -s bbb.example.com -e [email protected] -g -c turn.example.com:1234324
Sample options for setup of a coturn server (on a different server)
-c turn.example.com:1234324 -e [email protected]
SUPPORT:
Community: https://bigbluebutton.org/support
Docs: https://github.com/bigbluebutton/bbb-install
Proses¶
TURN Server¶
#!/bin/bash
set -eux
# variabel
TURN_FQDN="sub.domain.tld"
TURN_SECRET="rahasia8sd16kara"
SSL_EMAIL="[email protected]"
#
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | \
bash -s -- \
-c $TURN_FQDN:$TURN_SECRET \
-e $SSL_EMAIL
BigBlueButton Server¶
#!/bin/bash
set -eux
# variabel
BBB_FQDN="sub.domain.tld"
TURN_FQDN="sub1.domain.tld"
SSL_EMAIL="[email protected]"
TURN_SECRET="rahasia8sd16kara"
#
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | \
bash -s -- \
-v xenial-22 \
-s $BBB_FQDN \
-c $TURN_FQDN:$TURN_SECRET \
-e $SSL_EMAIL \
-g -a
Penyelesaian¶
# Mengh
apt-get purge bbb-demo
# Tomcat7 terlambat aktif? Jalankan pemeriksaan hasil instalasai 2x untuk memastikan Tomcat7 berjalan
bbb-conf --check