Hướng dẫn cài đặt và sử dụng cơ bản BigBlueButton

30/12/2020

BigBlueButton thường được viết tắt là BBB một mã nguồn mở chạy trên web phục vụ cho hội nghị trực tuyến, dạy học online (hay lớp học online) và các dịch vụ trực tuyến khác.

BBB hỗ trợ chia sẽ audio, video, presentation, chat, và thậm chí là màn hình desktop thời gian thực, giúp việc thao tác được hỗ trợ đầy đủ nhất có thể.
xây dựng lớp học online

Hướng dẫn dưới đây sẽ giúp các bạn có thể dựng một server BBB

MỤC LỤC

  1. Yêu cầu cài đặt
  2. Chuẩn bị OS
  3. Cài đặt BBB
  4. Cài đặt Greenlight themes
    1. Cài đặt Docker
    2. Cài đặt Greenlight 2.0
    3. Update Greenlight
  5. Đăng kí tài khoản và truy cập
  6. Tắt tính năng đăng ký
  7. Kết luận

1. Yêu cầu cài đặt

  • BBB cài đặt và hoạt động ổn định trên Ubuntu16.04
  • Cấu hình tối thiểu để cài đặt BBB là RAM4GB 4Core và 40GB disk
  • Yêu cầu có kết nối Internet để cài đặt
  • Yêu cầu đăng nhập tài khoản có quyền root để thao tác
  • Đương nhiên Server cài đặt BBB cần yêu cầu Server trắng (Chưa cài đặt dịch vụ gì)

2. Chuẩn bị OS

Tạm thời disable firewalld

sudo apt-get install ufw -y sudo ufw disable

Đổi timezone về Asia/Ho_Chi_Minh

dpkg-reconfigure tzdata

Bổ sung env locale

echo "export LC_ALL=C" >>  ~/.bashrc

Cài đặt CMDlog

curl -Lso- https://raw.githubusercontent.com/nhanhoadocs/ghichep-cmdlog/master/cmdlog.sh | bash

Cài đặt Chronyd

apt install chrony -y service chrony restart hwclock --systohc

Update

sudo apt-get update -y  sudo apt-get upgrade -y  sudo apt-get dist-upgrade -y sudo apt-get autoremove 

3. Cài đặt BBB

Tài liệu cài đặt BBB đã được hướng dẫn chi tiết tại trang chủ https://docs.bigbluebutton.org/2.2/install.html. Bạn có thể cài đặt step by step hoặc cài đặt bằng script. Trong hướng dẫn dưới Onet sẽ hướng dẫn các bạn cài đặt bằng cách đơn giản nhất đó là cài đặt bằng Scripts

Cài đặt yq

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6657DBE0CC86BB64 sudo apt update

Cài đặt và start session byobu

sudo apt install -y byobu byobu

Cài đặt BBB bằng scripts

wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-220 -a

Quá trình cài đặt hoàn tất

4. Cài đặt Greenlight themes

4.1. Cài đặt Docker

Update

sudo apt-get update -y

Cho phép apt sử dụng https

 sudo apt-get -y install       apt-transport-https       ca-certificates       curl       gnupg-agent       software-properties-common 

Thêm Docker’s official GPG key:

 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 

Kiểm tra

 sudo apt-key fingerprint 0EBFCD88

Kết quả

root@ubuntu:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -  OK   root@ubuntu:~# sudo apt-key fingerprint 0EBFCD88  pub   4096R/0EBFCD88 2017-02-22              Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88 uid                  Docker Release (CE deb) <docker@docker.com>  sub   4096R/F273FCD8 2017-02-22 

Add repo

 sudo add-apt-repository      "deb [arch=amd64] https://download.docker.com/linux/ubuntu      $(lsb_release -cs)      stable" 

Update

 sudo apt-get update -y 

Cài đặt Docker

 sudo apt-get -y install docker-ce docker-ce-cli containerd.io  

Kiểm tra

docker -v

Kết quả

root@ubuntu:~# docker -v  Docker version 19.03.8, build afacb8b7f0 

Cài đặt docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose  sudo chmod +x /usr/local/bin/docker-compose   sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose 

Kiểm tra

 docker-compose --version 

Kết quả

root@ubuntu:~# docker-compose --version  docker-compose version 1.25.4, build 8d51620a 

4.2. Cài đặt Greenlight 2.0

Tạo thư mục để chứa các config

mkdir ~/greenlight && cd ~/greenlight 

Pull images bigbluebutton/greenlight:v2

docker pull bigbluebutton/greenlight:v2  docker pull postgres:9.5 

Greenlight sẽ đọc cấu hình .env trong folder ~/greenlight. Để tạo ra file .env mặc định chúng ta thực hiện

docker run --rm bigbluebutton/greenlight:v2 cat ./sample.env > .env 

Generating cấu hình secretkey cho Greenlight

docker run --rm bigbluebutton/greenlight:v2 bundle exec rake secret 

Kết quả

root@ubuntu:~/greenlight# docker run --rm bigbluebutton/greenlight:v2 bundle exec rake secret   7966bac6381007662a9281062d9d0510a01bbb54a3746cbdce2cd5c61fda58acc206163ac4a52c0455d4e1182abeea3c3dc66d4ce4b741c9d2695e60c413c04f 

