Jitsi/Jitsiでルーム作成時にパスワード認証させる

更新日: 2021-03-26 (金) 22:13:03 (78d)

Jitsiは、デフォルトでは誰でもルーム作成することができる。そのため、すぐに会議ができるという使いやすさが特徴的である。
一方、パブリック環境にjitsiを構築した場合、組織やチームの利用者にのみルーム作成を許可したい場合もある。そのような場合、シンプルなパスワード認証を挟むことができる。

環境は、docker-jitsi-meetで起動するとする。

docker-jitsi-meetでセットアップ

$ git clone https://github.com/jitsi/docker-jitsi-meet.git

docker-jitsi-meet

https://github.com/jitsi/docker-jitsi-meet

初期設定は以下を参照のこと。
https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker

今回のパスワード認証に関する設定は以下。docker-jitsi-meetでは、internal、jwt、ldapの方式が選択できるように考慮されている。.envの内容をもとに、起動時に認証用の設定が組み込まれた設定ファイルが生成される。ここでは、主要な箇所のみ抜粋して記述している。

# .env

# 認証を有効化
ENABLE_AUTH=1

# ゲストアクセス許可
# ゲスト用のanonymousdomainが有効になる。
ENABLE_GUESTS=1

# 認証方式: internal, jwt or ldap
# internalは、ファイルに認証情報が格納される。
# ~/.jitsi-meet-cfg/
AUTH_TYPE=internal

この設定を有効にすることで、以下のような設定内容が生成される。

${CONFIG}/web/config.js

var config = {
    // Connection
    //

    hosts: {
        // XMPP domain.
        domain: 'meet.jitsi',

        // When using authentication, domain for guest users.
        anonymousdomain: 'guest.meet.jitsi', // ゲストドメイン

        // Domain for authenticated users. Defaults to <domain>.
        authdomain: 'meet.jitsi',  // 認証するドメイン

${CONFIG}/jicofo/sip-communicator.properties

org.jitsi.jicofo.auth.URL=XMPP:meet.jitsi

${CONFIG}/jicofo/sip-communicator.properties

VirtualHost "meet.jitsi"
    authentication = "internal_hashed"

VirtualHost "guest.meet.jitsi"
    authentication = "anonymous"
    c2s_require_encryption = false

パスワードの設定

ユーザー名 guest、パスワード guest000で登録してみる。

$ docker-compose exec prosody prosodyctl --config /config/prosody.cfg.lua register guest meet.jitsi guest000

コマンドを実行すると、${CONFIG}/prosody/config/data/meet%2ejitsi/accounts/guest.datに情報が格納される。

return {
	["iteration_count"] = 4096;
	["server_key"] = "bf47553ea07b9e72776a7da0229875cc890495bc";
	["salt"] = "4af25157-23c1-4e1e-833b-030afc443866";
	["stored_key"] = "9fe58d28efb2aa676fa00424cc99ae789b67fdeb";
};

ルームの作成

設定後、会議のホストがルームを作成しようとすると、以下のように認証の画面が表示される。今回の設定では、ホストがルーム作成後にルームにパスワード設定しなければ、ゲストはルームに認証なしで入れる。

Jitsi-meet-password.pngJitsi-meet-password2.png

なお、registerコマンドによるユーザー登録はprosody稼働中でも可能である。

参考リンク


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
目次
TOP | 閉じる | ダブルクリックで閉じる