Setting up a server/ja
言語: | English • Deutsch • français • italiano • 日本語 • русский |
---|
ハードウェアの選択
ゲームサーバーを公開する場合、VPSもしくは専用サーバーの利用をお勧めします。家庭用インターネット回線は信頼性が低く、アップロード速度も低い傾向があります。また、自宅でホスティングを行う場合、24時間、常にサーバーを稼働させることができない可能性もあります。
とはいうものの、オンラインにできるハードウェアがあり、十分なインターネット接続環境があれば自宅でのホスティングはうまくいきます。
Minetestクライアントを使ってサーバーのホスティングはできますが(LAN内のゲームでは問題ありません)、Minetestの専用サーバーモードを使って公開サーバーをホスティングすることをお勧めします。
サーバーを起動する
Linux
- 端末(ターミナル)を開きます。
YOUR/MINETEST/DIRECTORY/bin/minetestserver
(/YOUR/MINETEST/DIRECTORYは実際のディレクトリの場所に置き換えて)と入力するか、(/Minetest/bin/
ディレクトリにある)minetestserverの実行ファイルを端末にドロップします。(以下の注意も読んでください)- 特定のゲームIDを指定する場合は、コマンドの最後に
--gameid thegameid
を追加してください(ゲームIDは、/Minetest/games/
ディレクトリにあります)。 - "Multiple worlds are available."(複数のワールドが利用可能です)というエラーが表示された場合、コマンドの最後に
--worldname theWorld
を追加してください(ワールドのリストは、/Minetest/worlds/
ディレクトリにあります)。
- 特定のゲームIDを指定する場合は、コマンドの最後に
- サーバーがクラッシュした場合は、
/Minetest/bin/
にあるdebug.txt
を見てください。 - サーバーをダメージから保護するようにしてください。
簡単に実行できるように、minetestserver.shという名前のファイルを作成します。そして、以下の行を追加して、/Minetest/bin/ディレクトリ以下に置きます。サーバーを実行するには、ターミナルでこのファイルを実行するだけです。
#!/bin/bash while true do ./minetestserver --gameid minetest --worldname world sleep 10 done
Windows
- Minetestをインストールしたフォルダを開きます。「bin」フォルダの中でShiftキーを押しながら空ファイル(minetest.exeではありません)を右クリックして「コマンドウィンドウをここで開く」を選び、コマンドプロンプトを開きます。
minetest.exe --server
と入力します。- "Multiple worlds are available."(複数のワールドが利用可能です)というエラーが表示された場合、変わりに
minetest.exe --server --worldname world_name
を使ってください(world_name
はワールドの名前です)。
- "Multiple worlds are available."(複数のワールドが利用可能です)というエラーが表示された場合、変わりに
- サーバーがクラッシュした場合は、
/Minetest/bin/
にあるdebug.txt
を見てください。 - サーバーをダメージから保護するようにしてください。
クラッシュしたサーバーを起動したくない場合は、以下のコードのバッチファイルからサーバーを起動します。
@echo off :crash minetest.exe --server --worldname world_name goto crash
外部のプレーヤーの接続を許可する
ポートフォワードしない限り、ネットワークの外にいるプレーヤーはサーバーに参加できません。
- Choose a port to run the server on. The default of 30000 is recommended
- Find out your internal IP of the computer you are running the server on
- Linux: open a terminal and type
ifconfig
and hit enter. Look for "inet adr" near "wlan0" or "eth0". - Windows
- Open command prompt: Start → Run …, enter
cmd.exe
and hit enter. - Type
ipconfig
and hit enter. - Look for
IPv4 Address
.
- Open command prompt: Start → Run …, enter
- macOS: Open the command prompt and enter netstat -nr.
- Linux: open a terminal and type
- Login to your router, and port forward UDP on your chosen port to the internal IP you found
- Alter any firewalls you may have to allow traffic to the port you choose
- Make your server listed in the server list by setting the following settings in minetest.conf
server_announce = true
- makes Minetest tell the server list about the server.server_name
- set the value of this to your server's name.server_description
- set the value of this to a longer description describing your server.server_address
- if you have a domain name for your server, then set this to the domain name (how to get a domain name if you want one for your server).server_url
- if you have a website for your server, then set this to the website URL.motd
- a message that is sent to the player when they join. Use this to welcome them.- You should restart the server to make sure any changed settings changed
サーバーを保護する
Minetestのワールド/サーバーを守る
新しいサーバーをセットアップするとき、どのような保護が必要であるか、検討する必要があります。これは公開サーバーにとって非常に重要なことです。 なぜなら、誰が接続して、彼らがあなたのサーバーで何をするのか予想できないからです。
一般的な問題としては以下のようなことがあります。
- 偶然、または意図的に他のプレーヤーの作品を破壊(嫌がらせ行為)。
- チャットスパム(悪口やスパム広告も含まれます)。
- プレーヤー間での攻撃、嫌がらせ、その他、好ましくない行為。
- BANをすり抜けるトラブルメーカー
- MTコミュニティ内の有名人物のなりすまし。
- modによって引き起こされるバグを利用して、悪意のあるプレーヤーが任意のシステムコマンドを実行。
これらの問題の多くは、事前の計画と問題を認識しておくことで、取り除いたり最小限に留めることができます。
- areasやprotectorsなどのプロテクトmodをインストールします。これにより、プレーヤーはエリアを守ることができます。他のプレーヤーは、保護されたエリアは変更できません。
- minetest.confに
enable_rollback = true
を追加して、ロールバックを有効にします。ロールバックは、どのプレイヤーがノードを配置したかを知ることができ、プレイヤーの行動を元に戻すことができます。 - xban2のような禁止行為の管理に役立つmodをインストールします。
- サーバーのルールを作成し、サーバーを監視してルールを破るプレイヤーを監視するのに十分な時間(またはモデレーターチーム)を確保してください。
- あなたが知っている名前を使っているだけで、プレーヤーに特権を与えないでください。プレーヤー名はサーバー間で確保されているわけではないので、プレーヤーが誰であるか常に確認する必要があります。
- 悪口や性的なチャットを防ぐために、チャットフィルターmod(filter)をインストールして設定してください。フィルターの回避は簡単ですが、これは強制的に従わせるためではなく、プレイヤーにルールを知らせるために有効です。
なお、シングルプレイではデフォルトで有効になっているTNTと燃え広がる炎は、サーバーのデフォルトでは無効になっています。
ContentDBのServer Moderation and Toolsも参照ください。
ホストマシンを守る
- Linux/Windowsサーバーセキュリティにについて標準的な勧告が適用されます。
- Linuxでは、Minetestサーバーを実行する専用ユーザーを追加できます。
- modセキュリティを絶対無効にしないでください。
- secure.trusted_modsに追加するmodが信頼できることを確認してください。
サーバーを管理する
サーバー設定
サーバー設定ファイルの詳細な説明は、minetest.confのページを参照してください。
また、ワールドのために別のデータベース バックエンドの使用も検討できます。
サーバーコマンド
役に立つコマンド一覧は、サーバーコマンドのページを参照してください。
また、/give
または/giveme
コマンドで使用するitemstringsについては、Itemstringsを参照してください。
特権システム
特権システムの詳細については、特権のページを参照してください。
関連項目
- Debian(Ubuntu)関連の情報については、Debianサーバーのセットアップをご覧ください。
- その他の利用可能なコマンドオプションについては、コマンドラインのページをご覧ください。
- フォーラムの「Illustrated Server Creation Guide」スレッドでは興味深い議論があります。
- 「How to create and maintain a server - Windows」(Windowsでのサーバー設置と管理)については、こちらのフォーラムのスレッドをご覧ください。
- 「Server performance settings」(サーバーのパフォーマンス設定)については、こちらのフォーラムのスレッドをご覧ください。