Mumbleサーバーとは何ですか?
Mumbleは、ゲームコミュニティで広く使用されているオープンソースのVoice over IP(VOIP)アプリケーションです。 Mumbleは、サーバーアプリケーション(Murmurとも呼ばれます)と、個別に使用するためにインストールされるクライアントアプリケーションで構成されています。
あらゆるVOIPアクティビティに使用できますが、主にゲーマーを念頭に置いて設計されており、クライアントを同じMumbleサーバーに接続して通信できるようになっています。
Mumbleサーバーの機能
Murmurは、低遅延サービスとシンプルな管理インターフェイスを備えており、最小限のサーバーリソースで、さまざまな高品質のオーディオコーデックをサポートします。さらに、MumbleとMurmurはBSDライセンスを取得しており、商用ホスティングは完全に無料です。
エンドユーザーは、レイテンシが低いため、ゲーム内での使用だけでなく、ポジショナルオーディオやゲーム内オーバーレイなどの機能にも最適です。
暗号化
チャットメッセージとタイムクリティカルでない情報を配信するための制御チャネルは、256ビットのAES-SHAを使用してTLSで完全に暗号化され、音声チャネルは128ビットのOCB-AESで暗号化されます。
OSサポート
Qt 4をコンパイルできるプラットフォームはすべて、Murmurをサポートします。この記事を書いている時点では、これには最も人気のあるLinuxディストリビューションと、WindowsおよびMacOSXが含まれています。
Mumbleエンドユーザークライアントは、すべてではないにしてもほとんどの一般的なオペレーティングシステムでサポートされており、AndroidおよびiOS用のサードパーティ製アプリもあります。

前提条件
- 512MB以上のRAMを搭載したCentOS7サーバー
- bzip2
- ファイアウォールポート64738がMumbleクライアントとの通信用に開いています
- SELinuxが無効になっている(Murmurが正しく機能しない場合)
Mumbleサーバーのインストール
Mumbleサーバーインストールファイルをダウンロード
Mumbleは公式のCentOSリポジトリに含まれていないため、GitHubまたは公式のMumbleサーバーのWebサイトからインストールファイルをダウンロードする必要があります。
GUIを使用してMumbleをダウンロードするには、MumbleサーバーのWebサイトにアクセスし、静的Linuxサーバーのインストールファイルのダウンロードを選択します。 。

ターミナルを使用してMumbleをダウンロードするには、 wget
を使用します コマンド:
wget https://github.com/mumble-voip/mumble/releases/download/1.30/murmur-static_x86-1.3.0.tar.bz2
MumbleTarballを抽出
Murmurの最新の安定したリリースをダウンロードしたので、tarballからファイルを抽出する必要があります。まず、ダウンロードに移動する必要があります フォルダ。これを行うには、次のように入力します:
cd Downloads
ファイルを抽出するには、次のコマンドを実行します。
tar -vxjf ./murmur-static_x86-1.3.0.tar.bz2
Murmur tarballを抽出すると、murmur-static_x86-[murmurversion]ディレクトリが作成されます。

