Matrix
Matrix はオープンなインスタントメッセージや VoIP のための野心的な新しいエコシステムです。サーバー・クライアントと、IRC など既存のメッセージソリューションと通信するためのブリッジソフトウェアから構成されています。
Arch Linux の Matrix チャンネルがあります: #archlinux:archlinux.org
インストール
サーバーのリファレンス実装である Synapse は matrix-synapse パッケージでインストールできます。パッケージをインストールすると synapse ユーザーが作成されます。
設定
インストールしたら、設定ファイルを作成する必要があります。ファイルは synapse ユーザーから読み込めるように設定してください:
$ cd /var/lib/synapse $ sudo -u synapse python -m synapse.app.homeserver \ --server-name my.domain.name \ --config-path /etc/synapse/homeserver.yaml \ --generate-config \ --report-stats=yes
上記のコマンドで、入力したサーバー名の SSL 鍵と自己署名証明書が生成されます。サーバー名を変更した場合は再生成してください。
なお、同一のドメイン名にて Matrix 以外のサービスを動作させないことと、リバースプロキシを設定することが推奨されます。公式ドキュメント Security Note も参照してください。
サービス
パッケージには synapse.service
という名前の systemd サービスが付属しています。サービスを起動することで synapse ユーザーで synapse サーバーが起動し、/etc/synapse/homeserver.yaml
設定ファイルが使われます。
ユーザー管理
synapse サーバーには最低でもひとりのユーザーが必要です。以下のようにコマンドでユーザーを作成できます:
$ register_new_matrix_user -c /etc/synapse/homeserver.yaml https://localhost:8448
もしくは matrix クライアント を使ってください。
Spider Webcrawler
Webcrawler を有効にするには、サーバーが生成するリンクのプレビューのために、追加パッケージ python-lxml と python-netaddr をインストールする必要があります。その後、設定オプション url_preview_enabled: True
は homeserver.yaml
で設定することができます。synapse サーバが内部ホストに対して任意の GET リクエストを発行しないようにするには、 url_preview_ip_range_blacklist:
を設定する必要があります。
コメントアウトしなくてもよい例がいくつかあります。ローカルな IP 範囲をこのリストに追加して、synapse サーバがそれらをクロールしようとするのを防ぎます。homeserver.yaml
を変更した後、サービスを再起動する必要があります。