オフライン環境でデスクトップ共有を行いたい
サーバの操作画面の共有と他の作業中の画面の共有を比較的簡単かつ操作を教えなくてもできるような簡単な方法で共有したい場合の方法について調べたのでメモ代わりに記載。 今回の要件だとVNCが一番楽だった(サーバーにVNC導入済み)のでVNCを採用しましたが、Jitsi Meetは別の用途でも利用できるのでおフラン環境での構築手順のテストと導入した後の不具合がないことを確認して導入を行いたい。
検討対象
- ビデオ会議システムのJitsi Meet
- リモート操作ソフトのVNChttps://tigervnc.org/
Jitsi Meet
どんな事ができるのか
メリット
- ビデオ会議システム
- dockerで比較的簡単に構築が可能
- アカウント管理などは無い
- 使い方は最近よくあるビデオ会議システムと変わらない
- ブラウザだけで操作が完結し、クライアント側に特別なソフトのインストールが不要
デメリット
- サーバーが必要(接続するユーザー数によっては高スペックを求められる?)
- どれ位のサーバークライアント間でトラフィックが流れるのか要調査
- セキュリティについては別途検討が必要
構築方法
- Jitsi Meet(ビデオ会議システム)のサーバを Docker Compose で起動する手順
https://qiita.com/zembutsu/items/efb1713337d89f9a1bf0
上の構築手順で進めるとLet's Encryptで証明書を発行する必要があり、証明書を発行して設定をしなければマイクなどが利用できない状態となる。 オフライン環境で証明書の運用は少し面倒なので証明書を利用せずに接続時に警告が出るが無視して利用する。 ミーティングに参加した時に「あなたは切断されました」と出てうまく接続できないときは以下の設定を.envに追加する。 PROXY経由でWebSocketが予期せずに閉じられた場合に発生するエラーとなるので、明示的に無効化する。
ENABLE_XMPP_WEBSOCKET=0
使い方
- 以下のサイトがわかりやすかったので参照
VNC(色々な種類があるが一纏めにしてVNCとする)
- Windowsの場合 https://forest.watch.impress.co.jp/library/software/ultravnc/
- CentOSの場合 https://tigervnc.org/
どんなことができるのか
- メリット
- どんなOSでも導入が可能
- 使い方が簡単
- サーバー側で頑張ればHTTPでお話し(VNCに接続)ができるようになる
- デメリット
- 共有したいPC or サーバにVNCの導入が必要
- 導入するには管理者権限が必要
- 音声の転送は不可
- 同時に数人であれば問題はないと思うけれども、数十人とかになるとサーバのスペックが高くないと辛いため、回避策としてTreeVNC http://www.cr.ie.u-ryukyu.ac.jp/software/TreeVNC.htmlというのがあるらしい(動作未確認)
構築方法
検索すればいくらでも構築方法が出てくるので飛ばします。
- CentOS7ならTigerVnc
- WindowsならUltraVNC
使い方
RealVNC日本語インストール版に付属のVNC VIEWERをつかってVNCサーバに接続すると2個目のセッションが接続されると1個目のセッションが切断される症状が出たので、クライアント側は別のVNC VIEWERを利用した方がいい。 UltraVNCのVNC VIEWERの場合2個目のセッションも問題なく接続ができた。