先日Web会議システムのZoomを使用した飲み会に初めて参加して大いに楽しんだ。
一方twitterでフォローしている旧知のJohn Corbet氏が、オープンソースでもweb会議システムのJitsiがある、と書き込んでいたのを思い出し、先日そのweb版テストしてみた。Zoomの無料版と違い、時間制限もなくなかなか良いなあと感心していた。
サーバー版もあるので、無償で借りているOracle Cloud Infrastructure上のUbuntuにサーバー版を導入してみようと思い色々やってみた。
以下が公式ページで書かれている導入方法
# First install the Jitsi repository key onto your system
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
# Create a sources.list.d file with the repository:
sudo sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"
# Update your package list:
sudo apt-get -y update
# Install the full suite:
sudo apt-get -y install jitsi-meet
しかし導入の最後の段階で次のエラーメッセージを吐き、導入が中断してしまう。
jicofo (1.0-546-1) を設定しています ...
debconf: フロントエンドの初期化に失敗しました: Dialog
debconf: (利用可能な dialog 系のプログラムがインストールされていないため、ダイアログ形式のフロントエンドは使用できません。 at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: フロントエンドをフォールバックします: Readline
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
jitsi-meet (2.0.4424-1) を設定しています ...
jitsi-meet-turnserver (1.0.3996-1) を設定しています ...
debconf: フロントエンドの初期化に失敗しました: Dialog
debconf: (利用可能な dialog 系のプログラムがインストールされていないため、ダイアログ形式のフロントエンドは使用できません。 at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: フロントエンドをフォールバックします: Readline
systemd (237-3ubuntu10.39) のトリガを処理しています ...
ネットで「debconf: フロントエンドの初期化に失敗しました: Dialog
debconf: (利用可能な dialog 系のプログラムがインストールされていないため、ダイアログ形式のフロントエンドは使用できません。」辺りをキーワードに解決策がないか当たってみたが、見つけられず。素人の考えだがoracle版のubuntuにこのJitsiを導入する際のファイルが欠けているものと推測し、結局諦める。
せっかく色々調べ時間も使って導入できないのも寂しいし悔しいので、今度は新たにconoha VPSにubuntuを入れ、そちらの環境で導入してみたところ何のトラブルもなく導入完了。やはりOracleのUbuntuの環境のせいだと取り合えず納得。
Letsencryptも設定し、パソコンのブラウザーからアクセスすると無事会議室の初期画面へ!
早速web飲み会の会議室を設定
web飲み会にはスマホからアクセスする人がいるので、自分のiPhoneからのアクセスを試した見たところこれが通信エラーになってします。ブラウザーからのアクセスとiPhoneアプリのいずれからのアクセスも通信エラーとなってしまう。
ログを見ると:
2020/04/10 16:11:13 [error] 3766#3766: *41 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 153.251.225.167, server: 0.0.0.0:443, upstream: "127.0.0.1:4445", bytes from/to client:454/520, bytes from/to upstream:520/1012
今度はiphoneからjitsiにアクセスできない、などをキーワードにネットをググったところ、以下のようなヒントがでてきた。
Ok Found the fix… In nginx the module that redirects 443 for spliting client /turn request via ALPN. Should be set as: since 1.13.10 map $ssl_preread_alpn_protocols $upstream { ~\bh2\b web; ~\bh2c\b web; ~\bhttp/1.1\b web; ~\bh2,http/1.1\b web; ~\bh2c,http/1.1\b web; default turn; } This then tests ok with Safari
しかしこれがどこの設定ファイルにあるのか不明。nginx.confをチェックしてみたが、似たような記述が見つからない。
最終的にこのファイルを修正することが分かったのだが。
/etc/nginx/modules-enabled/60-jitsi-meet.conf
修正する内容は:
map $ssl_preread_alpn_protocols $upstream {
~\bh2\b web;
~\bh2c\b web;
~\bhttp/1.1\b web;
~\bh2,http/1.1\b web;
~\bh2c,http/1.1\b web;
default turn;
}
もともとのconfファイルは:
"h2"
"http/1.1"
などの書式となっていたので全て”h2″形式に修正して、nginxをrestartさせてもやはりアクセスできない。
う~ん 困った。
結果的に” ”マークは削除し~\b \bの書式に変更してconfファイルを変更したら、あらまあアクセスできるではないですか!
ちゃんちゃん