Cấu hình secret key vừa gen phía trên vào SECRET_KEY_BASE của file .env

Cấu hình xác thực giữa BBB và Greenlight

 sudo bbb-conf --secret 

Kết quả

root@ubuntu:~/greenlight# sudo bbb-conf --secret    URL: http://10.10.30.155/bigbluebutton/    Secret: 3e2ac3b7d5b85d3582afcac40b63c18d 

Cấu hình file /root/greenlight/.env 2 tham số trên BIGBLUEBUTTON_ENDPOINTBIGBLUEBUTTON_SECRET

Kiểm tra config

docker run --rm --env-file .env bigbluebutton/greenlight:v2 bundle exec rake conf:check 

Kết quả kết nối thành công

root@ubuntu:~/greenlight# docker run --rm --env-file .env bigbluebutton/greenlight:v2 bundle exec rake conf:check   Checking environment: Passed  Checking Connection: Passed  Checking Secret: Passed 

Greenlight sẽ hoạt động trên /b để tránh xung đột các thành phần khác. Gen file cấu hình của NGINX

docker run --rm bigbluebutton/greenlight:v2 cat ./greenlight.nginx | sudo tee /etc/bigbluebutton/nginx/greenlight.nginx 

Kiểm tra

cat /etc/bigbluebutton/nginx/greenlight.nginx 

Restart NGINX

 sudo systemctl restart nginx 

Cấu hình để nginx mặc định sử dụng Greenlight. Bổ sung cuối file config /etc/nginx/sites-available/bigbluebutton ngay trước dấu } cuối cùng

vi /etc/nginx/sites-available/bigbluebutton 

Restart NGINX

sudo systemctl restart nginx 

Khởi tạo file docker-compose

docker run --rm bigbluebutton/greenlight:v2 cat ./docker-compose.yml > docker-compose.yml 

Random gen password cho PostgreSQL

export pass=$(openssl rand -hex 8); sed -i 's/POSTGRES_PASSWORD=password/POSTGRES_PASSWORD='$pass'/g' docker-compose.yml;sed -i 's/DB_PASSWORD=password/DB_PASSWORD='$pass'/g' .env 

Start GreenLight

docker-compose up -d 

Lưu ý:

  • Database lưu tại ~/greenlight/db
  • Thư mục log ~/greenlight/log

Cấu hình để docker tự động start mỗi lần restart máy. Chỉnh config trong docker-compose.yml ở mỗi services

 restart: always  

4.3. Update Greenlight

cd ~/greenlight docker pull bigbluebutton/greenlight:v2 docker-compose down  docker-compose up -d 

5. Đăng kí và truy cập

Chọn Sign up để đăng ký tài khoản mới

Lưu ý: BBB chỉ hỗ trợ Micro, Webcam, và chia sẻ màn hình khi có SSL/HTTPS.

6. Tắt tính năng đăng ký

Nếu bạn dùng hệ thống bigbluebutton để sử dụng trong nội bộ. Bạn nên tắt tính năng đăng ký tài khoản. Tạo một tài khoản admin để quản trị. Tự tạo tài khoản cho các người dùng trong công ty, doanh nghiệp và cấp cho họ. Việc này sẽ hạn chế những người không nằm trong công ty, doanh nghiệp của bạn tạo tài khoản ở đây.

Để tạo tài khoản admin, dùng lệnh:

docker exec greenlight-v2 bundle exec rake user:create["name","email","password","admin"]

  • Nhập thông tin vào các trường name, email, password. Giữ nguyên trường admin.

Để tạo user thường, dùng lệnh:

docker exec greenlight-v2 bundle exec rake user:create["name","email","password","username"]

  • Nhập thông tin vào các trường name, email, password, username.

Disable đăng ký tài khoản mới trên giao diện bằng cách chỉnh sửa cấu hình file /root/greenlight/.env

sed -Ei "s|ALLOW_GREENLIGHT_ACCOUNTS=true|ALLOW_GREENLIGHT_ACCOUNTS=false|g" /root/greenlight/.env

cd /root/greenlight

docker-compose down

docker-compose up -d

7. Kết luận

Việc xây dựng các ứng dụng cung cấp dịch vụ họp trực tuyến mang lại nhiều lợi ích cho các doanh nghiệp và tổ chức, tính ứng dụng vô cùng cao của nó sẽ mang lại sự trải nghiệm tuyệt vời. Còn chần chừ gì nữa hãy liên hệ với Onet để có thể bắt đầu sử dụng dịch vụ ngay hôm nay.

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

CentOS Delete Users

Linux is, by default, designed in such a manner that it allows more than one user in a single system in a very secure manner....
29/12/2020

[Zabbix] Giám sát Windows Server bằng zabbix-agent

Zabbix là một công cụ monitor đa nền tảng, do vậy việc cài zabbix-agent cho Windows Server là điều không...
30/12/2020

[DNS] DNS và các khái niệm liên quan

DNS hay Domain Name System, dịch nghĩa là hệ thống tên miền làm nhiệm vụ phân giải giữa địa chỉ...
30/12/2020