jitsi-meet限定內部使用(VPN) 安裝注意事項

jitsi-meet安裝後, 可查看 /var/log/jitsi/jvb.log , jicofo.log 看看是否有錯誤


1. 若遇到 PKIX path building failed 錯誤, 會造成mcu錯誤, 也就是無法多人(3人)以上一起視訊以及分享
需要把自己簽名的證書(不合法) , 新增至java的證書區

keytool -importcert -file /var/lib/prosody/<主機名稱>.crt  -keystore <java SDK path>/jre/lib/security/cacerts 
#刪除請把 -importcert 改成 delete

Example

keytool -importcert -file /var/lib/prosody/meet.test.com.crt  -keystore /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/cacerts 

有趣的是, 以上指令執行完畢, 需要輸入密碼,密碼預設是 changeit

改完後重開機.

ubuntu(VM)如何測試aes硬體解碼的功能

  1. 先讓vm不啟用aes, 然後執行
openssl speed -evp aes-256-cbc

再讓vm關機, 然後啟用aes, 重開機, 再執行上述指令, 比對數值即可.

2. 可以用以下指令測試支援哪些解碼

openssl ciphers -v 'ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS' 

3. nginx 與 apache httpd 都有加密的設定, 類似以下的寫法

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;

4. openssl speed 這指令可以列出來加密速度, 非常實用

jitsi meet效能調教(ubuntu)

** 設定檔案要備份
** 若原本設定檔案沒有以下建議的設定值,可以不要強制加上去

  1. 啟用硬體加解密功能
    切記一定要啟動硬體編碼 AES , 讓 nginx 能以較優的加解密速度連線


2. 修改相關設定檔案
/etc/jitsi/meet/<網域名稱>-config.js

##強制設定名稱
 requireDisplayName: true,
## 預設只開語音,不開視訊
 startAudioOnly: true,
## 取消測量聲音等級(並且取消顯示等級)
 disableAudioLevels: true,
## 取消偵測是否有聲音模組
 enableNoAudioDetection: false,
## 取消麥克風的雜音偵測
 enableNoisyMicDetection: false,
## 靜音
 startAudioMuted: 1,
 startVideoMuted: 1,    
## 畫質相關
 enableLayerSuspension: true,
 resolution: 360,
 constraints: {
   video: {
     frameRate: {
       max: 10,
       min: 5
     },
     height: {
       ideal: 360,
       max: 360,
       min: 120
     }
   }
 },

/usr/share/jitsi-meet/interface_config.js

SET_FILMSTRIP_ENABLED: false,
DISABLE_VIDEO_BACKGROUND: true,
DISABLE_FOCUS_INDICATOR: true,
DISABLE_DOMINANT_SPEAKER_INDICATOR: true,
DISABLE_JOIN_LEAVE_NOTIFICATIONS: true,

/etc/jitsi/videobridge/logging.properties

.level=WARNING
java.util.logging.FileHandler.level = OFF

/etc/jitsi/videobridge/sip-communicator.properties

org.jitsi.videobridge.DISABLE_TCP_HARVESTER=false

/etc/jitsi/jicofo/sip-communicator.properties
** 改成使用VP9, 建議使用chrome瀏覽器, 而且jitsi-meet要安裝2020-12-10以後的版本

org.jitsi.jicofo.ENABLE_H264=false
org.jitsi.jicofo.ENABLE_VP8=false
org.jitsi.jicofo.ENABLE_VP9=true

/etc/systemd/system.conf

DefaultLimitNOFILE=1024:524288 
DefaultLimitNPROC=65000 
DefaultTasksMax=65000 

3. 重開機

另外也可以在瀏覽器連結的後面加上 #config.p2p.enabled=false

參考連結

ubuntu 18.04安裝jitsi-meet

前陣子使用docker安裝jitsi-meet遭到亂流, 有時候可以多人同時視訊,有時候失敗,
可能是docker也可能是多個網卡做nat的關係, 因此索幸用vm安裝一個官方建議的版本

ubuntu 18.04 + 單一對外ip網卡+jitsi-meet

  1. dns
    確認該對外ip有一個dns name
  2. 安裝ubuntu 18.04
    sudo apt-get install -y curl openssh-server 
  3. 確認主機名稱
    請設定與dns name一致
    sudo hostnamectl set-hostname <dns name>
  4. 設定防火牆
    sudo ufw enable
    sudo ufw allow 25/tcp
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw allow 4443/tcp
    sudo ufw allow 3478/udp
    sudo ufw allow 5349/tcp
    sudo ufw allow 10000:20000/udp
    sudo ufw status
  5. 安裝jitsi-meet
    curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
    echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null
    sudo apt-get -y update
    sudo apt-get -y install jitsi-meet

    安裝的過程輸入dns name , 以及選擇 Generate a new self-signed certificate
  6. 設定let's encrypt
    sudo add-apt-repository ppa:certbot/certbot
    sudo apt install certbot
    sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
  7. vm記得開硬體解鎖 aes , 讓nginx的加解密加快
  8. 接下來就是視情況設定登入認證,或是防火牆限制連線ip之類的資訊安全工作


    若要移除
sudo apt purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge2

--
20201223
手殘, 將18.04升級到20.04, 遇到一大堆問題, 只好purge jitsi-meet 與 nginx , 並且發現還要刪除/etc/nginx , /etc/jitsi-meet , 與 /usr/share/jitsi*** 所有目錄與檔案, 重新安裝才會正常

--
20201230
1.因為我直接把/etc/nginx刪除, 造成其他nginx模組無法移除, 因此可以用以下指令後面接模組名稱刪除
2. 我曾經只有安裝lan的jitsi-meet因此沒有證書, 本來用得好好的,但是卻發現分享的時候, 無法分享超過三人, 但聲音可以, 真是奇怪,只好先怪罪沒有正式對外的dns與證書吧
3. 重新安裝nginx的時候要記得安裝nginx-common

dpkg --remove --force-remove-reinstreq <package name>

ubuntu新增bridge網路,讓kvm(libvirt)能夠使用

參考 http://www.linux-kvm.org/page/Networking#Public_Bridge

必須要這樣設定,才能讓 ravada vdi 或是 kvm 新增網卡時候, 不走nat模式, 走bridge模式

手動新增(每次開機都需要再執行一次)

# 請注意 要準備 eth1 為ubuntu第二網卡,請不要用原本的eth0
ip link add br0 type bridge ; ifconfig br0 up
ip link set eth1 master br0

開機自動啟動

# 若是 lxc 使用ubuntu 18.04 請記得確定有安裝netplan
apt install ifupdown  
#修改 /etc/network/interfaces
auto br0
 iface br0 inet dhcp
         bridge_ports    eth1
         bridge_stp      off
         bridge_maxwait  0
         bridge_fd       0 

1 2 3 ... 6