一方、以下のようなエラーメッセージが表示された場合は、bzip2パッケージをインストールする必要があります。
tar (child): bzip2: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
bzip2をインストールするには パッケージの場合、次のコマンドを実行します:
sudo yum install bzip2
bzip2がインストールされたら、コマンドを再実行して、Murmurtarballを抽出します。プロンプトが表示されたら、 Yと入力します Enterを押します 続行します。
/ usr / local/murmurディレクトリを作成します
これは、tarballから抽出されたファイルをコピーする場所です。ディレクトリを作成するには:
sudo mkdir /usr/local/murmur
sudo cp ./murmur-static_x86-1.2.19/* /usr/local/murmur/
次のステップでは、構成ファイルをetc/murmur.iniにコピーします。
sudo cp ./murmur-static_x86-1.2.19/murmur.ini /etc/murmur.ini
次に、所有権と権限のルールに取り組みます。
Mumbleサーバーのユーザーとグループ、ログとデータディレクトリを作成する
ユーザーとグループを作成するには、次のコマンドを実行します。
sudo groupadd -r murmur
sudo useradd -r -g murmur -m -d /var/lib/murmur -s /sbin/nologin murmur
データおよびログディレクトリを作成するには、次のコマンドを実行します。
sudo mkdir /var/log/murmur
sudo chown murmur:murmur /var/log/murmur
ログを保護するには、ログディレクトリに割り当てられている権限を変更します。
sudo chmod 0770 /var/log/murmur
Murmurログが/var/ logをいっぱいにしないように、ログをローテーションすることを強くお勧めします。ルートとして、/ etc / logrotate.d / murmur構成ファイルを作成し、以下をコピーして貼り付けます。
/var/log/murmur/*log {
su murmur murmur
dateext
rotate 4
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/systemctl reload murmur.service > /dev/null 2>/dev/null || true
endscript
}
Mumbleサーバーの構成とカスタマイズ
すべてのカスタマイズは、/etc/murmur.ini
で実行されます ファイル。何かをカスタマイズする前に、以下の設定が/etc/murmur.ini
で正しく構成されていることを確認してください ファイル。
database=/var/lib/murmur/murmur.sqlite
logfile=/var/log/murmur/murmur.log
pidfile=/var/run/murmur/murmur.pid
# Reminder: When changing the port that murmur will listen to you will also need to update the firewall.
# Update the firewall by editing /etc/firewalld/services/murmur.xml
# Then run "sudo firewall-cmd --reload"
port=64738
# Comment out the following setting since the service will already be executing as the correct user:
# uname=murmur
ウェルカムメッセージを変更するには 、welcome text
に続くテキストを変更します ストリング。基本的なHTMLマークアップがサポートされています。
ユーザー制限を変更するには 、 users =100を見つけて変更します ストリング。たとえば、スロットの数を50に減らしたい場合、文字列は users =50のようになります。 。ユーザーごとの着信帯域幅を制限する場合 、帯域幅を見つけて変更します パラメータ。
セキュリティを強化するには、自動禁止のコメントを解除します 行。
Mumbleサービスを作成する
systemd
でMumbleサーバーを管理するために、システムユニットファイルを作成します 。 /etc/systemd/system/murmur.service
を作成します rootアクセスまたはsudoを使用したファイル。作成したら、以下をコピーしてファイルに貼り付けます。
[Unit]
Description=Mumble Server (Murmur)
Requires=network-online.target
After=network-online.target mariadb.service time-sync.target
[Service]
User=murmur
Type=forking
ExecStart=/usr/local/murmur/murmur.x86 -ini /etc/murmur.ini
PIDFile=/var/run/murmur/murmur.pid
ExecReload=/bin/kill -s HUP $MAINPID
[Install]
WantedBy=multi-user.target
最近のシステムは/var/run
を破棄します 再起動後。 /etc/tmpfiles.d/murmur.conf
を作成します Murmurのpidディレクトリを再起動するための設定ファイル。ルートとして、以下をコピーして貼り付けます:
d /var/run/murmur 775 murmur murmur
ファイアウォールルール
デフォルトでは、サーバーのファイアウォールはサービスがTCP/UDPをリッスンすることを許可していません。 murmur.ini をカスタマイズした場合は、それに応じて以下の手順を変更してください。 デフォルト以外のポートをリッスンします。
Murmur
Mumble Server (Murmur)
<!– Reminder: Update /etc/murmur.ini so that it uses the same ports –>
ファイアウォールルールを追加してからリロードします:
sudo firewall-cmd --permanent --add-service=murmur
sudo firewall-cmd –reload
SELinuxを無効にする
CentOSの一部のバージョンでは、SELinuxを無効にせずにMurmurを実行する際に問題が発生します。 Mumbleによると、SELinuxはCentOS7.2の時点でMurmurの機能を妨げることはありません。
最初に、SELinuxを使用してMumbleサーバーを強制モードで実行します。 SELinuxがMumbleの正常な動作を妨げている場合、最も簡単な解決策はMumbleを無効にすることです。 SELinuxを一時的に無効にするには、次のコマンドを実行します:
sudo setenforce 0
SELinuxは再起動時に再起動します。
SELinuxを完全に無効にする 、/etc/sysconfig/selinux
を編集します ファイルを作成し、 SELINUX
を変更します ライン。次のように読みます:
SELINUX=disabled
SELinuxを無効にした後、サーバーを再起動します。
Mumbleサーバーを起動します
次のコマンドは、Mumbleサーバーを一時的に起動し、次の再起動まで実行し続けます。
sudo systemctl start murmur.service
Mumble Serverサービスを停止するには、次のコマンドを実行します。
sudo systemctl stop murmur.service
次回の再起動時にサービスを自動的に開始するようにCentOSに指示するには、次のコマンドを実行します。
sudo systemctl enable murmur.service
Murmurの起動時に「ゾンビプロセス」に気付いた場合は、 redhat-lsb-coreをインストールする必要があります パッケージ。